From 6f956223ac187af779176efb0a8521c811b59266 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 24 May 2013 00:18:52 +0100 Subject: [PATCH 001/111] Initial version of orcid client --- .../isacreator/orcid/OrcidService.java | 17 + .../orcid/impl/OrcidServiceImpl.java | 90 ++ .../isacreator/orcid/model/OrcidAuthor.java | 81 + .../xmlhandlers/OrcidSearchResultHandler.java | 89 + .../resources/xsd/orcid-message-1.0.14.xsd | 1434 +++++++++++++++++ 5 files changed, 1711 insertions(+) create mode 100644 src/main/java/org/isatools/isacreator/orcid/OrcidService.java create mode 100644 src/main/java/org/isatools/isacreator/orcid/impl/OrcidServiceImpl.java create mode 100644 src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java create mode 100644 src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java create mode 100644 src/main/resources/xsd/orcid-message-1.0.14.xsd diff --git a/src/main/java/org/isatools/isacreator/orcid/OrcidService.java b/src/main/java/org/isatools/isacreator/orcid/OrcidService.java new file mode 100644 index 00000000..2e20e8dc --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/OrcidService.java @@ -0,0 +1,17 @@ +package org.isatools.isacreator.orcid; + +import org.isatools.isacreator.orcid.model.OrcidAuthor; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 23/05/2013 + * Time: 13:20 + * + * @author Alejandra Gonzalez-Beltran + */ +public interface OrcidService { + + public OrcidAuthor getAuthorInfo(String orcidID); + +} diff --git a/src/main/java/org/isatools/isacreator/orcid/impl/OrcidServiceImpl.java b/src/main/java/org/isatools/isacreator/orcid/impl/OrcidServiceImpl.java new file mode 100644 index 00000000..bb76633a --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/impl/OrcidServiceImpl.java @@ -0,0 +1,90 @@ +package org.isatools.isacreator.orcid.impl; + +import org.apache.commons.httpclient.HttpClient; +import org.apache.commons.httpclient.methods.GetMethod; +import org.isatools.isacreator.orcid.OrcidService; +import org.isatools.isacreator.orcid.model.OrcidAuthor; +import org.isatools.isacreator.orcid.xmlhandlers.OrcidSearchResultHandler; +import org.orcid.ns.orcid.OrcidMessageDocument; + +import java.io.IOException; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 23/05/2013 + * Time: 13:37 + * + * @author Alejandra Gonzalez-Beltran + */ +public class OrcidServiceImpl implements OrcidService { + + public static final String QUERY_URL = "http://pub.orcid.org/search/orcid-bio/"; + + public static final String ACCEPT = "Accept-Encoding"; + public static final String ORCID_XML = "application/orcid+xml"; + public static final String CONTENT_TYPE = "Content-Type"; + + private HttpClient client = null; + private GetMethod getMethod = null; + + + public OrcidServiceImpl(){ + + client = new HttpClient(); + getMethod = new GetMethod(QUERY_URL); + + + + } + + public OrcidAuthor getAuthorInfo(String orcidID) { + + getMethod.setQueryString("q=orcid:" + orcidID ); + + + try{ + System.out.println("query string=" + getMethod.getQueryString()); + System.out.println("URI="+ getMethod.getURI()); + + + getMethod.addRequestHeader(CONTENT_TYPE, ORCID_XML); + //getMethod.addRequestHeader(ACCEPT, ORCID_XML); + + int statusCode = client.executeMethod(getMethod); + + if (statusCode != -1) { + String contents = getMethod.getResponseBodyAsString(); + + System.out.println("status text=" + getMethod.getStatusText()); + System.out.println("contents=" + contents); + + getMethod.releaseConnection(); + return processAuthorInfo(contents); + }else{ + System.out.println("status code is -1"); + } + + }catch(IOException ex){ + ex.printStackTrace(); + }//catch(HttpException ex){ + + //} + return null; + } + + + private OrcidAuthor processAuthorInfo(String contents){ + System.out.println("contents="+contents); + OrcidSearchResultHandler handler = new OrcidSearchResultHandler(); + OrcidMessageDocument orcidMessageDocument = handler.getOrcidMessageDocument(contents); + return handler.getOrcidAuthor(orcidMessageDocument); + } + + + public static void main(String[] args) { + OrcidServiceImpl service = new OrcidServiceImpl(); + service.getAuthorInfo("0000-0003-3499-8262"); + } + +} diff --git a/src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java b/src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java new file mode 100644 index 00000000..2cf4a168 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java @@ -0,0 +1,81 @@ +package org.isatools.isacreator.orcid.model; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 23/05/2013 + * Time: 16:10 + * + * @author Alejandra Gonzalez-Beltran + */ +public class OrcidAuthor { + + private String orcid; + private String givenNames; + private String familyName; + private String pastInstitution; + private String currentPrimaryInstitution; + private String currentOtherInstitution; + private String email; + + public OrcidAuthor(){ + + } + + public String getOrcid(){ + return orcid; + } + + public String getGivenNames(){ + return givenNames; + } + + public String getFamilyName(){ + return familyName; + } + + public String getPastInstitution(){ + return pastInstitution; + } + + public String getCurrentPrimaryInstitution(){ + return currentPrimaryInstitution; + } + + public String getCurrentOtherInstitution(){ + return currentOtherInstitution; + } + + public String getEmail(){ + return email; + } + + public void setOrcid(String orcid){ + this.orcid = orcid; + } + + public void setGivenNames(String givenNames){ + this.givenNames = givenNames; + } + + public void setFamilyName(String familyName){ + this.familyName = familyName; + } + + public void setCurrentPrimaryInstitution(String currentPrimaryInstitution){ + this.currentPrimaryInstitution = currentPrimaryInstitution; + } + + public void setEmail(String email){ + this.email = email; + } + + public String toString(){ + StringBuffer buffer = new StringBuffer(); + buffer.append(getGivenNames()+"\t"); + buffer.append(getFamilyName()+"\t"); + buffer.append(getEmail()); + return buffer.toString(); + } + +} diff --git a/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java new file mode 100644 index 00000000..5140b29c --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java @@ -0,0 +1,89 @@ +package org.isatools.isacreator.orcid.xmlhandlers; + +import org.apache.xmlbeans.XmlOptions; +import org.isatools.isacreator.orcid.model.OrcidAuthor; +import org.orcid.ns.orcid.*; + +import java.io.ByteArrayInputStream; +import java.io.InputStream; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 23/05/2013 + * Time: 21:21 + * + * @author Alejandra Gonzalez-Beltran + */ +public class OrcidSearchResultHandler { + + public OrcidMessageDocument getOrcidMessageDocument(String xmlAsString) { + OrcidMessageDocument resultDocument = null; + try { + + InputStream stream = new ByteArrayInputStream(xmlAsString.getBytes("UTF-8")); + resultDocument = OrcidMessageDocument.Factory.parse(stream); + } catch (org.apache.xmlbeans.XmlException e) { + System.err.println("XML Exception encountered"); + e.printStackTrace(); + } catch (java.io.IOException e) { + System.err.println("IO Exception: " + e.getMessage()); + e.printStackTrace(); + } + + return resultDocument; + } + + public OrcidAuthor getOrcidAuthor(OrcidMessageDocument messageDocument){ + + OrcidAuthor orcidAuthor = new OrcidAuthor(); + + OrcidMessageDocument.OrcidMessage orcidMessage = messageDocument.getOrcidMessage(); + OrcidSearchResultsDocument.OrcidSearchResults searchResults = orcidMessage.getOrcidSearchResults(); + + if (searchResults==null) + return null; + + OrcidSearchResultDocument.OrcidSearchResult[] results = searchResults.getOrcidSearchResultArray(); + XmlOptions opts = new XmlOptions(); + opts.setSaveInner(); + + if (results.length == 1){ + + OrcidProfileDocument.OrcidProfile profile = results[0].getOrcidProfile(); + + orcidAuthor.setOrcid(profile.getOrcid().toString()); + + OrcidBioDocument.OrcidBio orcidBio = profile.getOrcidBio(); + PersonalDetailsDocument.PersonalDetails personalDetails = orcidBio.getPersonalDetails(); + AffiliationsDocument.Affiliations affiliations = orcidBio.getAffiliations(); + + + GivenNamesDocument.GivenNames givenNames = personalDetails.getGivenNames(); + + orcidAuthor.setGivenNames(removeFragments(givenNames.xmlText())); + orcidAuthor.setFamilyName(removeFragments(personalDetails.getFamilyName().xmlText(opts))); + + AffiliationDocument.Affiliation[] affiliationArray = affiliations.getAffiliationArray(); + if (affiliationArray.length>0) + orcidAuthor.setCurrentPrimaryInstitution(removeFragments(affiliationArray[0].getAffiliationName().xmlText(opts))); + + ContactDetailsDocument.ContactDetails contactDetails = orcidBio.getContactDetails(); + if (contactDetails!=null){ + Email[] emails = contactDetails.getEmailArray(); + if (emails.length>0) + orcidAuthor.setEmail(emails[0].getStringValue()); + } + + } + + System.out.println(orcidAuthor); + return orcidAuthor; + } + + + private String removeFragments(String text){ + return text.substring(14,text.length()-15); + + } +} diff --git a/src/main/resources/xsd/orcid-message-1.0.14.xsd b/src/main/resources/xsd/orcid-message-1.0.14.xsd new file mode 100644 index 00000000..9e63bf4c --- /dev/null +++ b/src/main/resources/xsd/orcid-message-1.0.14.xsd @@ -0,0 +1,1434 @@ + + + + + ============================================================================= + + ORCID (R) Open Source + http://orcid.org + + Copyright (c) 2012-2013 ORCID, Inc. + Licensed under an MIT-Style License (MIT) + http://orcid.org/open-source-license + + This copyright and license information (including a link to the full license) + shall be included in its entirety in all copies or substantial portion of + the software. + + ============================================================================= + The schema describes the message format used for ORCID API requests and responses. + The top level element is orcid-message. + + + Schematron validation + + + + + + The overall container for all ORCID requests and responses. + + + + + + + + + + + + + + + + The version of ORCID message schema that the orcid-message + uses. + + + + + The highest value is the latest version of the schema. If lower + values are shown, this means that documents that are valid against the older + version are also valid against the later version of the schema. + + + + + + + + + + + + + + + + + + + + + A human readable error message, when the request was unsuccessful. + + + + + + + The container element for a researcher or contributor profile. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A simple history of the researcher or contributor's ORCID profile. + + + + + + + + + + + + + + + + + + The method used to create the profile. + + + + + The date and time when the profile set up was completed. + + + + + + + + + + + The date time when the profile was first submitted to ORCID. + + + + + + + + + + + The date time when the profile was last modified. + + + + + + + + + + + True if the researcher or contributor has confirmed that their profile + is correct, after bulk creation by their institution. + + + + + + + + + + + The date and time when the profile was deactivated + + + + + + + + + + + The client application that created the profile via the API (if any). + + + + + + + + + + + + + The name of the client application that created the profile. + + + + + + + The ORCID identifier for the client application that created the + profile. Note this is a normal ORCID identifier, so can be used to look up the full + details of the client application. + + + + + + + + + + + The identifier of the researcher or contributor in a source's + system. + + + + + + + The date time that the source created/attempted to create the ORCID. + + + + + + + + + + + The biographical details of the researcher or contributor. + + + + + + + + + + + + + + + + + + + + Container for the personal details of the researcher or contributor. + + + + + + + + + + + + + + Description of the researcher's professional career + + + + + + + + + + + + + + + + + Container for URLs of the researcher or contributor's sites. + + + + + + + + + + + + + + + + + + + + Container for details of how to contact the researcher or contributor. + + + + + + + + Wrong number of primary emails + + + + + + + + + + + + + + + + + + + + + + + + + + Contain for words or phrases describing areas of research + + + + + + + + + + + + + + A few sentences describing the element in question + + + + + + + + Container for the list of affiliations associated with the researcher or contributor + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for links to the reasearcher or contributor in other + systems. + + + + + + + + + + + + A link to an external system + + + + + + + + + + + + + + ORCID identifier used for external + + + + + + + + + + + + + + + + + + + + + + + Contain for functionality that has not yet been built + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for Authorizations. Not used by the API. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for the works, grants and patents published by the researcher or contributor. + + + + + + + + + + + + + Container for the works published by the researcher or contributor. + + + + + + + + + + + + A work published by the researcher or contributor. + + + + + + + + + + + + + + + + + + + + Element containing the type and content of the citation for this work + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for storing the external references to the work. + + + + + + + + + + + + + + + + + + + + The type of work, e.g DOI, PMID etc. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Value for the identifier + + + + + + Container for the source of a work. + + + + + + Container for the contributors of a patent. + + + + + + + + + + Container for the grants received by the researcher or contributor + + + + + + + + + + + + A grant received by the researcher or contributor. + + + + + + + + + + + + + + + + + + Agency providing the funding + + + + + + + + + + + Name of funding agency + + + + + + The ORCID identifier for the agency providing the funding associated with this + profile. Note this is a normal ORCID identifier, so can be used to look up the full + details of the client application. + + + + + + + + + + + A link to an external system + + + + + + + + + + + The program that created the id + + + + + + Value for the identifier + + + + + + Grant number + + + + + + The date the grant was provided. + + + + + + + + + + + Container for the contributors of a grant. + + + + + + + + + + + A link to an external system + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for the sources of a grant. + + + + + + + + + + Container for the patents invented by the researcher or contributor + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The date the patent was issued. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for the contributors of a patent. + + + + + + + + + + Container for the sources of a patent. + + + + + + + + + + The date that the work was first published. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for titles of the work. + + + + + + + + + + + Text field for the individual's title. + + + + + + The main title of the work. + + + + + + The book title if the work is a chapter, or the journal title if the + work is a journal article. + + + + + + + The identifier of the researcher or contributor in ORCID. + + + + + + + + + + + The identifier of the researcher or contributor in ORCID. + + + + + + + + + + + The given name(s) of the researcher or contributor as it generally + appears on their published works. + + + + + + + The family name of the researcher or contributor as it generally + appears on their published works. This element is optional, because some cultures + only use given names. + + + + + + + The name by which to when credited or cited, for example, in an article or index, or as a + grant contributor. + + + + + + + + + Container for variations of the researcher or contributor's name, that + may have appeared on their published works. This could include variations because of + transliterations of their names into different alphabets. + + + + + + + + + + + + + + + + + + + + + + + + + Container for location information + + + + + + + + + + + Country of the Institution + + + + + + + + + + + + + + + + + + + + + + + + + + + Container for data that are strictly for internal use only. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The authorization scope that the API client has on this section of + data. + + + + + + + + + + + + + + The visiblity that the researcher or contributor has assigned to + this section of data. + + + + + + + + The code to be used when PUTing a collection of works, grants or patents to ensure + that the existing item's history is retained + + + + + + + + + The data should only be used internally by ORCID. + + + + + + The data should only be shared with systems that the + researcher or contributor has specifically granted authorization (using + OAuth). + + + + + + The data should be publically available. + + + + + The data should be shared only with registered users. + + + + + + + + + + + + + + + The profile was created using the Tier 2 API. + + + + + + The profile was created manually using the ORCID web user + interface. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Element to contain a citation of a given type + + + + + + + + + The types of citation allowed in this element. Note that this must be selected + + + + + + + + + + + + + \ No newline at end of file From 8aecf3e425652374bde4e2b2cec576cdda428f7c Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 24 May 2013 00:25:37 +0100 Subject: [PATCH 002/111] Adding orcid to createprofile menu --- .../gui/menu/CreateProfileMenu.java | 51 ++++++++++++++++--- 1 file changed, 44 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java index 503d44ad..b1c6c180 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java @@ -40,8 +40,10 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.api.CreateProfile; import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.UIHelper; -import org.isatools.isacreator.effects.components.RoundedJPasswordField; import org.isatools.isacreator.launch.ISAcreatorCLArgs; +import org.isatools.isacreator.orcid.OrcidService; +import org.isatools.isacreator.orcid.impl.OrcidServiceImpl; +import org.isatools.isacreator.orcid.model.OrcidAuthor; import org.jdesktop.fuse.InjectedResource; import javax.swing.*; @@ -69,6 +71,7 @@ public class CreateProfileMenu extends UserCreationMenu { private JTextField firstnameVal; private JTextField institutionVal; private JTextField surnameVal; + private JTextField orcid; public CreateProfileMenu(ISAcreatorMenu menu) { super(menu); @@ -89,9 +92,19 @@ public void actionPerformed(ActionEvent e) { createProfile(); } }; + + Action lookupUserInfoFromOrcidAction = new AbstractAction() { + public void actionPerformed(ActionEvent actionEvent) { + lookupUserInfoFromOrcid(); + } + }; + JPanel userNameCont = createUsernamePanel(createProfileAction); JPanel passwordCont = createPasswordPanel(createProfileAction); JPanel confirmPasswordCont = createConfirmPasswordPanel(createProfileAction); + + JPanel orcidIdCont = createOrcidPanel(lookupUserInfoFromOrcidAction); + JPanel firstNameCont = createForenamePanel(createProfileAction); JPanel surnameCont = createSurnamePanel(createProfileAction); JPanel institutionCont = createInstitutionPanel(createProfileAction); @@ -99,17 +112,19 @@ public void actionPerformed(ActionEvent e) { fields.add(userNameCont); - fields.add(Box.createVerticalStrut(7)); + fields.add(Box.createVerticalStrut(8)); fields.add(passwordCont); - fields.add(Box.createVerticalStrut(7)); + fields.add(Box.createVerticalStrut(8)); fields.add(confirmPasswordCont); - fields.add(Box.createVerticalStrut(7)); + fields.add(Box.createVerticalStrut(8)); + fields.add(orcidIdCont); + fields.add(Box.createVerticalStrut(8)); fields.add(firstNameCont); - fields.add(Box.createVerticalStrut(7)); + fields.add(Box.createVerticalStrut(8)); fields.add(surnameCont); - fields.add(Box.createVerticalStrut(7)); + fields.add(Box.createVerticalStrut(8)); fields.add(institutionCont); - fields.add(Box.createVerticalStrut(7)); + fields.add(Box.createVerticalStrut(8)); fields.add(emailCont); JLabel info = new JLabel( @@ -231,6 +246,28 @@ private JPanel createForenamePanel(Action createProfileAction) { return firstNameCont; } + private JPanel createOrcidPanel(Action lookupOrcid){ + JPanel orcidCont = createPanel(); + JLabel orcidLabel = createLabel("orcid"); + orcidCont.add(orcidLabel); + + orcid = createTextField(); + orcidCont.add(orcid); + assignKeyActionToComponent(lookupOrcid, orcid); + return orcidCont; + } + + private void lookupUserInfoFromOrcid() { + OrcidService service = new OrcidServiceImpl(); + OrcidAuthor author = service.getAuthorInfo(orcid.getText()); + + if (author==null) + return; + + firstnameVal.setText(author.getGivenNames()); + surnameVal.setText(author.getFamilyName()); + emailVal.setText(author.getEmail()); + } private void createProfile() { // check password is not empty and that the password and the confirmation match! From 9f07374959c052c92b4f7b32b3a9bc0e4d25d08b Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 24 May 2013 12:00:09 +0100 Subject: [PATCH 003/111] Added gui components and extended the orcid client. --- .../{OrcidService.java => OrcidClient.java} | 4 +- .../orcid/gui/FilterableOrcidTreeModel.java | 32 ++ .../orcid/gui/OrcidContactSelectedEvent.java | 44 ++ .../OrcidContactSelectionCancelledEvent.java | 25 + .../isacreator/orcid/gui/OrcidLookupUI.java | 483 ++++++++++++++++++ .../orcid/gui/OrcidSearchResultsPanel.java | 111 ++++ ...dServiceImpl.java => OrcidClientImpl.java} | 62 ++- .../isacreator/orcid/model/OrcidAuthor.java | 26 +- .../xmlhandlers/OrcidSearchResultHandler.java | 72 ++- 9 files changed, 814 insertions(+), 45 deletions(-) rename src/main/java/org/isatools/isacreator/orcid/{OrcidService.java => OrcidClient.java} (78%) create mode 100644 src/main/java/org/isatools/isacreator/orcid/gui/FilterableOrcidTreeModel.java create mode 100644 src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectedEvent.java create mode 100644 src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectionCancelledEvent.java create mode 100644 src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java create mode 100644 src/main/java/org/isatools/isacreator/orcid/gui/OrcidSearchResultsPanel.java rename src/main/java/org/isatools/isacreator/orcid/impl/{OrcidServiceImpl.java => OrcidClientImpl.java} (56%) diff --git a/src/main/java/org/isatools/isacreator/orcid/OrcidService.java b/src/main/java/org/isatools/isacreator/orcid/OrcidClient.java similarity index 78% rename from src/main/java/org/isatools/isacreator/orcid/OrcidService.java rename to src/main/java/org/isatools/isacreator/orcid/OrcidClient.java index 2e20e8dc..d393ecdb 100644 --- a/src/main/java/org/isatools/isacreator/orcid/OrcidService.java +++ b/src/main/java/org/isatools/isacreator/orcid/OrcidClient.java @@ -10,8 +10,10 @@ * * @author Alejandra Gonzalez-Beltran */ -public interface OrcidService { +public interface OrcidClient { public OrcidAuthor getAuthorInfo(String orcidID); + public OrcidAuthor[] getOrcidProfiles(String searchString); + } diff --git a/src/main/java/org/isatools/isacreator/orcid/gui/FilterableOrcidTreeModel.java b/src/main/java/org/isatools/isacreator/orcid/gui/FilterableOrcidTreeModel.java new file mode 100644 index 00000000..59a9a035 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/gui/FilterableOrcidTreeModel.java @@ -0,0 +1,32 @@ +package org.isatools.isacreator.orcid.gui; + +import org.isatools.isacreator.common.filterableTree.FilterableJTree; +import org.isatools.isacreator.common.filterableTree.TreeFilterModel; + +import javax.swing.tree.DefaultMutableTreeNode; +import javax.swing.tree.TreeNode; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 24/05/2013 + * Time: 11:46 + * + * @author Alejandra Gonzalez-Beltran + */ + + + public class FilterableOrcidTreeModel extends TreeFilterModel { + + public FilterableOrcidTreeModel(TreeNode rootNode, FilterableJTree targetTree) { + super(rootNode, targetTree); + } + + public DefaultMutableTreeNode createRootNode() { + return new DefaultMutableTreeNode(countValues() + " researchers grouped by " + countKeys() + " surnames"); + } + + + } + + diff --git a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectedEvent.java b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectedEvent.java new file mode 100644 index 00000000..09441ee6 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectedEvent.java @@ -0,0 +1,44 @@ +package org.isatools.isacreator.orcid.gui; + +import org.isatools.isacreator.common.DropDownComponent; +import org.isatools.isacreator.orcid.model.OrcidAuthor; + +import javax.swing.*; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 24/05/2013 + * Time: 10:45 + * + * @author Alejandra Gonzalez-Beltran + */ +public class OrcidContactSelectedEvent implements PropertyChangeListener { + + private OrcidLookupUI orcidLookupUI; + private DropDownComponent dropDownComponent; + private JTextField orcid, firstname, lastname, email; + + public OrcidContactSelectedEvent(OrcidLookupUI ontologySelectionTool, JTextField orcid, JTextField fn, JTextField ln, JTextField e) { + this.orcidLookupUI = ontologySelectionTool; + //this.dropDownComponent = dropDownComponent; + this.orcid = orcid; + firstname = fn; + lastname = ln; + email = e; + } + + public void propertyChange(PropertyChangeEvent propertyChangeEvent) { + //dropDownComponent.hidePopup(orcidLookupUI); + orcidLookupUI.setVisible(false); + OrcidAuthor contact = (OrcidAuthor) propertyChangeEvent.getNewValue(); + System.out.println("property change new value - contact="+contact); + firstname.setText(contact.getGivenNames()); + lastname.setText(contact.getFamilyName()); + email.setText(contact.getEmail()); + orcid.setText(contact.getOrcid()); + } + +} diff --git a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectionCancelledEvent.java b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectionCancelledEvent.java new file mode 100644 index 00000000..85f234d5 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidContactSelectionCancelledEvent.java @@ -0,0 +1,25 @@ +package org.isatools.isacreator.orcid.gui; + +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 24/05/2013 + * Time: 10:49 + * + * @author Alejandra Gonzalez-Beltran + */ +public class OrcidContactSelectionCancelledEvent implements PropertyChangeListener { + + private OrcidLookupUI orcidLookupUI = null; + + public OrcidContactSelectionCancelledEvent(OrcidLookupUI orcidLookupUI){ + this.orcidLookupUI = orcidLookupUI; + } + + public void propertyChange(PropertyChangeEvent propertyChangeEvent) { + orcidLookupUI.setVisible(false); + } +} diff --git a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java new file mode 100644 index 00000000..20819413 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java @@ -0,0 +1,483 @@ +package org.isatools.isacreator.orcid.gui; + +import com.explodingpixels.macwidgets.IAppWidgetFactory; +import org.isatools.isacreator.common.ClearFieldUtility; +import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.filterableTree.FilterableJTree; +import org.isatools.isacreator.common.filterableTree.TreeFilterModel; +import org.isatools.isacreator.effects.DraggablePaneMouseInputHandler; +import org.isatools.isacreator.effects.InfiniteProgressPanel; +import org.isatools.isacreator.ontologyselectiontool.CustomTreeRenderer; +import org.isatools.isacreator.ontologyselectiontool.FilterableOntologyTreeModel; +import org.isatools.isacreator.orcid.OrcidClient; +import org.isatools.isacreator.orcid.impl.OrcidClientImpl; +import org.isatools.isacreator.orcid.model.OrcidAuthor; +import org.jdesktop.fuse.InjectedResource; +import org.jdesktop.fuse.ResourceInjector; + +import javax.swing.*; +import javax.swing.border.EmptyBorder; +import javax.swing.border.EtchedBorder; +import javax.swing.event.MouseInputAdapter; +import javax.swing.plaf.basic.BasicTreeUI; +import javax.swing.tree.DefaultMutableTreeNode; +import java.awt.*; +import java.awt.event.*; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 23/05/2013 + * Time: 15:28 + * + * @author Alejandra Gonzalez-Beltran + */ +public class OrcidLookupUI extends JFrame implements WindowListener, MouseListener { + + private static InfiniteProgressPanel progressIndicator; + + private JLabel searchTypeLabel; + private JTextField searchField; + private FilterableJTree orcidSearchResultsTree = null; + + private Container searchAndResultsContainer; + private OrcidSearchResultsPanel resultPane; + //private JPanel parent; + private JPanel searchUIContainer; + private JLabel resultButton; + + private static OrcidClient orcidClient = null; + private OrcidAuthor currentOrcidContact; + + @InjectedResource + private ImageIcon orcidText, searchFieldLeft, search, searchOver, close, closeOver, accept, acceptOver, + resultOver, result,filterInfo, leftFieldIcon, rightFieldIcon; + + public OrcidLookupUI() { + // this.parent = parent; + ResourceInjector.get("orcidlookup-package.style").inject(this); + resultPane = new OrcidSearchResultsPanel(); + } + + public void createGUI() { + setBackground(UIHelper.BG_COLOR); + setUndecorated(true); + setLayout(new BorderLayout()); + setPreferredSize(new Dimension(599, 500)); + ((JComponent) getContentPane()).setBorder(new EtchedBorder(UIHelper.LIGHT_GREEN_COLOR, UIHelper.LIGHT_GREEN_COLOR)); + + progressIndicator = new InfiniteProgressPanel( + "searching orcid"); + + add(createTopPanel(), BorderLayout.NORTH); + searchUIContainer = new JPanel(); + searchUIContainer.setPreferredSize(new Dimension(499, 270)); + searchUIContainer.add(createSearchAndResultPanel()); + + //searchUIContainer.add(createResultsPanel()); + + add(searchUIContainer, BorderLayout.CENTER); + add(createSouthPanel(), BorderLayout.SOUTH); + + pack(); + } + + private Container createSearchAndResultPanel() { + searchAndResultsContainer = Box.createVerticalBox(); + searchAndResultsContainer.setBackground(UIHelper.BG_COLOR); + + Box textContainer = Box.createHorizontalBox(); + + searchTypeLabel = new JLabel(orcidText); + + textContainer.add(searchTypeLabel); + + searchField = new JTextField(); + + Action searchOrcidContacts = new AbstractAction() { + public void actionPerformed(ActionEvent e) { + performSearch(); + } + }; + + searchField.getInputMap().put(KeyStroke.getKeyStroke("ENTER"), "SEARCH_ORCID"); + searchField.getActionMap().put("SEARCH_ORCID", searchOrcidContacts); + + UIHelper.renderComponent(searchField, UIHelper.VER_12_BOLD, UIHelper.LIGHT_GREEN_COLOR, UIHelper.BG_COLOR); + searchField.setPreferredSize(new Dimension(200, 30)); + searchField.setBorder(new EmptyBorder(2, 2, 2, 2)); + searchField.setText("enter id"); + + textContainer.add(Box.createHorizontalStrut(5)); + textContainer.add(new JLabel(searchFieldLeft)); + textContainer.add(searchField); + textContainer.add(Box.createHorizontalStrut(20)); + + final JLabel searchButton = new JLabel(search); + searchButton.addMouseListener(new MouseAdapter() { + public void mouseEntered(MouseEvent mouseEvent) { + searchButton.setIcon(searchOver); + } + + public void mouseExited(MouseEvent mouseEvent) { + searchButton.setIcon(search); + } + + public void mousePressed(MouseEvent mouseEvent) { + searchButton.setIcon(search); + performSearch(); + } + }); + + textContainer.add(searchButton); + + searchAndResultsContainer.add(Box.createVerticalStrut(100)); + searchAndResultsContainer.add(textContainer); + searchAndResultsContainer.add(Box.createVerticalGlue()); + + createResultsPanel(); + + return searchAndResultsContainer; + } + + private Container createResultsPanel(){ + BasicTreeUI ui = new BasicTreeUI() { + public Icon getCollapsedIcon() { + return null; + } + + public Icon getExpandedIcon() { + return null; + } + }; + + createSearchResultsTree(ui); + JScrollPane treeScroll = new JScrollPane(orcidSearchResultsTree, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + treeScroll.setBorder(new EtchedBorder()); + treeScroll.getViewport().setBackground(UIHelper.BG_COLOR); + treeScroll.setPreferredSize(new Dimension(400, 170)); + IAppWidgetFactory.makeIAppScrollPane(treeScroll); + + orcidSearchResultsTree.addMouseListener(this); + + JPanel searchFields = new JPanel(); + searchFields.setLayout(new BoxLayout(searchFields, BoxLayout.PAGE_AXIS)); + searchFields.setBackground(UIHelper.BG_COLOR); + + //searchFields.add(searchSpan); + //searchFields.add(searchFieldCont); + searchFields.add(Box.createVerticalStrut(10)); + + searchAndResultsContainer.add(searchFields, BorderLayout.NORTH); + searchAndResultsContainer.add(treeScroll); + + JPanel filterPanel = new JPanel(); + filterPanel.setBackground(UIHelper.BG_COLOR); + filterPanel.setLayout(new BoxLayout(filterPanel, BoxLayout.LINE_AXIS)); + + ((JComponent) orcidSearchResultsTree.getFilterField()).setBorder(null); + UIHelper.renderComponent(orcidSearchResultsTree.getFilterField(), UIHelper.VER_11_BOLD, UIHelper.DARK_GREEN_COLOR, false); + + filterPanel.add(new JLabel(filterInfo)); + filterPanel.add(new JLabel(leftFieldIcon)); + filterPanel.add(orcidSearchResultsTree.getFilterField()); + filterPanel.add(new ClearFieldUtility(orcidSearchResultsTree.getFilterField())); + filterPanel.add(new JLabel(rightFieldIcon)); + return filterPanel; + } + + private void createSearchResultsTree(BasicTreeUI ui) { + DefaultMutableTreeNode top = new DefaultMutableTreeNode("result"); + + orcidSearchResultsTree = new FilterableJTree(); + TreeFilterModel treeModel = new FilterableOrcidTreeModel(top, orcidSearchResultsTree); + + orcidSearchResultsTree.setModel(treeModel); + orcidSearchResultsTree.setCellRenderer(new CustomTreeRenderer()); + orcidSearchResultsTree.expandRow(0); + orcidSearchResultsTree.expandRow(1); // expand root and first result node on acquiring result! if there is no result, no exceptions will be thrown! + orcidSearchResultsTree.setShowsRootHandles(false); + orcidSearchResultsTree.setUI(ui); + } + + private Container createTopPanel(){ + + Box topContainer = Box.createVerticalBox(); + + Box topPanel = Box.createHorizontalBox(); + + resultButton = new JLabel(); + resultButton.setHorizontalAlignment(SwingConstants.LEFT); + + resultButton.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent mouseEvent) { +// if (resultButton.getIcon() != resultInactive) { +// resultButton.setIcon(resultOver); +// } + } + + @Override + public void mouseExited(MouseEvent mouseEvent) { +// if (resultButton.getIcon() != resultInactive) { +// //resultButton.setIcon(selectedSection == RESULT ? resultOver : result); +// } + } + + @Override + public void mousePressed(MouseEvent mouseEvent) { +// if (resultButton.getIcon() != resultInactive) { + resetButtons(); + //selectedSection = RESULT; +// resultButton.setIcon(resultOver); + swapContainers(resultPane); +// } + } + }); + + topPanel.add(resultButton); + //topPanel.add(new JLabel(end)); + + topContainer.add(topPanel); + + return topContainer; + + } + + + + + private Container createSouthPanel() { + + JPanel southPanel = new JPanel(new BorderLayout()); + southPanel.setBackground(UIHelper.BG_COLOR); + + final JLabel closeButton = new JLabel(close); + closeButton.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent mouseEvent) { + closeButton.setIcon(closeOver); + } + + @Override + public void mouseExited(MouseEvent mouseEvent) { + closeButton.setIcon(close); + } + + @Override + public void mousePressed(MouseEvent mouseEvent) { + firePropertyChange("noSelectedOrcidAuthor", "noneSelected", ""); + setVisible(false); + } + }); + + final JLabel searchButton = new JLabel(accept); + searchButton.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent mouseEvent) { + searchButton.setIcon(acceptOver); + } + + @Override + public void mouseExited(MouseEvent mouseEvent) { + searchButton.setIcon(accept); + } + + @Override + public void mousePressed(MouseEvent mouseEvent) { + firePropertyChange("selectedOrcid", "OLD_VALUE", + currentOrcidContact); + + setVisible(false); + } + }); + + southPanel.add(closeButton, BorderLayout.WEST); + southPanel.add(searchButton, BorderLayout.EAST); + + return southPanel; + } + + private void performSearch() { + + Thread performer = new Thread(new Runnable() { + public void run() { + //try { + System.out.println("starting search"); + if (!searchField.getText().equals("")) { + progressIndicator.setSize(new Dimension( + getWidth(), + getHeight())); + setGlassPane(progressIndicator); + progressIndicator.start(); + OrcidLookupUI.this.validate(); + + OrcidAuthor[] result = orcidClient.getOrcidProfiles(searchField.getText()); + + + Map> map = new HashMap>(); + + for(OrcidAuthor contact: result){ + Set set = new HashSet(); + for(OrcidAuthor contact1: result){ + if (contact.getFamilyName().equals(contact1.getFamilyName())) + set.add(contact1); + } + map.put(contact.getFamilyName(), set); + } + orcidSearchResultsTree.setItems(map); + + progressIndicator.stop(); + + + /* + for (OrcidAuthor contact: result) { + currentOrcidContact = contact; + // push to SearchResultPane + resetButtons(); + resultPane.showOrcidContact(currentOrcidContact); + swapContainers(resultPane); + resultButton.setIcon(resultOver); + progressIndicator.stop(); + break; + } + */ + + } + //} catch (Exception e) { + // e.printStackTrace(); + //} finally { + // if (progressIndicator.isStarted()) { + // SwingUtilities.invokeLater(new Runnable() { + // public void run() { + // progressIndicator.stop(); + // } + // }); + // } + //} + } + }); + + + + orcidClient = new OrcidClientImpl(); + + if (orcidClient != null) { + performer.start(); + } else { + resultPane.showError(); + } + } + + private void resetButtons() { +// if (resultButton.getIcon() != resultInactive) { +// resultButton.setIcon(result); +// } + + } + + private void swapContainers(Container newContainer) { + if (newContainer != null) { + searchUIContainer.removeAll(); + searchUIContainer.add(newContainer); + searchUIContainer.repaint(); + searchUIContainer.validate(); + } + } + + public void windowOpened(WindowEvent windowEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void windowClosing(WindowEvent windowEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void windowClosed(WindowEvent windowEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void windowIconified(WindowEvent windowEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void windowDeiconified(WindowEvent windowEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void windowActivated(WindowEvent windowEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void windowDeactivated(WindowEvent windowEvent) { + firePropertyChange("noSelectedOrcid", "canceled", windowEvent.toString()); + } + + public void installListeners() { + MouseInputAdapter handler = new DraggablePaneMouseInputHandler(this); + Window window = this; + window.addMouseListener(handler); + window.addMouseMotionListener(handler); + } + + public void mouseClicked(MouseEvent mouseEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void mousePressed(MouseEvent mouseEvent) { + if (mouseEvent.getSource() instanceof JTree) { + JTree tree = (JTree) mouseEvent.getSource(); + + DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent(); + if (selectedNode != null) { + + if (tree == orcidSearchResultsTree) { + if (selectedNode.isLeaf()) { + + DefaultMutableTreeNode parentNode = (DefaultMutableTreeNode) selectedNode.getParent(); + String surname = (String) parentNode.getUserObject(); + System.out.println("Selected surname ="+surname); + + OrcidAuthor orcidAuthor = (OrcidAuthor) selectedNode.getUserObject(); + + System.out.println("Selected author="+orcidAuthor); + + if (mouseEvent.getClickCount() == 1) { + + currentOrcidContact = orcidAuthor; + //retrieve the author information + firePropertyChange("selectedOrcid", "OLD_VALUE", + currentOrcidContact); + + } + +// if (OntologyUtils.getSourceOntologyPortalByVersion(ontologySource.getSourceVersion()) == OntologyPortal.BIOPORTAL) { +// boolean sourceIsInPlugins = OntologySearchPluginRegistry.isOntologySourceAbbreviationDefinedInPlugins(ontologyTerm.getOntologySource()); +// viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceVersion(), sourceIsInPlugins ? null : bioportalClient == null ? new BioPortalClient() : bioportalClient); +// } else { +// viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceVersion(), olsClient); +// } + } + } + } + } + } + + public void mouseReleased(MouseEvent mouseEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void mouseEntered(MouseEvent mouseEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void mouseExited(MouseEvent mouseEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } +} diff --git a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidSearchResultsPanel.java b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidSearchResultsPanel.java new file mode 100644 index 00000000..125fcd9a --- /dev/null +++ b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidSearchResultsPanel.java @@ -0,0 +1,111 @@ +package org.isatools.isacreator.orcid.gui; + +import com.explodingpixels.macwidgets.IAppWidgetFactory; +import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.orcid.model.OrcidAuthor; +import org.jdesktop.fuse.InjectedResource; +import org.jdesktop.fuse.ResourceInjector; + +import javax.swing.*; +import javax.swing.border.EmptyBorder; +import javax.swing.text.html.HTMLEditorKit; +import java.awt.*; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 23/05/2013 + * Time: 15:32 + * + * @author Alejandra Gonzalez-Beltran + */ +public class OrcidSearchResultsPanel extends JPanel { + + private JEditorPane resultInfo; + + private JScrollPane resultScroller; + + @InjectedResource + private ImageIcon connectionError; + + public OrcidSearchResultsPanel() { + ResourceInjector.get("orcidlookup-package.style").inject(this); + setLayout(new BorderLayout()); + setBackground(UIHelper.BG_COLOR); + resultInfo = new JEditorPane(); + resultInfo.setContentType("text/html"); + resultInfo.setEditable(false); + resultInfo.setBackground(UIHelper.BG_COLOR); + resultInfo.setAutoscrolls(true); + resultInfo.setEditorKit(new HTMLEditorKit()); + + resultScroller = new JScrollPane(resultInfo, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + resultScroller.setBorder(new EmptyBorder(2, 2, 2, 2)); + resultScroller.setPreferredSize(new Dimension(480, 270)); + + IAppWidgetFactory.makeIAppScrollPane(resultScroller); + } + + public void showOrcidContact(OrcidAuthor currentOrcidContact) { + reformResultData(currentOrcidContact, resultInfo); + removeAll(); + add(resultScroller); + revalidate(); + repaint(); + } + + private void reformResultData(OrcidAuthor contact, JEditorPane htmlPane) { + + String header = "" + "" + + "" + "" + + ""; + + StringBuffer result = new StringBuffer(); + result.append(header); + if (contact != null) { + result.append("
"); + result.append("").append(contact.getGivenNames()+" "+contact.getFamilyName()).append("

"); + + if (contact.getEmail()!=null){ + result.append("").append(contact.getEmail()).append("

"); + } +// if (!p.getAbstractText().trim().equals("")) { +// result.append("").append(p.getAbstractText().trim()).append("

"); +// } +// result.append("PUBMED ID:").append(p.getPubmedId()).append("

"); +//result.append("DOI:").append(p.getPublicationDOI().toUpperCase()).append("

"); + result.append("

"); + result.append("

"); + } + + result.append(""); + + htmlPane.setText(result.toString()); + htmlPane.setCaretPosition(0); + htmlPane.revalidate(); + + } + + public void showError() { + removeAll(); + add(new JLabel(connectionError)); + revalidate(); + repaint(); + } +} diff --git a/src/main/java/org/isatools/isacreator/orcid/impl/OrcidServiceImpl.java b/src/main/java/org/isatools/isacreator/orcid/impl/OrcidClientImpl.java similarity index 56% rename from src/main/java/org/isatools/isacreator/orcid/impl/OrcidServiceImpl.java rename to src/main/java/org/isatools/isacreator/orcid/impl/OrcidClientImpl.java index bb76633a..91543716 100644 --- a/src/main/java/org/isatools/isacreator/orcid/impl/OrcidServiceImpl.java +++ b/src/main/java/org/isatools/isacreator/orcid/impl/OrcidClientImpl.java @@ -2,7 +2,7 @@ import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.GetMethod; -import org.isatools.isacreator.orcid.OrcidService; +import org.isatools.isacreator.orcid.OrcidClient; import org.isatools.isacreator.orcid.model.OrcidAuthor; import org.isatools.isacreator.orcid.xmlhandlers.OrcidSearchResultHandler; import org.orcid.ns.orcid.OrcidMessageDocument; @@ -17,7 +17,7 @@ * * @author Alejandra Gonzalez-Beltran */ -public class OrcidServiceImpl implements OrcidService { +public class OrcidClientImpl implements OrcidClient { public static final String QUERY_URL = "http://pub.orcid.org/search/orcid-bio/"; @@ -27,23 +27,22 @@ public class OrcidServiceImpl implements OrcidService { private HttpClient client = null; private GetMethod getMethod = null; + private OrcidSearchResultHandler handler = null; - public OrcidServiceImpl(){ + public OrcidClientImpl(){ client = new HttpClient(); getMethod = new GetMethod(QUERY_URL); - - + handler = new OrcidSearchResultHandler(); } public OrcidAuthor getAuthorInfo(String orcidID) { + try{ getMethod.setQueryString("q=orcid:" + orcidID ); - - try{ System.out.println("query string=" + getMethod.getQueryString()); System.out.println("URI="+ getMethod.getURI()); @@ -73,18 +72,59 @@ public OrcidAuthor getAuthorInfo(String orcidID) { return null; } + public OrcidAuthor[] getOrcidProfiles(String searchString) { + + try{ + getMethod.setQueryString("q=text:'" + searchString +"'"); + + System.out.println("query string=" + getMethod.getQueryString()); + System.out.println("URI="+ getMethod.getURI()); + + + getMethod.addRequestHeader(CONTENT_TYPE, ORCID_XML); + + int statusCode = client.executeMethod(getMethod); + + if (statusCode != -1) { + String contents = getMethod.getResponseBodyAsString(); + + System.out.println("status text=" + getMethod.getStatusText()); + System.out.println("contents=" + contents); + + getMethod.releaseConnection(); + return processOrcidProfles(contents); + }else{ + System.out.println("status code is -1"); + } + + }catch(IOException ex){ + ex.printStackTrace(); + }//catch(HttpException ex){ + + //} + return null; + + + } + + private OrcidAuthor[] processOrcidProfles(String contents){ + OrcidMessageDocument orcidMessageDocument = handler.getOrcidMessageDocument(contents); + return handler.getOrcidAuthors(orcidMessageDocument); + } private OrcidAuthor processAuthorInfo(String contents){ System.out.println("contents="+contents); - OrcidSearchResultHandler handler = new OrcidSearchResultHandler(); OrcidMessageDocument orcidMessageDocument = handler.getOrcidMessageDocument(contents); - return handler.getOrcidAuthor(orcidMessageDocument); + return handler.getSingleOrcidAuthor(orcidMessageDocument); } public static void main(String[] args) { - OrcidServiceImpl service = new OrcidServiceImpl(); - service.getAuthorInfo("0000-0003-3499-8262"); + OrcidClientImpl client = new OrcidClientImpl(); + //client.getAuthorInfo("0000-0003-3499-8262"); + // client.getOrcidProfiles("English"); + //client.getOrcidProfiles("gonzalez-beltran"); + client.getOrcidProfiles("0000-0003-3499-8262"); } } diff --git a/src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java b/src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java index 2cf4a168..a565a5e2 100644 --- a/src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java +++ b/src/main/java/org/isatools/isacreator/orcid/model/OrcidAuthor.java @@ -8,20 +8,28 @@ * * @author Alejandra Gonzalez-Beltran */ -public class OrcidAuthor { +public class OrcidAuthor {//extends Contact { private String orcid; + + //first name private String givenNames; + //last name private String familyName; + private String email; + private String pastInstitution; private String currentPrimaryInstitution; private String currentOtherInstitution; - private String email; + + public OrcidAuthor(){ } + + public String getOrcid(){ return orcid; } @@ -50,6 +58,7 @@ public String getEmail(){ return email; } + public void setOrcid(String orcid){ this.orcid = orcid; } @@ -70,12 +79,13 @@ public void setEmail(String email){ this.email = email; } - public String toString(){ - StringBuffer buffer = new StringBuffer(); - buffer.append(getGivenNames()+"\t"); - buffer.append(getFamilyName()+"\t"); - buffer.append(getEmail()); - return buffer.toString(); + + + public String getIdentifier() { + return null; //To change body of implemented methods use File | Settings | File Templates. } + public String toString(){ + return getGivenNames()+" "+getFamilyName(); + } } diff --git a/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java index 5140b29c..473795d7 100644 --- a/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java @@ -1,6 +1,5 @@ package org.isatools.isacreator.orcid.xmlhandlers; -import org.apache.xmlbeans.XmlOptions; import org.isatools.isacreator.orcid.model.OrcidAuthor; import org.orcid.ns.orcid.*; @@ -34,10 +33,30 @@ public OrcidMessageDocument getOrcidMessageDocument(String xmlAsString) { return resultDocument; } - public OrcidAuthor getOrcidAuthor(OrcidMessageDocument messageDocument){ + public OrcidAuthor[] getOrcidAuthors(OrcidMessageDocument messageDocument){ - OrcidAuthor orcidAuthor = new OrcidAuthor(); + OrcidMessageDocument.OrcidMessage orcidMessage = messageDocument.getOrcidMessage(); + OrcidSearchResultsDocument.OrcidSearchResults searchResults = orcidMessage.getOrcidSearchResults(); + + if (searchResults==null) + return null; + + OrcidSearchResultDocument.OrcidSearchResult[] results = searchResults.getOrcidSearchResultArray(); + + OrcidAuthor[] authors = new OrcidAuthor[results.length]; + + int i =0; + for(OrcidSearchResultDocument.OrcidSearchResult result: results){ + OrcidProfileDocument.OrcidProfile profile = result.getOrcidProfile(); + authors[i] = getOrcidAuthor(profile); + i++; + } + return authors; + } + + public OrcidAuthor getSingleOrcidAuthor(OrcidMessageDocument messageDocument){ + OrcidAuthor orcidAuthor = null; OrcidMessageDocument.OrcidMessage orcidMessage = messageDocument.getOrcidMessage(); OrcidSearchResultsDocument.OrcidSearchResults searchResults = orcidMessage.getOrcidSearchResults(); @@ -45,43 +64,46 @@ public OrcidAuthor getOrcidAuthor(OrcidMessageDocument messageDocument){ return null; OrcidSearchResultDocument.OrcidSearchResult[] results = searchResults.getOrcidSearchResultArray(); - XmlOptions opts = new XmlOptions(); - opts.setSaveInner(); - if (results.length == 1){ + if (results.length == 1){ OrcidProfileDocument.OrcidProfile profile = results[0].getOrcidProfile(); + orcidAuthor = getOrcidAuthor(profile); + } + + System.out.println(orcidAuthor); + return orcidAuthor; + } - orcidAuthor.setOrcid(profile.getOrcid().toString()); - OrcidBioDocument.OrcidBio orcidBio = profile.getOrcidBio(); - PersonalDetailsDocument.PersonalDetails personalDetails = orcidBio.getPersonalDetails(); - AffiliationsDocument.Affiliations affiliations = orcidBio.getAffiliations(); + private OrcidAuthor getOrcidAuthor(OrcidProfileDocument.OrcidProfile profile){ + OrcidAuthor orcidAuthor = new OrcidAuthor(); + orcidAuthor.setOrcid(removeFragments(profile.getOrcid().toString())); + OrcidBioDocument.OrcidBio orcidBio = profile.getOrcidBio(); + PersonalDetailsDocument.PersonalDetails personalDetails = orcidBio.getPersonalDetails(); + AffiliationsDocument.Affiliations affiliations = orcidBio.getAffiliations(); - GivenNamesDocument.GivenNames givenNames = personalDetails.getGivenNames(); - orcidAuthor.setGivenNames(removeFragments(givenNames.xmlText())); - orcidAuthor.setFamilyName(removeFragments(personalDetails.getFamilyName().xmlText(opts))); - AffiliationDocument.Affiliation[] affiliationArray = affiliations.getAffiliationArray(); - if (affiliationArray.length>0) - orcidAuthor.setCurrentPrimaryInstitution(removeFragments(affiliationArray[0].getAffiliationName().xmlText(opts))); + GivenNamesDocument.GivenNames givenNames = personalDetails.getGivenNames(); - ContactDetailsDocument.ContactDetails contactDetails = orcidBio.getContactDetails(); - if (contactDetails!=null){ - Email[] emails = contactDetails.getEmailArray(); - if (emails.length>0) - orcidAuthor.setEmail(emails[0].getStringValue()); - } + orcidAuthor.setGivenNames(removeFragments(givenNames.xmlText())); + orcidAuthor.setFamilyName(removeFragments(personalDetails.getFamilyName().xmlText())); - } + AffiliationDocument.Affiliation[] affiliationArray = affiliations.getAffiliationArray(); + if (affiliationArray.length>0) + orcidAuthor.setCurrentPrimaryInstitution(removeFragments(affiliationArray[0].getAffiliationName().xmlText())); - System.out.println(orcidAuthor); + ContactDetailsDocument.ContactDetails contactDetails = orcidBio.getContactDetails(); + if (contactDetails!=null){ + Email[] emails = contactDetails.getEmailArray(); + if (emails.length>0) + orcidAuthor.setEmail(emails[0].getStringValue()); + } return orcidAuthor; } - private String removeFragments(String text){ return text.substring(14,text.length()-15); From f836a408e242d6eb7632aa2ed46d730f1ab14af0 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 24 May 2013 12:23:56 +0100 Subject: [PATCH 004/111] dependecy injection properties for orcid --- .../gui-package.properties | 1 + .../orcidlookup-package.properties | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 src/main/resources/dependency-injections/orcidlookup-package.properties diff --git a/src/main/resources/dependency-injections/gui-package.properties b/src/main/resources/dependency-injections/gui-package.properties index 3b40aa03..dbb6d5b0 100644 --- a/src/main/resources/dependency-injections/gui-package.properties +++ b/src/main/resources/dependency-injections/gui-package.properties @@ -143,6 +143,7 @@ CreateProfileMenu.createProfileButton={AuthenticationMenu.createProfileButton} CreateProfileMenu.createProfileButtonOver={AuthenticationMenu.createProfileButtonOver} CreateProfileMenu.backButtonSml={UserCreationMenu.backButtonSml} CreateProfileMenu.backButtonSmlOver={UserCreationMenu.backButtonSmlOver} +CreateProfileMenu.searchOrcid=/images/gui/search_icon.png GSRegistrationMenu.registerIcon={GSAuthenticationMenu.registerIcon} GSRegistrationMenu.registerOverIcon={GSAuthenticationMenu.registerOverIcon} diff --git a/src/main/resources/dependency-injections/orcidlookup-package.properties b/src/main/resources/dependency-injections/orcidlookup-package.properties new file mode 100644 index 00000000..3451da7d --- /dev/null +++ b/src/main/resources/dependency-injections/orcidlookup-package.properties @@ -0,0 +1,28 @@ +OrcidLookupUI.orcidText=/images/orcidlookup/orcid.png +OrcidLookupUI.search=/images/publicationlocator/search.png +OrcidLookupUI.accept=/images/orcidlookup/search_icon.png +OrcidLookupUI.acceptOver=/images/orcidlookup/search_icon.png +OrcidLookupUI.searchBy=/images/publicationlocator/header_search_by.png +OrcidLookupUI.pubmedOption=/images/publicationlocator/header_pubmed_option.png +OrcidLookupUI.pubmedOptionOver=/images/publicationlocator/header_pubmed_option_selected.png +OrcidLookupUI.resultInactive=/images/publicationlocator/header_result_inactive.png +OrcidLookupUI.result=/images/publicationlocator/header_result.png +OrcidLookupUI.resultOver=/images/publicationlocator/header_result_selected.png +OrcidLookupUI.end=/images/publicationlocator/header_end.png +OrcidLookupUI.close=/images/publicationlocator/close.png +OrcidLookupUI.closeOver=/images/publicationlocator/close_over.png +OrcidLookupUI.searchOver=/images/publicationlocator/search_over.png +OrcidLookupUI.searchFieldLeft=/images/publicationlocator/search_field_left.png + +OrcidSearchResultsPanel.connectionError=/images/publicationlocator/connection_error.png +OrcidLookupUI.filterInfo=/images/ontologyselectiontool/filter_results.png + +OrcidLookupUI.leftFieldIcon=/images/common/customfields/left_field.png +OrcidLookupUI.rightFieldIcon=/images/common/customfields/right_field.png + +CustomTreeRenderer.termNodeSelected=/images/ontologyselectiontool/term_node_selected.png +CustomTreeRenderer.termNode=/images/ontologyselectiontool/term_node.png +CustomTreeRenderer.rootNode=/images/ontologyselectiontool/browse_root_closed.png +CustomTreeRenderer.rootNodeSelected=/images/ontologyselectiontool/browse_root.png +CustomTreeRenderer.branchNode=/images/common/node_closed.png +CustomTreeRenderer.branchNodeSelected=/images/common/node_open.png From 15fb390373b2ca2a3eade1b888a4f0ceeac1e1e0 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 24 May 2013 12:25:50 +0100 Subject: [PATCH 005/111] Added orcid stuff to the create profile menu. --- .../gui/menu/CreateProfileMenu.java | 85 +++++++++++++++++-- 1 file changed, 76 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java index b1c6c180..cde69c50 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java @@ -40,9 +40,13 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.api.CreateProfile; import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.gui.HistoricalSelectionGUI; import org.isatools.isacreator.launch.ISAcreatorCLArgs; -import org.isatools.isacreator.orcid.OrcidService; -import org.isatools.isacreator.orcid.impl.OrcidServiceImpl; +import org.isatools.isacreator.orcid.OrcidClient; +import org.isatools.isacreator.orcid.gui.OrcidContactSelectedEvent; +import org.isatools.isacreator.orcid.gui.OrcidContactSelectionCancelledEvent; +import org.isatools.isacreator.orcid.gui.OrcidLookupUI; +import org.isatools.isacreator.orcid.impl.OrcidClientImpl; import org.isatools.isacreator.orcid.model.OrcidAuthor; import org.jdesktop.fuse.InjectedResource; @@ -64,7 +68,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class CreateProfileMenu extends UserCreationMenu { @InjectedResource - private ImageIcon createProfileButton, createProfileButtonOver, backButtonSml, backButtonSmlOver; + private ImageIcon createProfileButton, createProfileButtonOver, backButtonSml, backButtonSmlOver, searchOrcid; private JLabel createProfile, backButton; @@ -72,6 +76,7 @@ public class CreateProfileMenu extends UserCreationMenu { private JTextField institutionVal; private JTextField surnameVal; private JTextField orcid; + private JLabel searchOrcidLabel; public CreateProfileMenu(ISAcreatorMenu menu) { super(menu); @@ -84,7 +89,7 @@ public CreateProfileMenu(ISAcreatorMenu menu) { public void createGUI() { Box fields = Box.createVerticalBox(); - fields.add(Box.createVerticalStrut(10)); + fields.add(Box.createVerticalStrut(11)); fields.setOpaque(false); Action createProfileAction = new AbstractAction() { @@ -111,14 +116,14 @@ public void actionPerformed(ActionEvent actionEvent) { JPanel emailCont = createEmailPanel(createProfileAction); + fields.add(orcidIdCont); + fields.add(Box.createVerticalStrut(8)); fields.add(userNameCont); fields.add(Box.createVerticalStrut(8)); fields.add(passwordCont); fields.add(Box.createVerticalStrut(8)); fields.add(confirmPasswordCont); fields.add(Box.createVerticalStrut(8)); - fields.add(orcidIdCont); - fields.add(Box.createVerticalStrut(8)); fields.add(firstNameCont); fields.add(Box.createVerticalStrut(8)); fields.add(surnameCont); @@ -247,19 +252,81 @@ private JPanel createForenamePanel(Action createProfileAction) { } private JPanel createOrcidPanel(Action lookupOrcid){ - JPanel orcidCont = createPanel(); + JPanel orcidCont = new JPanel(new GridLayout(2, 2)); + orcidCont.setOpaque(false); JLabel orcidLabel = createLabel("orcid"); orcidCont.add(orcidLabel); orcid = createTextField(); orcidCont.add(orcid); assignKeyActionToComponent(lookupOrcid, orcid); + + final JLabel searchOrcidLabel = new JLabel( + "orcid", + searchOrcid, + JLabel.RIGHT); + + UIHelper.renderComponent(searchOrcidLabel, UIHelper.VER_12_PLAIN, UIHelper.DARK_GREEN_COLOR, false); + + searchOrcidLabel.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent mouseEvent) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + final OrcidLookupUI orcidLookupUI = new OrcidLookupUI(); + orcidLookupUI.createGUI(); + orcidLookupUI.installListeners(); + orcidLookupUI.setVisible(true); + + orcidLookupUI.addPropertyChangeListener("selectedOrcid", new OrcidContactSelectedEvent(orcidLookupUI, orcid, firstnameVal, surnameVal, emailVal)); + + orcidLookupUI.addPropertyChangeListener("noSelectedOrcid", new OrcidContactSelectionCancelledEvent(orcidLookupUI)); + + // set up location on screen + int proposedX = (int) orcid.getLocationOnScreen() + .getX(); + int proposedY = (int) orcid.getLocationOnScreen() + .getY(); + + // get the desktop bounds e.g. 1440*990, 800x600, etc. + Rectangle desktopBounds = GraphicsEnvironment.getLocalGraphicsEnvironment() + .getMaximumWindowBounds(); + + if ((proposedX + HistoricalSelectionGUI.WIDTH) > desktopBounds.width) + + { + int difference = (proposedX + + HistoricalSelectionGUI.WIDTH) - + desktopBounds.width; + proposedX = proposedX - difference; + } + + if ((proposedY + HistoricalSelectionGUI.HEIGHT) > desktopBounds.height) + + { + int difference = (proposedY + + HistoricalSelectionGUI.HEIGHT) - + desktopBounds.height; + proposedY = proposedY - difference; + } + + orcidLookupUI.setLocation(proposedX, proposedY); + orcidLookupUI.setVisible(true); + + + + }//run + });//runnable + }; + }); + orcidCont.add(searchOrcidLabel); + return orcidCont; } private void lookupUserInfoFromOrcid() { - OrcidService service = new OrcidServiceImpl(); - OrcidAuthor author = service.getAuthorInfo(orcid.getText()); + OrcidClient client = new OrcidClientImpl(); + OrcidAuthor author = client.getAuthorInfo(orcid.getText()); if (author==null) return; From 32d3e3659e7932672cbe93f11c5c97c750bbad7c Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Wed, 7 Aug 2013 12:47:38 +0100 Subject: [PATCH 006/111] Some more small changes to get the build to work correctly. --- pom.xml | 38 ++++++++++++++++---------------------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/pom.xml b/pom.xml index 9359e4dd..e36a2241 100644 --- a/pom.xml +++ b/pom.xml @@ -40,6 +40,10 @@ + + oerc + http://frog.oerc.ox.ac.uk:8080/nexus-2.1.2/content/repositories/releases/ + mvnrepository @@ -56,15 +60,6 @@ http://download.java.net/maven/2/ - - oerc - http://frog.oerc.ox.ac.uk:8080/nexus-2.1.2/content/repositories/releases/ - - - - mvnsearch - http://www.mvnsearch.org/maven2/ - @@ -232,6 +227,12 @@ shade + + + + + + false uk.ac.ebi jutils + + + cpdetector + cpdetector + + @@ -462,11 +469,6 @@ 1.0 - - com.sun.jersey - jersey-bundle - 1.11 - com.google.zxing @@ -503,14 +505,6 @@ runtime - - - com.sun.jersey - jersey-json - 1.11 - runtime - - com.amazonaws aws-java-sdk From 853219ca4ab0430494ed73a78c022f818f7dcc1f Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 13 Aug 2013 11:03:06 +0100 Subject: [PATCH 007/111] Information about the Proxy. --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c958d370..228fe4d4 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,7 @@ ### Running ISAcreator To run ISAcreator locally: + 1. Clone the code to your machine. You may clone from the primary repository at ISA-tools/ISAcreator, or from your own fork. 2. Compile the code (`mvn assembly:assembly -Dmaven.test.skip=true -Pbuild`) - the build profile automatically sets some system variables like version etc. from information held within the pom. 3. Run the code (`java -cp target/ISAcreator-1.7.1-jar-with-dependencies.jar org.isatools.isacreator.launch.ISAcreatorApplication`) @@ -27,6 +28,8 @@ To run ISAcreator locally: You should read this article about Github Flow: . Although we don't strictly use Github flow, it's a really useful tutorial on how to use Git for collaborative development. +Ensure you have maven 2.2.1 installed and enabled as well as git. If you have trouble with dependencies, and you are running behind a proxy, please ensure you set the proxy in both MAVEN_OPTS and settings.xml. See [here](https://answers.atlassian.com/questions/31384/plugin-sdk-proxy-setting-for-https-is-not-working-but-http-is) for more information. + 1. Fork it. 2. Clone your forked repository to your machine 3. Create a branch off of the development branch (`git checkout -b myisacreator`) @@ -55,4 +58,4 @@ For a list of contributors, please see \ No newline at end of file +CPAL License, available at From 648e3e19b9dc4c4cf13c316fbcfb5dca36465f5d Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 6 Sep 2013 14:44:17 +0100 Subject: [PATCH 008/111] Modified configuration schema to allow lists. Allow list values for units. Use default dropdown list ui instead of custom one which is a pain. --- .../isacreator/configuration/FieldObject.java | 2 +- .../configuration/io/ConfigXMLParser.java | 15 +++++++++++- .../gui/InvestigationDataEntry.java | 1 + .../isacreator/gui/StudyDataEntry.java | 2 +- .../io/importisa/ISAtabImporter.java | 4 +++- .../spreadsheet/SpreadsheetFunctions.java | 23 +++++++++++++++---- .../model/TableReferenceObject.java | 1 - .../isacreator/utils/PropertyFileIO.java | 2 +- .../resources/xsd/isatab_configuration.xsd | 1 + 9 files changed, 41 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/configuration/FieldObject.java b/src/main/java/org/isatools/isacreator/configuration/FieldObject.java index 84b366a7..8e70b497 100644 --- a/src/main/java/org/isatools/isacreator/configuration/FieldObject.java +++ b/src/main/java/org/isatools/isacreator/configuration/FieldObject.java @@ -181,7 +181,7 @@ public String getDescription() { } public String[] getFieldList() { - return fieldList; + return fieldList == null ? new String[]{"No units available"} : fieldList; } public String getFieldName() { diff --git a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java index 4c4ace2a..121868a1 100644 --- a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java +++ b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java @@ -295,13 +295,26 @@ public void processTable(IsaTabConfigurationType isaConf) { } else if (obj instanceof UnitFieldType) { UnitFieldType unitField = (UnitFieldType) obj; - FieldObject newField = new FieldObject(colNo, "Unit", StringProcessing.cleanUpString(unitField.getDescription()), DataTypes.ONTOLOGY_TERM, "", "", + FieldObject newField = new FieldObject(colNo, "Unit", StringProcessing.cleanUpString(unitField.getDescription()), DataTypes.resolveDataType(unitField.getDataType()), "", "", unitField.getIsRequired(), false, false, false, unitField.getIsForcedOntology()); if (unitField.getRecommendedOntologies() != null) { processRecommendedOntologies(unitField, newField); } + if (unitField.getListValues() != null) { + String values = StringProcessing.cleanUpString(unitField.getListValues()); + + if (values.contains(",")) { + String[] valueList = values.split(","); + newField.setFieldList(valueList); + } else { + if(!values.isEmpty()) { + newField.setFieldList(new String[]{values}); + } + } + } + fields.add(newField); tableStructure.put(colNo, new String[]{newField.getFieldName(), ""}); diff --git a/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java b/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java index 16bd3242..03bd1cf5 100755 --- a/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java +++ b/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java @@ -141,6 +141,7 @@ private void createInvestigationSectionFields() { containerScroller.setBorder(null); IAppWidgetFactory.makeIAppScrollPane(containerScroller); + containerScroller.getVerticalScrollBar().setUnitIncrement(16); add(containerScroller); } diff --git a/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java b/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java index 3189ffbd..2903a04e 100755 --- a/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java +++ b/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java @@ -70,7 +70,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.util.*; import java.util.List; - /** * StudyDataEntry class * @@ -178,6 +177,7 @@ public void createFields() { containerScroller.setBorder(null); IAppWidgetFactory.makeIAppScrollPane(containerScroller); + containerScroller.getVerticalScrollBar().setUnitIncrement(16); add(containerScroller); } diff --git a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java index a6ac1a16..aaccef70 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java @@ -137,6 +137,7 @@ protected boolean commonImportFile(String parentDir) { InvestigationImport investigationFileImporter = new InvestigationImport(); Pair>>>> investigationFileImport = investigationFileImporter.importInvestigationFile(investigationFile); + messages.addAll(investigationFileImporter.getMessages()); if (investigationFileImport.fst) { @@ -251,10 +252,11 @@ protected boolean processInvestigation(String parentDirectoryPath) { OntologyManager.addToOntologySelectionHistory(builtReference.getReferencedOntologyTerms()); } } catch (MalformedInvestigationException mie) { + mie.printStackTrace(); messages.add(new ErrorMessage(ErrorLevel.ERROR, mie.getMessage())); } catch (Exception e) { - + e.printStackTrace(); messages.add(new ErrorMessage(ErrorLevel.ERROR, e.getMessage())); } finally { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java index 61503d41..5d2cf8a8 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java @@ -38,6 +38,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.spreadsheet; import org.apache.commons.collections15.set.ListOrderedSet; +import org.isatools.isacreator.autofiltercombo.AutoFilterCombo; +import org.isatools.isacreator.autofiltercombo.AutoFilterComboCellEditor; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; @@ -64,6 +66,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.io.File; import java.io.FileNotFoundException; import java.io.PrintStream; +import java.lang.reflect.Array; import java.util.*; /** @@ -998,7 +1001,19 @@ protected void addCellEditor(TableColumn col, String previousColumnName) { } if (spreadsheet.getTableReferenceObject().getClassType(columnName) == DataTypes.LIST) { - col.setCellEditor(new FilterableListCellEditor(spreadsheet.getTableReferenceObject().getListItems(columnName))); + if (columnName.equalsIgnoreCase("unit")) { + FieldObject unitField = spreadsheet.getTableReferenceObject().getNextUnitField(previousColumnName); + if (unitField != null) { + System.out.println(Arrays.toString(unitField.getFieldList())); + + col.setCellEditor(new AutoFilterComboCellEditor(new AutoFilterCombo( + unitField.getFieldList(), false))); + } + } else { + col.setCellEditor(new AutoFilterComboCellEditor(new AutoFilterCombo( + spreadsheet.getTableReferenceObject().getListItems(columnName), false))); + + } return; } @@ -1257,11 +1272,11 @@ public Set getValuesInSelectedRowsForColumn(String columnName) { Set values = new ListOrderedSet(); for (int columnIndex = 0; columnIndex < spreadsheet.getColumnCount(); columnIndex++) { String colName = spreadsheet.spreadsheetModel.getColumnName(columnIndex); - - if(colName.equals(columnName)) { + + if (colName.equals(columnName)) { // add all values for this column. - for(int row : selectedRows) { + for (int row : selectedRows) { values.add(spreadsheet.spreadsheetModel.getValueAt(row, columnIndex).toString()); } break; diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java index 7fa9e977..0574e670 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java @@ -508,7 +508,6 @@ public String[] getListItems(String colName) { public void setFieldListItems(String colName, String[] listItems) { FieldObject fo = fieldLookup.get(colName); - if (fo != null) { fo.setFieldList(listItems); } diff --git a/src/main/java/org/isatools/isacreator/utils/PropertyFileIO.java b/src/main/java/org/isatools/isacreator/utils/PropertyFileIO.java index caf4acce..94b60fe7 100644 --- a/src/main/java/org/isatools/isacreator/utils/PropertyFileIO.java +++ b/src/main/java/org/isatools/isacreator/utils/PropertyFileIO.java @@ -101,7 +101,7 @@ public static Properties loadSettings(String propertiesFile) { private static Properties loadDefaults(Properties userSettings) { for (String key : retrieveDefaultSettings().stringPropertyNames()) { - if (!(key.equalsIgnoreCase(IgnoredProperties.APPVERSION.key) && key.equalsIgnoreCase(IgnoredProperties.STRICTVALIDATION.key))) { + if (!key.equalsIgnoreCase(IgnoredProperties.APPVERSION.key)) { userSettings.put(key, retrieveDefaultSettings().get(key).toString()); } } diff --git a/src/main/resources/xsd/isatab_configuration.xsd b/src/main/resources/xsd/isatab_configuration.xsd index df7e461f..825f8a74 100644 --- a/src/main/resources/xsd/isatab_configuration.xsd +++ b/src/main/resources/xsd/isatab_configuration.xsd @@ -67,6 +67,7 @@ + From 34b6d248779c2891de123297b26dcacde5583d96 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 6 Sep 2013 15:24:38 +0100 Subject: [PATCH 009/111] SpreadsheetImport fixed to import configuration defaults properly. --- .../io/importisa/SpreadsheetImport.java | 55 ++++++++++++++----- 1 file changed, 42 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java index 15d6c918..6d3d5e84 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java @@ -100,7 +100,7 @@ private TableReferenceObject reformTableDefinition(String tableName, // way of storing previously seen protocol to determine where the parameters are which associated with it. int previousProtocol = -1; - + System.out.println("Reforming table definition..."); // way of storing previously read characteristic, factor, or parameter to determine what type it is String previousCharFactParam = null; int expectedNextUnitLocation = -1; @@ -113,11 +113,20 @@ private TableReferenceObject reformTableDefinition(String tableName, String fieldAsLowercase = columnHeader.toLowerCase(); + System.out.println("Column header is " + columnHeader); + + if (expectedNextUnitLocation == positionInheaders) { + System.out.println("Expected a unit here, got a " + columnHeader); if (fieldAsLowercase.contains("unit")) { // add two fields...one accepting string values and the unit, also accepting string values :o) - FieldObject newFo = new FieldObject(count, - previousCharFactParam, "", DataTypes.STRING, "", false, false, false); + + FieldObject newFo = startReference.getFieldByName(previousCharFactParam); + if (newFo == null) { + newFo = new FieldObject(count, + previousCharFactParam, "", DataTypes.STRING, "", false, false, false); + } + tro.addField(newFo); if (tro.getColumnDependencies().get(count) == null) { @@ -129,7 +138,12 @@ private TableReferenceObject reformTableDefinition(String tableName, count++; - newFo = new FieldObject(count, columnHeader, "", DataTypes.ONTOLOGY_TERM, "", false, false, false); + // get the unit for this factor. + newFo = startReference.getNextUnitField(previousCharFactParam); + + if (newFo == null) { + newFo = new FieldObject(count, columnHeader, "", DataTypes.ONTOLOGY_TERM, "", false, false, false); + } tro.addField(newFo); tro.getColumnDependencies().get(parentColPos).add(count); @@ -140,9 +154,13 @@ private TableReferenceObject reformTableDefinition(String tableName, // AND ATTACH UNIT TO FIELD VIA THE MAPPING IN THE TABLE CLASS } else { // add a field accepting ontology terms - FieldObject newFo = new FieldObject(count, - previousCharFactParam, "", DataTypes.ONTOLOGY_TERM, "", - false, false, false); + FieldObject newFo = startReference.getFieldByName(previousCharFactParam); + + if (newFo != null) { + newFo = new FieldObject(count, + previousCharFactParam, "", DataTypes.ONTOLOGY_TERM, "", + false, false, false); + } tro.addField(newFo); parentColPos = count; @@ -167,10 +185,6 @@ private TableReferenceObject reformTableDefinition(String tableName, FieldObject field = startReference.getFieldByName(columnHeader); if (field != null) { - tro.addField(field); - count++; - } else { - // doesn't exist if ((fieldAsLowercase.contains("factor value") || @@ -179,8 +193,19 @@ private TableReferenceObject reformTableDefinition(String tableName, previousCharFactParam = columnHeader; expectedNextUnitLocation = positionInheaders + 1; + } else { + tro.addField(field); } + count++; + } else { + if ((fieldAsLowercase.contains("factor value") || + fieldAsLowercase.contains("characteristics") || + fieldAsLowercase.contains("parameter value")) && !fieldAsLowercase.contains("comment")) { + + previousCharFactParam = columnHeader; + expectedNextUnitLocation = positionInheaders + 1; + } if (fieldAsLowercase.equals("performer") || fieldAsLowercase.contains("comment") || fieldAsLowercase.equals("provider")) { @@ -221,8 +246,12 @@ private TableReferenceObject reformTableDefinition(String tableName, if (expectedNextUnitLocation != -1) { // add last factor/characteristic to the table - FieldObject newFo = new FieldObject(count, previousCharFactParam, - "", DataTypes.ONTOLOGY_TERM, "", false, false, false); + + FieldObject newFo = startReference.getFieldByName(previousCharFactParam); + if (newFo == null) { + newFo = new FieldObject(count, + previousCharFactParam, "", DataTypes.ONTOLOGY_TERM, "", false, false, false); + } tro.addField(newFo); } From 879486d53abc45f758664b36961e74f81c92bb8a Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 6 Sep 2013 16:53:42 +0100 Subject: [PATCH 010/111] Some improvements to the file chooser ui. Adding in support for different root levels soon. --- .../isacreator/filechooser/FileChooserUI.java | 15 +++++++--- .../FileSystemTreeCellRenderer.java | 26 +----------------- .../io/importisa/SpreadsheetImport.java | 2 +- .../model/TableReferenceObject.java | 26 ++++++++++-------- .../images/filechooser/closed_directory.png | Bin 436 -> 290 bytes .../images/filechooser/closed_group_item.png | Bin 194 -> 383 bytes .../resources/images/filechooser/delete.png | Bin 507 -> 766 bytes .../images/filechooser/delete_over.png | Bin 1525 -> 723 bytes .../resources/images/filechooser/dir_item.png | Bin 754 -> 186 bytes .../resources/images/filechooser/down.png | Bin 577 -> 746 bytes .../images/filechooser/down_over.png | Bin 1619 -> 688 bytes .../images/filechooser/generic_file.png | Bin 1160 -> 177 bytes .../images/filechooser/home_directory.png | Bin 534 -> 753 bytes .../filechooser/home_directory_over.png | Bin 1501 -> 726 bytes .../images/filechooser/local_file_system.png | Bin 583 -> 736 bytes .../images/filechooser/open_directory.png | Bin 530 -> 276 bytes .../images/filechooser/opened_group_item.png | Bin 215 -> 362 bytes .../images/filechooser/remote_file_system.png | Bin 1041 -> 1047 bytes .../remote_file_system_selected.png | Bin 1026 -> 971 bytes .../selected_local_file_system.png | Bin 569 -> 729 bytes .../images/filechooser/sort_ascending.png | Bin 461 -> 516 bytes .../filechooser/sort_ascending_over.png | Bin 1160 -> 495 bytes .../images/filechooser/sort_descending.png | Bin 426 -> 523 bytes .../filechooser/sort_descending_over.png | Bin 1129 -> 493 bytes .../images/filechooser/unknown_file_type.png | Bin 359 -> 177 bytes .../images/filechooser/up_directory.png | Bin 340 -> 446 bytes .../images/filechooser/up_directory_over.png | Bin 953 -> 429 bytes 27 files changed, 27 insertions(+), 42 deletions(-) mode change 100755 => 100644 src/main/resources/images/filechooser/closed_directory.png mode change 100755 => 100644 src/main/resources/images/filechooser/closed_group_item.png mode change 100755 => 100644 src/main/resources/images/filechooser/local_file_system.png mode change 100755 => 100644 src/main/resources/images/filechooser/open_directory.png mode change 100755 => 100644 src/main/resources/images/filechooser/opened_group_item.png mode change 100755 => 100644 src/main/resources/images/filechooser/remote_file_system.png mode change 100755 => 100644 src/main/resources/images/filechooser/remote_file_system_selected.png mode change 100755 => 100644 src/main/resources/images/filechooser/selected_local_file_system.png mode change 100755 => 100644 src/main/resources/images/filechooser/unknown_file_type.png diff --git a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java index bdf36a80..9181ecbd 100755 --- a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java +++ b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java @@ -39,6 +39,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import com.explodingpixels.macwidgets.IAppWidgetFactory; import org.apache.commons.net.ftp.FTPFile; +import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.Globals; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.effects.AnimatableJFrame; @@ -645,9 +646,10 @@ private JPanel createNavTree() { final JLabel navToParentDir = new JLabel(upIcon); navToParentDir.setOpaque(false); - navToParentDir.addMouseListener(new MouseAdapter() { + navToParentDir.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); navToParentDir.setIcon(upIcon); try { updateTree(fileBrowser.getParentDirectory()); @@ -657,10 +659,12 @@ public void mousePressed(MouseEvent event) { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); navToParentDir.setIcon(upIconOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); navToParentDir.setIcon(upIcon); } }); @@ -670,9 +674,10 @@ public void mouseExited(MouseEvent event) { final JLabel navToHomeDir = new JLabel(homeIcon); navToHomeDir.setOpaque(false); - navToHomeDir.addMouseListener(new MouseAdapter() { + navToHomeDir.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); navToHomeDir.setIcon(homeIcon); try { updateTree(fileBrowser.getHomeDirectory()); @@ -687,10 +692,12 @@ public void mousePressed(MouseEvent event) { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); navToHomeDir.setIcon(homeIconOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); navToHomeDir.setIcon(homeIcon); } }); @@ -711,10 +718,10 @@ public void mouseExited(MouseEvent event) { } - directoryTree.addMouseListener(new MouseAdapter() { - + directoryTree.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); int selRow = directoryTree.getRowForLocation(event.getX(), event.getY()); diff --git a/src/main/java/org/isatools/isacreator/filechooser/FileSystemTreeCellRenderer.java b/src/main/java/org/isatools/isacreator/filechooser/FileSystemTreeCellRenderer.java index 563a4acd..7c53e921 100755 --- a/src/main/java/org/isatools/isacreator/filechooser/FileSystemTreeCellRenderer.java +++ b/src/main/java/org/isatools/isacreator/filechooser/FileSystemTreeCellRenderer.java @@ -93,31 +93,7 @@ public Component getTreeCellRendererComponent(JTree jTree, Object o, break; case FileBrowserTreeNode.FILE_TYPE: - if (o.toString().contains(".")) { - String extension = o.toString() - .substring(o.toString().lastIndexOf(".") + - 1); - File f = new File(FileImage.FILE_IMG_DIR + File.separator + extension + - "icon.png"); - - if (!f.exists()) { - try { - new FileImage(extension).createImage(); - icon.setIcon(new ImageIcon(FileImage.FILE_IMG_DIR + File.separator + extension + - "icon.png")); - } catch (IOException e) { - icon.setIcon(unknownFileType); - } - } else { - icon.setIcon(new ImageIcon(FileImage.FILE_IMG_DIR + File.separator + extension + - "icon.png")); - } - - - } else { - icon.setIcon(unknownFileType); - } - + icon.setIcon(unknownFileType); break; case FileBrowserTreeNode.DIRECTORY: diff --git a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java index 6d3d5e84..d171986d 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java @@ -156,7 +156,7 @@ private TableReferenceObject reformTableDefinition(String tableName, // add a field accepting ontology terms FieldObject newFo = startReference.getFieldByName(previousCharFactParam); - if (newFo != null) { + if (newFo == null) { newFo = new FieldObject(count, previousCharFactParam, "", DataTypes.ONTOLOGY_TERM, "", false, false, false); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java index 0574e670..c42b422f 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java @@ -536,21 +536,23 @@ public FieldObject getNextUnitField(String colName) { // go through fields, find the one in the parameter, and then try and find the next unit for that field. FieldObject field = fieldLookup.get(colName); - int proposedColNumber = field.getColNo() + 1; + if (field != null) { + int proposedColNumber = field.getColNo() + 1; - if (tableConfig == null) { - // for those tables built from their layout rather than directly from the tablerefenceobject - if (fieldIndexLookup.containsKey(proposedColNumber)) { - if (fieldIndexLookup.get(proposedColNumber).getFieldName().equalsIgnoreCase(GeneralFieldTypes.UNIT.name)) { - return fieldIndexLookup.get(proposedColNumber); + if (tableConfig == null) { + // for those tables built from their layout rather than directly from the tablerefenceobject + if (fieldIndexLookup.containsKey(proposedColNumber)) { + if (fieldIndexLookup.get(proposedColNumber).getFieldName().equalsIgnoreCase(GeneralFieldTypes.UNIT.name)) { + return fieldIndexLookup.get(proposedColNumber); + } } - } - } else { - if (tableConfig.getFields().size() > proposedColNumber) { - FieldObject candidateUnitField = tableConfig.getFields().get(proposedColNumber); + } else { + if (tableConfig.getFields().size() > proposedColNumber) { + FieldObject candidateUnitField = tableConfig.getFields().get(proposedColNumber); - if (candidateUnitField.getFieldName().equalsIgnoreCase(GeneralFieldTypes.UNIT.name)) { - return candidateUnitField; + if (candidateUnitField.getFieldName().equalsIgnoreCase(GeneralFieldTypes.UNIT.name)) { + return candidateUnitField; + } } } } diff --git a/src/main/resources/images/filechooser/closed_directory.png b/src/main/resources/images/filechooser/closed_directory.png old mode 100755 new mode 100644 index 68b5e74fd6790fa56c1ee74cb91b2e83108e4933..2e0088c5e9ee08fbeb4d69abd96032c70d98fdfc GIT binary patch delta 261 zcmV+g0s8*51EK;UiBL{Q4GJ0x0000DNk~Le0000I0000F2nGNE0O^LG5|JS%e*nZu zL_t(|+G1d!5?}-oy~pegfK)#b>K6iWJQndn7AQjih#d$RG68Ct02Vm`m_Z;H9l&GA z2Ov(sVF(z&4Du(!MR)-dwE~-J2CHsu*%?G)NkrY#)d2&5cz#BkgF_4j*Gy^mcmJ2=ry#_Lf0U*Etz-20VnIf@#00000 LNkvXXu0mjftuIwn delta 408 zcmV;J0cZZA0<;4miBL{Q4GJ0x0000DNk~Le0000M0000J2nGNE0F-(Ch>;;De*soW zL_t(|+G1cB1+)f?=mM-6mi|Dh0f-Hdgb#qke$P05kSv3NhSqbiGBo&@GBX&fFoVUu z|N75x_Rc?sy%+y7{P+#F02y2W;tkj=WJEI59%$%+RCg8zDIq2d7rg)SABAwu;?*0S0-T`JfveO*2m1W7?g1`amd zhCYAyA7tPIkV|1ffYV?!OY8|a_yN$shu9riU9%xpuz;e1i%Eqhc6wWBa{s|OBcxs ztw18u$(3U}ceWb@f1a?(xp|BXj0MJkp}Pc*z+pMO*R2JRynrcy3fM6*2ByG_{tQLR zj{-;7ww!=NY$MsjGjW|73ivwISC2BZ?v^e&;?5N zK_-xswrIcVCelCSXQd^`%nkS8+p(NNhCPTmR$(ysD8QgSIg3cQFVt?> z3(LMt8aL6?XjKDU^Mut}UjF%SlSXn&8_!#S0RW@HZOY4hLO}ok002ovPDHLkV1jt} Bmu&z5 delta 164 zcmey*bcj*0Gr-TCmrII^fq{Y7)59eQNQ(inFb5luoKpF>W1^yZ6+?=ri(^Q|t)v7A zR%bDTN0U>|Zn(l8#N^>5UU%N&-$aS#nH>R}89Vq77+f%_>x%7p@`~9*Z$HBkzLuDC z9zAcLNSyP?Ntuvkak*g$*DN+xU#0#SXUB%tjtLwJ>die&x0o9km>F`97%KSBb>0ZH On8DN4&t;ucLK6VIH#egI diff --git a/src/main/resources/images/filechooser/delete.png b/src/main/resources/images/filechooser/delete.png index b50630dc3a4ef8664510d94376b84e3fe51a6acb..2fcae4638f6a1860267d4ecec64cf9a4bc8fbd29 100644 GIT binary patch delta 741 zcmV^FAvS^?9GoN$5gfWyu;^51bt{@THYJV?wPUJe zYb&@(hjxh|=upR^4uaN?fTGE(VxZ;)OG5;I?a8}5-)lna7U<;>&OP_sd;aHtK1lbk zYPG8~*RigST^$VFeQ?u1M(y{;e@Bsf<1v@7Ph^xFDKqq(iY0>58|$w<;XqF)DBG>) zYug*25RNAkVpcEf{3-*baru18uhsh@pmV>NN{buhNLurc3?qM=%K=?Q;*H08;~Gk^ z4n18KD99fsZigms1t)J}jEu5Bd8uI-MQz%5;rzf%rcteZxtl$^{7`u;f2O8S&t!H= zo64`OQ&SpSw~f~yj~?@SWwpRoklDgLv-CiqzZ)G_2E2uPo3a1ua5=vSCS*Ooz*h9Q zAfD*_tZa$r?dUkM@j}C>!L&q+z!r}jDZedi-B^EB&M!d8=S&s{Z8G2q2Nlh&7J+R& zTLS^Ud%{7FSqVQ^3z2lne_CK6ldS$^;=Ab=f$c$SoeaWFWu?G#&L~+swp`Ec>U{KPIA3((R0&UPV$!1^2FHnH&?EaZX4ECYqx@Ze|^%F?!9(*(y>45 zIDmKh_8H8BZ#>K;;2 zk|jRtaP(RRe>0`wJAlf5bp9UGli4S+@su(qMN)ezR~+#%qin;m`{+N+5%j~XzXA*Z Xp#DV(vymS(00000NkvXXu0mjfVSHFk delta 480 zcmV<60U!SU1^WXbiBL{Q4GJ0x0000DNk~Le0000v0000F2nGNE0A4$1HIX4Fe*v9I zL_t(|+U!+3PQySDbtF^c6Odd0;g*Wc4Z;mVM~689&IvFbU6LDc18*wYATAI%fm2h! zn`qXWjMnidG$4<(T6;ZjJa2v*1ikd~|K;TNa)@>D7knLbAoqYRRmU5w#nTo4VkoW*8ibzHa&n`*?n))1Zkpj6n>m+#2d^#;9 z0dD1~qAN#E+Qs=nTqs{a^a4w;NSJ=q!OBe@W@9wW1Nl;OHbtBf1b7fF|L6+N{% z7Pm(dgdRB>mNRO(KP`y9RS-O-!K4O_BU$)*q{-mj5Yd()LRHHhdQn^hQ$#Pr=|ykqox>7}9k2rvNW WdB4y^CPV%J0000>h_pQ-5(@4wA>PUUe?<3kUW1# zUdZ;t=Rj#w+UI&ZDsIKq9{#I?o)Admn$dHh&VAqFoP>ed(ZuxCdIY11xS>HP+JMR$;`F#A8<#9q&Lq298&rVel=yv>=fABXzkgpHxjgh2lN zzCqa%4k&U10Rkv3* z-&>U1#x>i*(|VL%sfPBqDaZ4wQ&xnBu|9uipXfUyN#|p*Ey9Baf2^&xw!3r-b0*Vf z5vdPG4#SZw<@JDjwf+(zG_d51>%g%MN0X?d6e~;&KxD#@21;rBaVYc0lo>Z3%-e^f z#VKyGmjS|I`Ii8H=5VyoQ|9%5XBV03#}J5yBmvX8y9daAb}E z=1PoQZ2q~KQ9TwMeDDIiTObCA4q~E?2Ss#kXt=&p#A$dZs4Ig=RS7ilnWDHa%Y~;^ zIPQ-|ssa>UPFbkv0BvJ4tzYdBsP*>s`65YT`1XhTJ3oZC+)V4fHw0?Fe_5TK@VTd2 z^D7Q)W1iB>L=Eo>U3&NfSe^ta@qK67_UbpJ)byOT{SfuLX3MygZR#>2$!#}$2VA)C z@h9OaB{=~u{rK}{T2f9!G&O2G);-+y^xnjKyS^co)nR(&pDw?;{TaqsQDCBM$7_iS z(E}4qR3n0D$VAqiH^|zbBREUW>$4wHzu`+H3 z)Ru!Nl4JPtE6*pJKiTt;o9q;!g@7`HV{P-y-G!PyRV{<(J0)x_ew9{<&iU-On`a=y`}#w#@h z@)skfg18Mfj##Q#syzg_QyfQK?8XmwetPZ7&m1dyB%GeUe`9qDvzfI?qT-GnBwtU8 zO6~c|s-)CIt9i>bVR|iJt`S--0d2M#gSsW7Gr3p??Yy9$z|dU7-I1wFs6No~6KD6*jGqHBjOHD%$+ zTE~c(Zx}Trf5~|HYy~skRQoYTjSMg`Cm27p0KL^X^Q2pjQ>A7|phlLe;Y;YO1@DHN zTF@s|AdDgIgjkAQWgMr42VseK6m>pfuF| zGJR*;dF*lGa!Q2utkYvx%GI|-6^LNmh>XN+1t14krRt?CBvAH?`T67%t<9-e!j(3_-Vb`Wlzks<%*O`8QUv}Nvqq+7KL!th` zfOjI3sQKgkBM{^fP%S_u>>#0)>hmq%y~SJ6*+fpa9Hx5kDrEdNJ7!;Q5sZcIN`*4Z zUIe^7f1-?<;f@&)*LYd)JS&YSHgmCG47oRa@v&#iXO~pZN9Gd19q;7gvbpBEN)ElS zbp&otfV6-FcoxRCZ2ArEG0Zp)T+AjleRhBrEm1Wx?8z)YDQB1QaWKe4t$o&hH2ihM z@&s;Dh~`-_rnlHed-y7y!6=MitMHARa85jiPQEixI#%9>uP6NRcNl^^X7p0PjD9vXwth#{d8T07*qo IM6N<$f?tr;Z2$lO diff --git a/src/main/resources/images/filechooser/dir_item.png b/src/main/resources/images/filechooser/dir_item.png index ca872f69d732f1d74e518454106ab46a5d29cf25..5ee1adb35447a6a653e751775d5dd93725482e3b 100644 GIT binary patch delta 156 zcmeywx{Fbs0rCYQiBL{Q4GJ0x0000DNk~Le0000S0000U2nGNE06)ckpOGOae*%Sg4*ZxIc6NUAd-L9# zCrSJ5e{ZPK$FWy~-gPdh2hy!`e=k}mbcsGbNW`lJWeB!DjxgOIJdm)TWry_-Fg5`e zz!Cp%bO=<348NI3-lUE+3QJ<*8myAno&DvJ)YG9;G zMA7wzrops~Rk}clWKn{MOD3yyHqlp^Ja)dc0P~V-1(y_w>fYWva+TQle{rkMp@yBO zU4w<&?HM!2iEE4$i`F7G8uP;&YwPmm+*IsgX<0i3(>Oq5g0NTJyZeXFfaos2LV#HK zMDBU?4h%DZC_ur23mx)1?yREH|7|*Q35F>^5O4AW`7aau(pKh!LtJG{P)K(ryHwYd zZs^j01m25uMjaG{j$Kz2fA3)$4KZvY3`Cu;yTODNV!1KzC8WJqR`PI7qiG;Y%HT#t4|U z+$x#YX0LW%T%Cg9XFwjXww0Gw(-(>_v)A-tNWe2YC2Q|7=3tK}e_DjRhbh}<8BnSB z9tL>A&HS1P4HWW$0Yg`NBuo{A{y3WW??%>WOPh=FULzOouoq#KrP)R%`25nkmY=eAT?O&_8{kG%wTYv!oB5vg~+4fL-00000 LNkvXXu0mjfhDubb diff --git a/src/main/resources/images/filechooser/down.png b/src/main/resources/images/filechooser/down.png index 77b311727e84fc80a5bbb368e326629a4984287a..a5b9bfdeefcb61d05615cd963f5247c8ac9f2af3 100644 GIT binary patch delta 721 zcmV;?0xtc*1nLDLiBL{Q4GJ0x0000DNk~Le0000p0000F2m$~A0LFV@tC1lme*%n2 zL_t(|+RT+dXj4%X#+#_6l1lmq8dIcVqLWPu>foPO93(DLA&X+5oh%xs4lP6%oiw0> zE=|Qr#0U;{&@3%Zc@&3Q=nI`BFVLZ}g<4xvQWU{oa@yzPy)M2l zpo`tt>0w&D>BZTl^%eKQ_VCH`;>|ASFxZg;cmutDIWMlVQP9oNR9#biK@6uQ{o1w; zPl#(rMu_OEhmU7oGnHqt@QZOW8EFEE;g5^6*xGUqZ)$ED`_0^RQk{}Bf2l7s>>JU< zmYCtmF=OAbt(>7%_7ky5Nlqic`q~+Qz8aXaKqf7e_%qLidQx> zxdk2iCJ*4dGI&5(r?evJ&ihlrzWx0F(*cn|b^QUW9 z`Y-%b))&NO=w2OJrB2p8atewG@3U<84Tj$P4Viz#$U%z$^NY0@?lQ1;GR%iBL{Q4GJ0x0000DNk~Le0000u0000F2nGNE0I~TD3y~owe*xo3 zL_t(|+U%CWPQpMCh6}_qeFJy{@TeEc6NpbB-aOXCyX9_Ty?GO!0N%jmqDRUTh)-ZS zd(av4*G#6u*qi2c6N5YnSZx5yd7_iJ>V|2o2Op0qFw7J`y5;x^|=29Q%wav zr6IaHo-a$_9%xvR%}50NVVKU?f7ko{^HSJd(-2bkF_lt}$!0|F&ggl}lk~d=`#0Fm zXzoyof5cVNx~Ab=~n=>VFw%EGH|vBZ236? zxKkBwi9~eOI8*x$ixg2e=1j;6aNI)5TA#)?vYY`lQ8^D)?NdJ#f%3Xne^!P7=?cGX z1?Y^uqpE;8$ck{^4Z+5uk}}xX2+BtVoB-9L=wWK9Ybr9tF!x_GSPJagkM>bI9_E4w-*>+iRKImNVg6XO3!d zM<0N;*~prmHlI5du#j9T-Ge-$Krnil%=vYPrz~Oc1{Sml6yAg_y4n+<&7{%f|6N0z zprmF~3X(())Pa1?AUbAC7u<%c{60(rk=)D+>oP+{iYLr1={sB(Ygv-8Jo zRYM6iBL{Q4GJ0x0000DNk~Le0000u0000F2nGNE0I~TD3y~owe+BhP zL_t(|+U!eN-`{0Fwe8;PIrs8-w)k@h zZ`fG&^@5_o$2FKbAU1V?cMvy<`ifIckt@4~Jsl7UM8Q$SHTup%aXEXk-g@#O!4<{G zm7PDMULI|V+b}8rZRK=v-%~FFv7nPZB)CMA^y&_~c)XjPV+BqW_wRlk z{%PRfHv)0nC8Kh8_{PKEfAdVpu(84_89ix6`*y&5F||d312{@VP+R%g5!n1Z$%iXp zUI!9(T{q~bLtdRCx#Hmh@76Y}Wb9O~>f&~oRcmdZ9~4CAP3kboMTS6k0{)i(sJ+IL z@7@beteN)C$yNRJf>|-x?h_%n>)>at;K-X<$g*XZ06^QE=jQHgfAxjun9r^lVCK`& zB`_?SA8G;sBDtzd`^}1hM_^u$AVa`@mmu1E7!W&H4nq{cDVUn<0VmH!26h})uWx-v zaKtn{D_2O1g>)F~ieRraX?It66$x%SPFL(b7G?1Cy)&0N=6@h;oQ> z4LT!wD82iGMk5Jb@2H$ueDJokg~$Q8Q?kD37nohfe@JBsA@00;RZcgZX@@j>iA6wL z)CV1J*i*??j&Xmw*sqUkb3(tuhEf`lNW;!?VDgnhe#9mtAtIoWW!z?6+C$^a6XbB;PnQ*1~b+0>aKj%AgOyx~VKw)r@KI}0-!y&IGa z07vgQf7P#(%DyLa3ws}huGUznkMLA*a?Lq0U(_$AE535VGuxeT{C>Ul#35I-0+1n$ z?ZB;;GcZhnj6rj_09U~l2F9oyl`;#i@jT0^T53D)N+v1bV6`}-jy`xyD~)XgfD5@4 zox3nGiY`kps1djeyX0j30jSK38ryVK)@sl3f8g+P7Wfop=>gzKK13P)5$>VG6db&| zT6BHeKFNr7)9&iZ=3)lU3M2v(YmNse*HYq!3IIdD`e~b~plcIwUN2XF|4=}#l+U15 z8~vGpJN!egAJ9_Cle>J1(XWRHy+`cOOskZwaIi59d*HasKa6)KZ30pJ0ERLtqy>POpMwoZzAg6GpQxyw$q?-6;uunKD=A@t zfWac}FLIm96&5^q-gxyOw*eow80&9Ni2{ZW*+dyNue}CY2NDb#T3NR8FZjW1f{bJijyN%zf9_3bKp1H2M-=e-v~oUY}5qPg;Mi_+7;=NR*Sk7HcMMgh+koisL;YujmZ41?qyqAZci*-?aYx`A^A{hWj5oe3?F&f6f8eaw-*D zkg4uowVy0-N+fFQ=y;3RY_^I{gu`L-#h0H=`reO!1k-y|=_YH{y)Krpz0N2+4}qGcg~#a>gueDOpK0> zH%V+CQ(3a+jRH2H`a&rcQfyjyW_5exF*7#xQ0_?+m zr7AaAn&DD^#p7{Vg!sTdx8ISN(D`6$!Sh>5VNqi&4unEuL~aBEe*uyR>)K&>pfq`; zgo4SHyMa|hZX7?(5CvyG3PU@tv zrJt}i?t!i55!JhAys}hUAp*n9Z)K({bkD79XXe(zw%J%jT^rz(8 z>L$w%bS<>%)NCT8wic{M__=~Q`JG&qdcB_H(kjeUBPNcrf5JNKN4SHnsc(CFuJ4M7 zWm(eQeTDq^%e7gjKXsQjSjDZHsQmsz{M_u|QZJ}{1Ahgo2~0FR$D^Uaw4o_}$Mbgj zCUzjS<>0n!qO=RQjQ-qoATE@Q9L#{Y?f>fTD_? zRJ-y}dn7vIx&hsr5s4zPN2#K2En;%!=FN@SX@eub284P#VfBF4tNV@*l->`zkdOW=t?O=xR;;Z-Fo#HkO36& z*0zFc0U{eEJ-8u2We_z$?U$e5e?vB3S5k?elZV)_2ReHF-8{I{f#Bei3AaD&1xCW# zANMiUFFUgfh!F00ey?Kl3G}s#?0Twi;6AWNr;yLtmf`vpX8#6buI3$YUTpMM5NaB_gl0a4l z%p1tbAj>u=b7ePBB+Dice;S1dx#sX)&YlX4KQ=V2A|R%`=03%~1u zj>ar=Z~-4}D_}Z74mMC`g%vx{wB(xs4126a3TY_^69D}KB!NlgfAcSL>Z~YZS70On zb0m-fbRV$X1ePkx;u}y(Ln&o=*$M~1oB)hKf+Z#a*GqEif}=$ozw6;8Jp}M`a0BfF zF*tdE1y02#5P~>#dRPf0D$ul`=;Gi8YD7+Z!1&R{=6dwn3Yc<$#U-4ZqO%#4Y3^6S zt6N}fK)f^<0D9Q-F0zRmiAA9a0<$vQ#Xto^prtU{LZ&$Y2rvLz%|dx*w%XbN0000< KMNUMnLSTX>fIL|M delta 507 zcmV1(pOMiBL{Q4GJ0x0000DNk~Le0000t0000F2nGNE06_9rhLIsBe*w5j zL_t(|+U!;_PQySDbWo_{A0$7(l+eVyAo&31pWbaDHH3K-@s<{J?$zc1;0$ z(rh%GE=CX&0m@1%JG*;(J2$%*d)`6*q1-%8N20U8TK}K}*oi!H(TQk!eO@g3*zox3 zY>b@M>)ms`cW?siQXZLQUWv{He`ISFn;7uMFU4NKHbuNAwgGH>Se!GKm^ETv=+WT zF-|t18$)pNj}u4-QtoBI4RcjfBz}9nNzgQ z91_UdM+XDSx{=%fL!Pz7uiy(Ua1HW}0It!4adbsOKQo@=VUP3c69^aMS~QEckq;)- zRsvLvyqPttc2{tV*3OyRQA%PV-Uebzi&f;S=(5l}dB?sXX~~X0!8Otng;9GGDmKy! z0XJS?`8^Aa-jEL+GgpwdQ9lLlvkRrsO9iv3fJ!N9X%$=(+qt9tdFI|olf8pOu^|BQ xY-aRs&ufPGthYaL`hwV2XmR*3{RQ$azyPNMyzAnuC{+Le002ovPDHLkV1i%K|f diff --git a/src/main/resources/images/filechooser/home_directory_over.png b/src/main/resources/images/filechooser/home_directory_over.png index 85c67c9317fd0f68748bdd78e9c0713db65af03a..58aea2c1d9764d5459bc16be78c9691fddb3a2b9 100644 GIT binary patch delta 701 zcmV;u0z&=W3)Tf8iBL{Q4GJ0x0000DNk~Le0000#0000I2m$~A0Aml4V38pwe*$<( zL_t(|+U%A;Xj4%X#@pu6RP#tM(8p7nlHoxi0S(;(1?$vIb*aUrP^e>v;^g4i!9~cB zu|vU4J2}P448ekf5g`TP6@o3aBoN!s)I=NcmtMWxyd>tuKWN0m;c@Tfo^!wRo$uac z_~DD|Lj!9gLxXJpI(om?97yzDe@&mCT3@=l5%S0WPV}C+m2fxci;-j~5Yt9Rqeh}q zKP;Wvi_zq`&ng_fZ0`^I>x~l`8@w=i`l&3Ygj_S{Nj0YF7K_T(oY4S7qSMf2nn^M`s+L zSSBstM98gZlAJ18B8qT&9uF-`@1|a@BXkmpGgJddznw*L_@g&>>SxWiZ0~IXYx?p6 z1E%>>8f1JKvuMB12EL)B&yVwKed``FBt1WG5hDRm0bN+8kdk~On_|^w%5m1EnVn*~ z-~5^bdQXB84|@QiViKyrf8}()@|rJP?kLI@h*cTn4z|eVA2VMaY&lN38_&q;ll?{=`9+ftdJIa1uNHt%T)=vJKUn^RMS6aL8-smKPf96Jti)007X2Yww zR*{sdwxgcr6XemwjTheS9%?;1+b-62tJGS`t2IuzjtpRw2M5Hn=T9L(pY1;QnzQC) zL`E^-fmgLhe@bU|-{{?Q?4UDKO-VsMeS5!Wh#JMfjp#d|Kdv8g|C}ck(^9*~KdPeN jVZ;Cb-~TcDBESF`6V4~wFF%jd00000NkvXXu0mjfkKFlFiBL{Q4GJ0x0000DNk~Le0000t0000F2nGNE06_9rhLIsBe+7R@ zL_t(|+T2!KY!y`$o#&nVgqC|t3t0L?qx|sW4?o5q6G_y_ zpCtT{sOS$Qg28BPG$fK}8o>}EBIVHsw6xOa?S0RkJ2U6F&fGnhX(`liZnE#p+2@>n z&f0tJy+@KB;h+4l$z#Wk%^Dv#e{kT@04IPISO1h`dg-}D@9W)A*(7`}$eghy8qe@&lr!6xN-2ifiU6tZ0!d(IfF2uO5MZ8d8EdfkTB2RqTN;ZJ(ObKR$YBoc6??QfwphTHuV-|Iuk#({?{RTIe=g4hOv`ti z+Apd0Y&Sc`}Hff6->q@bT^>Gjg9x3VU}e*hDV(0pKsRvYMY z28KExNM^-ttTbLZ?nb9RiQazp3qezvE2@_`TnXcU8DtDmjs$i!+w}vldBB`dCf5J* zSBf1=+lz-%<&`}LVYA6jU3*&_Zul~I6f?40@n{3cy+OSjAA1`1@A~8T%~ww0F$I~S zv|)ZO*CL0aF@ndQf6uP}@bQS5e)mE6j&6SEC?2;U^^hXW$W>39D?q(NT(t|5%%XuU z30$ztOOR4(0Kmj0uIt&BqGextk?Up$GxASDcQ!!R3fIfanO|$s9`?8xf5O>hBga*%-Mf?>DPXS72Zx**72upjqt8?;+=>BEd$W&0=J&vbhqrcv z+IcR!IkniBg(^Z7wE9PVK{&>;xoa-~uHw-VEkTxL$LF^U>gbuaUVUcOdBsZn6HFha z62IYjFE+l3g>nK!q`2yrU5Iu^m97nUV8$=+OwY9Te^QQ%JeERJ>j$}9WfY4}FU4t! zZ(Pr|4&uzqq4b&ysz80&f;K&}H|)CZ;(8~%MMRK0^L}o*x@bpBygbKnZWC8e4EJmfEBekQ zp?GUZ(ds}wwF;VZ6r1w))Y{)MyaX8_ph?IRe~?CqphX{1w-wS(`E{F|(L#Nwj=XPC z{@$We-bj+6eWDO0JaE-iXoAFOt+4kPRc%IR3g`AiL>gqYIpEp8mD_H3G^qBhIDO*y zL9I|PnXFaIYSj}!$LKvr`ce8+v*qKL9u;yf9Tq15x9r7t|mn#f61b2}&WS=L7<(Vh=u&iN@}0<>+yF?W7mf0(BIUTLz= zyc_;JZQwasiZ6vuj>)~ECxGm03Lp~Z=^GQedafdH$SqJni4veBSV9*j$sFhek$70-+_gZ@m|)2BZO@%C zJWwiRt*^O@l1FKPWX2N-f45#Vw$3ffz>!pVFDj6F1-7(Vo5fmdc$^J+ ziZg()jPr&n{xq;n48*bnuI5iCt z^OO;a?U=!t;S=5+R!mQeQH|%-PP3^TgP5w9l8nRF_W-I2NDA71l9Ig{7b| zRC-hR{p5RtqNulJ12~ZYAjd5jBH#)Da1tm2b|-)pxJ2ot%8sz9WZ-mmf6$hq>kJ|z zCvfZ<&Nzzx{WinMo&+nVGaTIo?fbZJOlyw*1UeJanPI(9b_TFhf+-Qk>|0Hy0|`~l zzTDuwvlU9E3osDnN~&ue@aWP837fVvsUX9d(s zO?IX2Pw>t+%}oOGp)YkzAQAzHPfV5XOu+YRsO4HvuV*f^p@$4f*YwoSz(O?_?%qRC v)Hi-4lbQM1aH=koiaQnm=4bm|fB^tBF|sNDoM}z~0000K6iWJQndn7AQjih#d$RG68Ct02Vm`m_Z;H9l&GA z2Ov(sVF(z&4Du(!MR)-dwE}xU4Y~ltfk5mC#EH=G^JgK^kOv?GimeWQfC&JT4#?p1 zq#6W@+4Vrp=;8}VHRuD5*quPCO+gAkZ!w|^0$q5Y)W8k^YAQf7Kmds6gIvl;iYd@M xxgIIt4PddzNKTpo8VC!g4?wSi3}OHXFaRrDEF$K|*Yf}X002ovPDHLkV1h<3Q~&?~ delta 503 zcmV;;De*v^f zL_t(|+G1cBYJd@!1Z#$+K9F(%VgVq20K^-9&p7^(Y=eOY@&l;_9IOlhT5?Pbf;@~2 z_g?&Cxc~D12cY-_py7=q8w@q{01z7>iz|vVGHA&%F&w@Am*K-#3^PE!Spc>4BQAsc zfi5lZF=b{jR$&HhAAe~^zZfPxNYI3tpw_CP}q zq`I>JH85c~>;0GiU|}XBZHbW6N9-r6T{;-{~2Bb-O0>}tOBUfUCTiw3Nu)?eF&LDzC;>kp`Zu5( zeBs^;$_$3;Ux04#0#ME(-_U;y&)@(508GOhF$@Ofp4CVHkZkC)cmEg`?+5EEz?G#z zCE5XC>gAKQ#&w*tG&_GZj tQ~(PCg5@!+{2<`q2S5WKVv_&}FaTMYqryz$Cbs|p002ovPDHLkV1lpH%Af!M diff --git a/src/main/resources/images/filechooser/opened_group_item.png b/src/main/resources/images/filechooser/opened_group_item.png old mode 100755 new mode 100644 index ab66d8682fc5f6be52ed0c2736c183130b2e77b7..932438f69928038cda4a6361a43630b87c30e86f GIT binary patch delta 334 zcmV-U0kQtq0qO!FiBL{Q4GJ0x0000DNk~Le0000G0000F2nGNE0PS;6FOeZ9e*p|h zL_t(|+N4v<4T3-rMZ#T5zz*>0MW{eJ5Ic}q08)TaD?lp{JHU%)O4t(C4t!(YVY4h~ z;v_H2&d$8~;(33{#HBnuml2Kt5P zN{I$IF0_+UMB+qZMi!FPxrtVdC7sOXBsE+#_4D5b gvV>del(zr_04R-M{|u&kd;kCd07*qoM6N<$f{)IM@c;k- delta 186 zcmaFGbe&PLGr-TCmrII^fq{Y7)59eQNQ(inFb5luoKpF>W1^yZJwv6Zi(^Q|t)v7A z*2DZ8(jq}LfJ>q*H8$p#!M3C1#7(;EDhg#{NjC0Q7@H8F6@?c~pB zJABjP$^r&ArisG*OT-?0I{9AmxcH+>r+dyns8634lVUcpmLY|0LXw7KbD@Oag@B;T lr8XuRZU+n485r3Zu5VOh6Oh;x-ve|GgQu&X%Q~loCIEO{KMDW< diff --git a/src/main/resources/images/filechooser/remote_file_system.png b/src/main/resources/images/filechooser/remote_file_system.png old mode 100755 new mode 100644 index bd8e2f594fcf5424ee41d43131da10bfbfa7cc7a..97e19805dc3d06c7c01cb979d5d93d50a2fef6f1 GIT binary patch delta 1002 zcmV=!9ZX8@xA}&`q&jo&koSGY#bodE^t8qQs~1Az5dDU5nde zg9}gSgayXPTMGjWe8tDtb3z{a<{lDmSU^ltc;3v~fHr7Q{XW>0TveubE1E5Btnx_T zn3Aphr+?0GId;`BA}A#5aw>H!D7c zmDQ%&t=&4Aw3&I|NN6O=FUy_l4$l&z6Uh&DJoDlo$tUyp(EIVB#OOGQez3Mf0&V%& zMH~^qp=$f~vU-do^WUahdn9yVlyo(<7FD+tRpVUpx*6lGjQq{LovL?j#?+jD24lqw zOONZk)_?JqUD`|Q0IW83A3<%02MH=i7;@O50kL-Hu<|2CnT9eF0+_VOn=@-46cXC~ z++sqZV;bovR$0`wWm&y8OVX-xiwVwjr-?othGJ(f@XQa|WC%QCXFV&+YVC)3WEV-D z+ElNToqe0rMV_7hACF0hpd9QLGG=THNOn9k(=L`CHJeAjFe@w)JwzjYLQV zjGC)`^hNF>jI_u?%0OjEw|##V!AOd{FBZ<2Q`D+?usimdh;JawV}QxkQa zz%D{mT;h!?uEpF_7p2(6XWg-&^`{l2WV0v-%ppnTIlaLgoDr_pNU<^>=MvOH{r_{v zBWn(O($*^&=p5CwUXlZU@iGkMAe`G6#?yNh&e(LfnVK`wXp)kpMI}{O8@FzHL&0t4 zGLcWzG4q54uIkWg+v1_pPOid4d5FZUyAzRzD2L?0I_#)Lt8(pfB%RElUCQpK*-;*C z73Qrg32HiX(OAoX2|NN7U8y3jmrztJ;?(LyMCkcj8C!WntPqJ+TZMlX-7&x@AOTog zf_?YDixLcfBxrBf^r*t?35{pt4^sZV(1s2P*wD|33h`Ye(zyHNk~x%3thzmXx&0Af Y0R7+!v?%R-@c;k-07*qoM6N<$f)Y9I;Q#;t delta 996 zcmVM2Q5b(StFe&fru{c` z(?}x1H3>3}9Vt8oTBqvbc8gBC(5=APL$`vBAi6c%HK-9f2F|vqhah()tRQ1n38kQ2 zK}ph`>3iEZ%eT*&Rp_RE@R-@}?fd@ze%~9$cBCv)watg);V}7GxO*X$-FC&e@uGKs zxa)*30LjNlVd~)#+73l2OV6X8=e4)H?d!?jNe{HNz#7`}$lyt)J{A*oewF}aaFxc9 zF!8ylw;Ys|{1Rg`3zoT%w}Y2Ee9F^n>C~1i2GStIsQ@%sMBTvhimgt5vqJNEn|+wE zn7@{>l~u-09g{Ls_s2V(^MIxfcns2i83W5$eKwKB{b3jXd_M(y9BDz+B|x_*o&jB) z_-cVigxJwwKj)&a@P$5t;)Y|phUoY_P{lu*KkU%yW|{4(u?knt)duE&+3an$$e=hO zP8ld%4*xpnb{+zZfU~6A9_mtq2Y4;XhK6&!Jk3=7{qs3XfcA=rLv@_i;==I;C7k4iYSgf6KveVckWBU_!ZE{uyCsA4|J5CanX1= zqc7jBz@;ZWlK}k=N7vo%OPp_)jiv^P^S?AR8uu{sLI1mW>tR{LxgbgioQ?_|tl%!c zt#A#ypehLZ0i>-i%!#0vO+xj}h)QA@U000uCRv{{tDX9b zQ=?Q0>i8jvb+-DPjs-owHv-t*0KzljlCT3)6N0Iy0~g<;_|ygDQXl^#CW#@lt{8j} zo;)gR)3X-a?Uzh?viZQj-*x^HLJ}J|GDsnUE>wvEMEh_hNjEbtGsFWU0cryzVn<7anR~w-~S)=gh)B?K(DGD!y?otREDJ5ojd3NQe-oulHE SnS4$F00001l@Q0!uh9SVUuI!Gsnjt*HW9c(8Dry`oAo#JE$se@o$6berelo}#f z8lognp}*uyt~XChu^pOvc|6{|_uO;Ncg}ateRZ!tJ@8zMQSZ4fqtP|@Hnv1MMtC}Z zd||B|ojBV^NuI)wTrDGM7=95llc2xv*`0Uc_QA&brj4)f>pUL6x6{|u9=dt|-mTGe zZYNtv{|D>>z>~-uKICpTpYHbeX^U*^XSdizrqjw+#`wKYzw6{nH=i3?wANS1Q+~#3oAQ)4BybM!T z_vQd>jFypXPn{!SZ!?`xuo3cGpwW&}jA0u{(atf0gux1~@Dc4A!`G#fQU)@1mW(jY ztvK;w?1C|-TIVdu`S|6ProelCcYY_6ls4g!6{XG?b=L`g<0!%4JPA>LOofEo244=O zcoR`2-Cvzt4e;lG*W7RpJsfv`@rpRw(ZMK=_6A0-TqmL(Sh3OJtD+_ep=>A*)|a=Z zs2|B2CyMnGj1dKnf2ahNq2{4+klix5BJ;!;4M`^+src%*6q>lSUKTG?3wF3?*N4hT z@+Cr}?(N1S;z6!)ONBucAqiE^E(t-Bt^Aog_TV9kb~OY0BD;!64igi9{fkGZ&fhe2 zRo5l#G9IW-FlOZ7lGY`oW@3Acy9g(D<3!q(&r1iY=qsxhm(;8vn7snESp1XwM8{NH zRUh54q0r<+bTL}uRpb{2z(yU@bA()tm_+GuGq%)Z?Um1m39RU{LPL=hZG)yCTpX%2 z^Hkj@=t7amXWxl9AwOh)fc51H<0a`zj(Rk07j5PmRTs{b$XQhkmE)YHaRFwuXGTzI z=;qe4t!Rq(Cf244*O`A|6yd9~FO9CK0}0}#s)7e8mj6ew{I+0000907*qoM6N<$f`w?e AssI20 delta 981 zcmV;`11kK>2Z9KY7YYyv1^@s6P0+$Bks&C5q)9|URCwC#S5HV3Q5b(SyM_nLN&AbT zn+6gRu1Sz-IZ}8E+B#L2##?mSg>D7T9=a851YMi$8q^3K17}+_D9Bj}E6Ny?Pzu@= zl%(95-dnymeEXc)gl_5w!_0nf-uL(S``#=e+v1B0x_K&B*mA|V@_1l> zwD(9vp~k%OaHz8M|Icxyvx~vsSvcZ(d*i#M+QqW_pY32s3#eU45l&| z5?*~Mn{E3fwYW^k?4s)|7QNWH?uh#EQa-mSivcvS85JlEmOyu5W!2NCzPRy)qDS7& zx}?62kkvng96co2)3+yk(Ee_EOW+xQLobU{ims0a_-E@mKw1oR8RXyJLv?A4PI}Xj z9fPjV1?a1MfsdHDz->p7j?DvIe9`&t#k*Q%vLou2&Y!4L7JhoHA+kbnw0){rqMF5Z*o=mo@9*`vxXSJZi4>PT0#%+946|gCke~)ZV7mqc&AUZ}09jGT1eD>^ z%|Lbx~V&y=;&3dQ@1r+i-U)Z-m8IoKqV-VRwW(&rE< z0rZs+$TCRRnl&maiYVNkLv4(Iz%%ouLi{Q}0jW+G{ZSpJXIeDwXY}!#tDJq%KLzlt zNMC0pbFx#mTAC!r|H{m0-btK0!!OhA2V?{0f+&nW<3b0kxJ%bPxJCm|6=SmsXln{{ zA{J&7QGFw#qZr256{E97Hm4mo{$yg!zVY;QCCKd6d@7%s7;0&jDnT88-Y=1!_6YA- zEaZDbf$k~*&rCqV9HtHoZhzpya}w^RfL!e3f5bsC*z0J*1|j{%Fla%vGhGn}?`+*G zIj=tv(okPP2up6Lh9e6gZbJeL+V|0V64L~IDQ z1r1m;EHUt_A#`vQGW2NZnEz)nPz-t?GI&8?LbnNj)Ofd+Y9y~f^G-vTb;NN!gu4#j z2c6C!E*lvB?D(g4EmRa%2s5A%x$$O)J_00000NkvXXu0mjf Du-4S9 diff --git a/src/main/resources/images/filechooser/selected_local_file_system.png b/src/main/resources/images/filechooser/selected_local_file_system.png old mode 100755 new mode 100644 index a0b044ef937f08769b360f341268e89808099c1b..3091bf5133bcafcdacfe52688ee710703eb927c2 GIT binary patch delta 704 zcmV;x0zdt^1la{4iBL{Q4GJ0x0000DNk~Le0000#0000I2m$~A0Aml4V38pwe*$|+ zL_t(|+U%A;Xc|!%z!PIDiNR2*l9pJ69theL$z}=k&l0D034sO*fp*N`n4x3Vf78^)4f#04d*AoI_xt`m9e?re z?%2qRV{DY=ywiJJvm;6Ga!x-Ce{DXwy&dpG|4;gfrKiDu=qur5U?%ExT#oqT^>(>> zs;)$mKDToG^}Vq^*ta_k-MZpk3|)PI6I7?)Yj#v3Q_@vG&x7be1k^iuLwgtjEL>ae z{QQ=y?&|Cpt}pxDO0j;Z4Sw}j3Y1#wlWSu7PGAk6A8T3Re04rGb;%2~e^9YlYUG9L z@q7y6qt9>pdDe>496g-mc-{JvvSGib#Cg&#zdm{{UiXS=(Se2f;r-zHeksEvRdTc< zzWCeYt=QaJH{U-RL-#%VImU=StOySI3d&v~9rnio^-U=fU8t%}RaRK7Wz{cP<;vpF zQ_GQ-37+#rv9SyfN;*xuf5PjGYnF%kG2KFChy*hlj7b}gp7Ypa>}j2lHVFRZ7NXZp z*QpHC8S705IkIz8JG8mk$tCg?3wjcRncADb0fGUQ)WNYx--BgJMz<9HOebSX7g^Ff z2diJ@5@KF0GvUz`q}6F0lrsEQkV}YZGa>;_Ou~LS^C+~*cUV!ef6gbl#Z^e#CmrhQfaEdapBwxt`mbO#ZEpUt`UJKGQvt1x|n8r zUemN7a%FX+GJ0-q*`>EBOp9?~z?bMzXZp-M2q^Fxbpd&uB_$n7fOj_>BM$Tfj|dvNS?B z)A#M4i6DV_qA9L9%H2Li^G)%Of3aNZGn`-26tE29d2Ps+Na|ufIy)BkD|sLHye8d4 zrQ{SKf(C~~h-R#ew3uDA3#B|$@(k@e z{GP6)5c6N8grs*AinVB|$n6i)Fzii*V7{Pt_LVr$3 zVrzOgPWynN_x$T+JpNmHX4mwvl4(cQW3>i!yNol0Y{8Us8z`*?Y<7>z6#Xxc?*gi;vK@eP7=Bgf`x3C5{ z3$_dgN-5`FEeDcckUR>E4Y;I0Pd2cQTrhEVeB)nh=90uvNGcnRbOG~lh+#=|NGO#(l@BF6`ijXoTP@MHos z9hiC%DOOSm*-g;$3|Nj}W&?Yf0#yNLnv|dPF0bhZ00ImE4dU93FMpoA00000NkvXX Hu0mjf+~Czq delta 410 zcmV;L0cHM#1kD4G83+ad003jD22+tCD1UEBL_t(|+U%4)PQySDg&m93_6_h2k`|hn z8-x?!&Xh*t0HLQyI$Xuvz&Qa*$sk! z`wRB?Iy&#TF8Xbjv$8CMJkQm4B?ngbm&<1l(2cl6+5?aGZ!dP@VsytJPpgG(zkjS7 ziEA9;Q`xsvAE7Z(;b0d~WjSa-K;OYVBD8?gt)=m;UKCn3{s40U!7})@R?0;rN^GQE zsV3cmer6(LZ$794up>aM%mhAxdQOx1h+;MZG&`s%)Kh>(sR5Rf5?bb(f~(6hgbEAk zH;AG3+!?8Dl~VKrL&VEW=)F=X@PEva8V!`nx($tu3GkDCO8Y6*&yFv>z-~w|2MRa@i&j1wDD$I;Mb6dKOJqczi ztw3h#jCZN_+`^>O>#3AF#ujHY#-3F42Qv@#{YN}tXW1?J=fphjygLG907)PlVy-No0R*8WG_4810DvgQmtGcMN&!X> z&{0_P0MIqSGz^R(pfxH&Hozo}9DiYtVIk?RQUOd*SOXkO`h=tuh$+Y(g@iCL{^2B0 z1UbSW02sCW>=I~#g!6-?49GrUqW=gs8sa&ili{ugN&!UJV(R_Fm8~OK2!}e&+Bh@fL?@)fU*{nn;0SGC$JpB%qj-JbPr65 nG$}uE1vk|J69at#K!5=NP%*KWI9z7?00000NkvXXu0mjfE@i%p delta 1115 zcmV-h1f=`#1BeNb83+ad003jD22+tCCw~MgNklQ zbfBfR7&U4zQllZ^L5UE>=!+qsSoH-HeelJY_@usgdC?N1#)LkAsDW0EVq!pw0ii_8 zrBK=qz0qMhozCsFXU@fMpII|=W>Snlz>|El)?Rz|3p`@vHsps!8UY={VF9y!h-SO`3q^-k3JzbL)Os=^uGwfz1=x zCjl}^W-Acv8sh9c5BZ8Uq>R!!iJS#aD14D^J@Q@P%2S6iP6Ij2nQT+?5i=bJ_wbg~ z2K@sd3uunLv-c*BTTygs*ykI6{C``hH-RPhskrzSPAvSgTn406c(-?A^G{Ic1+qc% zf~{mf(!$60VZ0uwXEy>Nb~`ECet0h@8vFTz{|<~JK#+0Bt?z%ZM5q{ha|eDm0(CXf z;04{E=M2vvult7irN9_xiHpt*q&y#G`!)fJ;7X&DN+UG+rq(>L2Wktz4u4ZK?ccm; zOG}?Rj)r<0#GPz0JJgbMFF1DH7iZE`Q};uJfe@Q_*C5h96uh)^Z(w-G+sf=chd9Ah znO#ms&q~>bJe7_uRLZPUdq(~EYg+TE-B6>5#H*a7e^$P(CHf(J#pogug4xCFp2UVT z#XRVtLMYZs7gC6rK>j)~Wq$-_rWTvdJmaKjv2I$OdEgJI(?F7?Tq;vCya#PhZgYj$ z*ef}8{%%WM=qj_dL|slrMrm_1ANe)H@ph*}YHq{T!pf0JOHDUJJ|r)!`5C3K36Ya| zTi|)qlktsi{R^&nE&Tf~)K-+GO`UxBC~V`vD3LM*>JBR~y#0WfU4Q+qyZ9_`s)~>| z_GrJ9X}X9}+_r7a^d`5Ji+E%2>x_`&s-&Y3s||nrebi|`?0u$^{t&ji@{wa(LFnaT zblZ-J+Nv1T5sDN`p;d|$YvY`6Y|GcUoga1eMpbJR3H2fGe`54E5OX?DFrF;dnUX=R zWo)4!+n)UGwyZT6zJK^SCEod^CFgs2OZH=4Gu33&^d&xa(x%m4Rc7xUqAs0vcPh^c z(be`|pfSJZx0lSi>9;C`x{gTM#sQ4Z16P1KEqo$mgeGn<7iH$YqnL`bVl41`Xz+XI(Ngy2*9k1EhcLsVxhO)1s{z$HrcI1w`Fz#LufG+k(b h^mD*4?Wg}EzyLQV%?AiH8xH^g002ovPDHLkV1oa=GwJ{U diff --git a/src/main/resources/images/filechooser/sort_descending.png b/src/main/resources/images/filechooser/sort_descending.png index b8069d1b33e3330fa13a2434c78fc9bd3bc482b9..7766f94da814e19f90f3ca2e8c6a61546efca799 100644 GIT binary patch delta 495 zcmVQP_pz$5kW3NgP@=MZK+BB8A|<(X(WJNDuln`(EA{?cL66R3Ee`Q(bsve-X z-~k1RR0x6x=EomjJ9aMyl1nk{LytdToB?AF$T;_EIXHw-0%ZD;^*{@d(+F~;LgE!j z$_t7^$Rl78aKtUOfi%1TZ1MgAOx406hc@YPj!#`2i>bjA>%? zAJDJBNQEa8py|L=hwz-FMG~@EAT>X}LLv{UUE2yd3jqNmr2GVyBhSBHMzhRbrT~(B ls0bM8TwXIV&=&v%7yz&_%-!wXgroof002ovPDHLkV1gvt-tYhb delta 397 zcmV;80doF}1gZleiBL{Q4GJ0x0000DNk~Le0000c0000F2nGNE0EnKwP>~@he@sb4 zK~#9!>{T&x!axi>7*d-b#6N&GH24Q0FTf=&GkJjNGZWL%#d$$^g55xif4~z+od$`K zW|oWPGgS(r8O`}lI%#jEJ3IF;_abk*>EmDI?FB%6&@dxSUME%E`<49{|N0hn$$^e7B*0XUU^}#&duDvwi~%SgfXSS&5D73o%$8Vq zG5kgXnsqG8WAd*}#tcxd19L2e_#KTHDr#efw@s||Jy7pnKxQfH0*+XChTtik{#$zx zR4-Bjz{(&npcPBE^1u%LAd;|vMy|k&{g;Zb=3%yS%?-fK=D+GE8b1T2W5E(;o-F|_ z;7})zu`AXFAy6s|j!Ni&8D(n@rHOezt(ngS*)(~fPXw)f2`JWe6JxD6&tNXT@$JO^ ra!}HXO>XwD8yR){8$|A2}C3ZQBre_C~|0L@Au7jC*Jw~D`d3ovT2h6GUi&O04Ok|CJ( zF`@YY!ua|33!Z2L1{ct>131zV&=8;kUyH0Y(Wwy99C?L5@^Nyh4HpP69=cgB@pnu#^GW2Taf(!P~@ge*_Cj zL_t(|+U!+HY+Gdze!G`vV%)?@T0$GLNogvPHYx|I1_=p?Llc2|qaZ{NDL`)JEX& zvLJcSgXpB4y7`IOHaCX-BanEQ0nv$+1XrCA?btkk+!7ouU$dna9;Ts-*$_iPN8o$B zo@?298p8-AO-z!G(wwR3kHErn|Ag-AR>$m{u>6{~d;DAMWNVQj(piibAcLM(>__S+ z14_!RE0OHU6}I4oi8T7If1RR$!PJhgmD7UkwAsnk)9OJt>Hh_Bq`N>VLHfd=>g0R6 z*)jWu)i(DOR-IgT#DWdkg)EhOzIzsWQPI%~v9+_;IDma}#Pvh|WG_+(?90{ECIVQc zxs%)=#!@wQm4>_zU3m+JFVuHD*;4b}OZK6gLt${3y$a^8vtz0qf5Yhi^0cp3&IEbN zp8QI3;>(z>7(L$%3$k@QxNaslV(VwuQMaRaURL{tsFe=9_+Gag-z6WdTq;GS;gyK~ za2QlN(d?;aPJMGN#m1Y~9ez<$7VOKEJj_ zp#o5tA)iFMJ|(*l6`n$hb<@=4izFcR)9s+C&q)pC6;3?#!Z%3_9O z?$RAjeCMcAPVay*((y!5?87*~=N`XQl06P?i`xr*A=+7&UiBuQ(f%<$3+^Zl@#Xr~ z`SU=)3^I-m?=yH8Ly67+YM%jA81xz>&kjW1^Z7i-DQvmCN9zS=w002ovPDHLkV1k!xARPbz diff --git a/src/main/resources/images/filechooser/unknown_file_type.png b/src/main/resources/images/filechooser/unknown_file_type.png old mode 100755 new mode 100644 index c079d1d9e1691b350600b40b98d55a8109d073c1..dfa3b2780266c07f0f6ad146da236ead890eede6 GIT binary patch delta 147 zcmaFPw2@Jfw6bjFU+{xzryfHl x+tN$zQz{Y}4J7>)p0K(nePX!E;LyOxaQ25_-K#}!d4cvYc)I$ztaD0e0s#EeE@c1! delta 331 zcmV-R0krG1iXn2IN&o7D|r9qKf}Ej|G+dMz(PpD**kw3)*Sl_ z=f^m(Flfu+b_YQhDoHSb4FO>ge>i&mFJAQo4HV>I1iOfn4PgOA271gO4c-(4~x&8z?2j$l$Ec45kSIq6`E@1SqyS*chl|;InuC z!CwCHi-GcV2m*P&tYE`HF-{c&K@q{pMqEBb_wog32|@}ufYU%=G4v5yAr3N-P<$28 dw15Q&FaSD=N;1kk;@kiL002ovPDHLkV1h%$fB*mh diff --git a/src/main/resources/images/filechooser/up_directory.png b/src/main/resources/images/filechooser/up_directory.png index d079a8feae97a743cc083dcc9089e8849999e7f6..470bde5e39281eb577808dba0bd55ba2b217dd26 100644 GIT binary patch delta 418 zcmV;T0bTyo0=@$wiBL{Q4GJ0x0000DNk~Le0000V0000F2m$~A0FxSn^^qYbe*s`g zL_t(|+G70p=@SFZ01JdV@qG5%ANR4Uu#ij<=1`)@bfD2jVv&;Ex@gi{?^pf$`;}6+ z69Ybe|MKYlOI;~tG%k>F`T0GFpsu76KPL}d3lpX(;841UDGoHEV)G14E|3wmu%UhT zVj$A(h^yE%9jDt5J)Lmt{oY$2fA)GSwhGu!>{GF#aexa_)zyc_rT3`YYUjSkOklC;c=*^Q;QoMffebM&sJ~x*yYutU7q}KCOjCfNB#JGRfJQhfiq)HQ_4N*jUKFHyhQNqk4%Vz*&Xo-0MNw{A0koocV%aczRUXhpt zfu05iI>g)q52oM@cVKuyLJ*=F9#(KSA}66Au;c*`cQn9+%Q==Z2|xriXYS+A7Z4Gk zyMQJdNrpfjE0b{d-4Tk?J22&Zf|(8k8*kQlC|3Z}95CvD2?K~Afr%?586o8iFi*;W vqXil4ywd^EPibDo8fugSCI(spfB*vk4`7j}aGDJK00000NkvXXu0mjfg{h?t delta 929 zcmV;S177^C1GxtwiBL{Q4GJ0x0000DNk~Le0000Z0000F2nGNE0B*N-6pGnl=i4a~wAfQ!3q8DROg9l?`G+s3(py6aRUhwSA#Keoy zU`#w{G`QbA4LH9Zd;qcqfC?}yLKcy@ z|E`uj6stWh2fJUxGyyU-yBV!JX%a21yF>T#44GVvq`ViMUk=@dRh0aJe~4|h{qbo^ zgf0xn@+Gx?_zX-N0d8uuAOv=6BB*68Fw_E^mW-%n9UyPY>BMT@^O_?Jaq$=>(aV~5 zst3f?q?o&bNS`UDuCsd?@6351bPA?*02f1udRNFLgKqQTzHMD5m2YBe-;v92%Q5$eJr8h3xO9=zAiI)8^0#EJ}q4ysK~7hfqL7` zD)8~G_j@^_=lNfVZ=TZK^NlQ_WX(IJWNz0TSk3^HB9+2#RH=|l13Bfi9FdkUd!zfKUK&l8Cg2+!-f6GwP8-itqBz@oQ zp-y_wJYZ2|Ld3HdNMZjF5P1vJ&n2O*=cbeh(!5!7t4Kps4e$V#vWB2CXhQ1Fa0|EC zCad*B`_^;Dt{OsGx7JWSFQ{?A4?qO)4G_)?6T}vNO-_n*ytGIBBOn_C1gJsB^qxtj z;Z0ii%v}H-9s7!Pe?G%&@-0(R&St!`2O#fSIWgUky)@;Xw#DiuQ&nRQ##R{c3Gb(m ziP4rJ=D87wh${_O?cq+UL>t`%09?u?DWD2&0wEK6h96(1q5Ctg@gr9fEw7pkd$h+Q zLe$c6N3i<|y$eEH!PxqV_tTt9U_&%{rkVt`Zp81H+0A2FcSf+uDQJ+&Wk6*{j%*Q? zD*Bo^)X}lJ+5pXfa`YPQtjjdiI96e=N(06LlXPx1P}VaB5D75NNs|>o3CkehDxD=`UfcsduLK00000NkvXXu0mjf DG^wr~ From 3c8c0c7ac5a69dcb3bd91147c8eaa98b164c7b24 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 6 Sep 2013 18:52:38 +0100 Subject: [PATCH 011/111] More image changes. --- .../isacreator/filechooser/FileChooserUI.java | 2 +- .../resources/images/filechooser/connect.png | Bin 515 -> 880 bytes .../images/filechooser/generic_file.png | Bin 177 -> 200 bytes .../images/filechooser/image_file_icon.png | Bin 1297 -> 405 bytes .../previous_locations_title_image.png | Bin 1993 -> 1725 bytes .../images/filechooser/text_file.png | Bin 1535 -> 339 bytes .../images/filechooser/view_history.png | Bin 553 -> 992 bytes 7 files changed, 1 insertion(+), 1 deletion(-) mode change 100755 => 100644 src/main/resources/images/filechooser/connect.png mode change 100755 => 100644 src/main/resources/images/filechooser/view_history.png diff --git a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java index 9181ecbd..414233ea 100755 --- a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java +++ b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java @@ -635,7 +635,7 @@ private JPanel createNavTree() { treeContainer.setBackground(UIHelper.BG_COLOR); treeContainer.setBorder(new TitledBorder( UIHelper.GREEN_ROUNDED_BORDER, - "navigation", TitledBorder.DEFAULT_JUSTIFICATION, + "", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, UIHelper.VER_12_BOLD, UIHelper.DARK_GREEN_COLOR)); diff --git a/src/main/resources/images/filechooser/connect.png b/src/main/resources/images/filechooser/connect.png old mode 100755 new mode 100644 index d1e960da4c0f4f6e6f0aaddd0ee52efab8d8b688..a33aa69b4e5cdf2794e6978d2b7515819d3f258c GIT binary patch delta 856 zcmV-e1E>6h1n>qSiBL{Q4GJ0x0000DNk~Le0000?0000H2m$~A0QlwIRgoble*+Rp zL_t(|+T@o#OjA)5$6G|A!HS>(t4SM+PP8>qhX#v_DNC^l4n}K;i$==ifTrleq7r4m z1#nan1_w%zK}+xy$3@X;*0AerTY>f7Rl5wTM$- z8NB{5AD@Z4zg?*j`A&;HI5pu9^dX#q4YotI4Hi4EsLYE$82OWvWjo5IXKM* z2hm%#D?k7j2I+m$iDlkXjlV6Jn!s;SoeqSUi0)NQsf7FSO<;>{{PvE&05ke?k`~aS-Zol{mxS1C*ao^e(=gPfiv_2qX-W2v-%<)uXug z)$=xIv$TLcxDfziX|AkcTi@DJQa-+xkncU|lJX$|?=Ly2#5uhVX-SSw(DFgn6kR<8nj{7X-g6kQ0XQd4Qi!6W%p%c9+8WLib<$Aw zPziC7%4r0rwjSo=e=7<3gYQDjOg>*zX_UCev6eVtzdj_v`QedeB zsut3Bp`H9uwh(W2WQuZ{6O4+_>lL>eRV{>rK(CN5T8Ju;NWNnck3uP2o8c%-5lT2 z#VKGZ9n)11GB{Kn8h;h4hWIYrE3YxALl2H5+}-ECmwS(p85sR7=r|jOc$^CNg!|oY zr~hxrNtdl-F>5!!`1p;u7zzcRg-<(GTJ535# z9O?_W{I*dASWAGo3bDPjD8wXbeEUeZ3T0{!?_>V@5ChyoZ(y#i%j^YXf4TU0n*=CB5ojJbUSBItw@e0000%TJShSrZ37O>*0#l#bRJa!n%(q8G0S|Fm|vm_{0C@ zL!!OF`}QQ(Dz;3;4Yr#b@D*Jxu@r delta 146 zcmX@XxRFt@Gr-TCmrII^fq{Y7)59eQNDBZlKL;C-d|T|VKT%O5BiPf$F{I*FQo;fO zgGJn5asi85+ldkwMfehu(~IGVz|oS(7?!W_J?5It3_{lfz~j1y85}Sb4q9e0OGDLMF0Q* diff --git a/src/main/resources/images/filechooser/image_file_icon.png b/src/main/resources/images/filechooser/image_file_icon.png index e39a29e15b2a58d4c5dfb8d97a963eefe13d6913..f91e5970de482b0824466bd0143e4bc1c4409035 100644 GIT binary patch delta 342 zcmV-c0jd6x3Y7zpNPhu0NklF09#`J=-4*q`4jq0SJ;}MdMzKSV$9i&k=!IWH zc6LZu!VghP7o>)3kqOCUpGX>lD5rU3h?73_G27dmup*T$HZHD3Yy3Z< oRKq*}!E}IU_s6P3E4&350Gv2ihuNiPW&i*H07*qoM6N<$g2(}v;{X5v delta 1241 zcmV;~1Sb2H1Ca`lNPh&gNkl@_+jx8zp5W}Q6tmohb3ml8C;ern~`M(aF0^r9#l3ME4Q@J zQc7ET+uN7tbf?(IEp5Sn@(<^ndwPH8|2p>%0d^suP7Nf71bN?H=wdmV?|k*0uq|OQX5%XdBWawKc@SP4H#cTi}_>zW~E(!SR_z^v4x1sPO2 z_5E2u1iSe~wb5Gl!lnDYMja=u$Z}b?iU!@)FG9Z@gS&N!H96@`+p{X~9P-&n1sqCH zSW-&pKOkNdIO_VoMOI}>a~TQ#7}9_<{c4~se-i-l_W+bG0YH5K=De+Gdr=6MC*?;{ ztR!+-D1VGmw3ROz-Zqp0t(2#N=nuhh^Jv-<3IQYS9)d$DpOtAoE@54_`G6Krm^UlE zTnyOQ+N||;Rhyofk{K{il*_`n+GYM#$gx>3IC*yyoV>G{03_wIEdXA-vdVjqO^pGp zE~^g1p*S;nh?Fc9-oIGhW-fbuwvd|3C%Ri>_J4y1#}1{`WEj& ztrW5Ks3v6{&%-|y1}3sKGuLBP9f39V*_-Fq8vBL|fwY&7gL?5y)-xCP7+BCYLAT0U zw0}K55Bl1mIA#KoTSE%cdbZTLIP6z7Bo@($6;yhO<^m-}3HK}8tzdpk(GRDy*wP@u z^QAzCsGPjiV^Z`2t%kP13){8pSU#L6o39)2q5IX23>Wb1i9!vOIp;sCi%#zehD53k z>wPw=9LG__2TZtC)gCzSz9;tXHCtuc5PxvYN}t9+G7Gq!tsMcoXF+^A5+e3oBH=B8 z1}6{LUh>oW{3^>VzHJ%4zOC%^buQCL#>R;M$Vi1P_ z=qrZ%8w8FL1@xrU+AT@Fmm#l^Zr*Z`&DtLSJzT4CoKgtk6i5&&hu347t-q*%96&D)Ry2ejKy~5Y#PF%Z z7!bx9NoHfNR==Pk!>$!!72-og@ynxy{v(6rUjYUHB>cgmb)MNV_7_RN2Pw#}LR z4w*`3tiH1r<8J$q$u=*EMXrVWi!8W#$$x0;j=LSu-JI!~e$X>Mmrd01e|`_0&tc~} z6b>2WZzvTpC)qi!leqjI1FAZmuH$??wImZjA}+F;G=`WYTyCVu?TTzj2VmUg6mo`) zc&(iK5BHrnkPXo{9TFzjC)ZBc-v@=>=I9sC-v3k@bMtZm9VnS zXO;VMbet{L(SZ_>xz4esf6sc`i2Ds-gSPfwr~0eUl=CcyJztCCbS%qb&+of(p>Pv8 zPb{5>)43{Y#$@@xMA)5K=H$M)#FiX8oLK^@sC zvMX&<(yt{3^%0Zx0yK9DeLIG0)%yn6?liy8VUwoV5&d@x6WL>4fAtle6B0z-Y$N8+ z6RxFpPKx8>?#QBBALBE@SOo|w)55t=uiYY3u3RbHJyBfZhDTNA6n!{~$%#_Xxe*4_ zl)aXS+(QysWR#APmSr^Wz{ye~%Vjb|4gRdvNwntA7@e=e#RL-j@*4AffBC+Mer0NV9-B0S=v#(4QN@K{hp%wws$BJ{E2PP zLf!Z?)|P>g6XOn!mKtOd$f)Ob&JnkctQ|6Ptqjk}OU~0Ae;;p?_lI=Yw$V23Yn~99 z%rt-2#d#Tg%=lMxEP{>`IO41rPs7?uN8zM%JZrK`M4V_~Q7o|vHt6tUyna8GO-XclIPW?}n%z$5OsJFB3Q zb!F3n3Y_-)bD)k*PLUZL*VPGz$bNUFHLjpd(K}`5ssPX<&Xp+3lz=dZd$PvNn>di| zr6|ut15=faIaXDrDL+Jk>S)c+Us=vy5qe;XxHHGef8rwhXeqVlH73(r>Cm}sQqFAp zDqQI3yj-U_nk+vLNVM%##jy@blD4R~4%BxO zZH?_(WcB$SV)wDLXRBlk>X2)e$I%_^2KUwSWf6|Q=UK4&P(jyYO>F% z{z7JIptD&84K8qDaR&LOx5yUsa~?QKf5?u-JDW zx@JwL=8jDN+?iOL2jcB_2a%@lP3!R$;PU@KAt*?jq*ci`v!MJTD5qTuD|Pem_(~2$ z9BG6FU#Q`Vap3L_rrH z4PEdlU7GWgP!JMGex#tFz=xoqL5>g&BzMeO-#pEY*3WB45qFA5TD|A>dTw_2+nI01 z?>ujmQAQbMl=CH*hCcY&<8YHce|%~MKC8PM#qqeLqg)6u6M(1mkx+}#l>^8Dt}An& zKz%qa?I`CK%mn1y0PciZ2;fcxkXdHbBGX1sJtX37PO+{=%DWr$r{k))$rVQ+-xuDP z0b2pIKEBtu7o)GF=RyMX;vy}`YoEM(715{s_ls};j|h{(S$O!IpR>bue-G`}hB>y!fX_ zC&jg!jfaj2&?(W4Ufhqu{U$Feh5JRvxHDs@Z^=8UzgL*1@y5=bmcO-*sMI98GbFAwY)&<_Uqh7UAg70lbB!LSpWj{s=%b*QXfE zi($Us0Ejd7Y>8)&>H9Cx?Mv`b|2=VVOXw?T%niY#Grft_pVF8+;`$T^;*uJ7s`PC` zpBxjcI<$hT>i$&He*gd`7XXkEb&Kxn{D+^*NY4(|u28oNQ82J_dU}2r^lX)VQg?yt ziEV7#Jg9$0WA=K{3{VVTEryxMj8?OBh;IZz6dsD0308L z7>ktPZ)ai-p2f4o!fu=7c!n1@gk1>^Lf-^46A5%Pw+^a&>bm| zUTvYVTn*FC%(v+DEm6Y>%mE(GaT<7$g4f?zdX+X|&&6Ic>#^Cn1QovLmI-Q4%Ju{V zu3c{8^fR?Ei{S&L^0}-dQe+lxUG$ASI0zLE=MfH5e;4?94mEA+0RXly#!SF#<(_2B zFHNml)T<51QyR}yEqTGJhpdY)?V`^^1ya36hX3w^Q)ewsZHWo`J4Yx5J{O68USnzwhvn`;H=<`lm< zT?<5!ed_t zb&AE@4F>xqfMVkdfRyQi0cQQdr&r49)>?tnH){ig0rZ2r&nA7mmIMGcJaX_Ng@wPh zd2>z_XB`wnCXKPOYsz*BuU@LMqGzid2wRRtn4h$4>RbZGR3lJYlU%n#Sxe?P5yoyB ze?S1V6N{&g9jL@EwOcLrEtCf~6lNV&6G@MHl}KUpHs%z&M1ro;9D_6#8^b&+H*fl= z)dEQQlZVek)S%CBTk_zhZ0GW}$QWCivX?lC6C`%4YSkH+4o%n=01W`RJ* zC4F4YDCql4B~*z5et_yqCUORyP^RMLf5XfnBqxd<#g_X9SO)}vM0i9wHq~J72=y{g znt7|=h$iyTTkMMmIOn9rvu8s%vxgrFWh;!&MIE^@`t1)dN7rty*}|3qv`guSU(lpn z3Ive%96W9)!ghw1=+i8cur9AGH-qzrTmUgfCB+kfDTLSOh*l}e#N|Q;f2#CofA7cD zn#uyW5XqLL7q&V1@Q$ek9JPhc#T^Gs+IQGuUz6x6`v%b$VQXu`>h!BQ;?73`u$ee% zwE*9l5N}?0TRe2*5y(RyTDT>1w+6WUhOF-!Jf*Mh;Lk(#u6$$XVmrU3>^nbD4BvD3 zMIBcfbch#x+f|2WdpozHl<1_}e^H-&`?ym2`~;LaP@qn5CCYG|P?^4*xN>0e5;Fqx zUKg0XQAX)0S6l}Y<=DYn!AyXe`Eo46l=&S7gK=TFvI2B5F8e4iLk9iZ6hO^CCRtV* z2*lP24tl z0eMGYa2&uA?4TfbpoN9|friu7hlN0V0gHG)5F60K!gwI|$0DvkD<2vR`&0@}sbrds zHJ*vFa6i3$*hr??@z@dmFYivz%flt?cNL2(~QuZ$1MyMaL8eV~VhAE3?42gD|t3l!AyAAlBJz^4Ep azyN~BIV3^{I1OR|0000=5r5DwcMVV@RfT`9_^x0B zAj08`@k*yvvcu;V=wU<{t?>2c?6Y>mGdGwA%)b(-_z{4juANSL%Ig%qy=8OS^M!gX z(P%X6oUX1e^3M-fz6Q`n=uU$zBIqMAgo?j zVC&8Ilk=Qy(0`o(b3|e(SOrWpa4M<9>k=YRQAI^LQK?ibDls@XNIw1iqv5>QE$>42 zI%T>{T5%*+;3L(-WOVJeEN$h11N$Q~3U6AimSk+&o@E`nygO0jLa;e7CVZYS91K{M z`DT@W?|Wr`Wo>QEy1=+rQSlO)xgj&aZ3pxE0yVnph zact}!IdS47E8S`=V|*z(W?qy5-N#TtN+eWL&S%Pa)u|&#YKUAe5AjWN^MxP-Tojwd zVj)JOiI_}%#OZVpolZy4&j!OD(rO$peWJ{EmCCxrozHL|iWs+R0>CzN14ob6L7*gt z0O1DO+JD-K!{H>w#d=az^Tqo;{e(`qMfj zONft6+M`yhLx36^KV$C?AASoM6ce-A%z~dg_kR;nt1}5ka#>kv@YqNs64KLgl_Y9i zMhfWu_1m#PI76Qz)zgE!jPQyakuy~UU4y#$;1XmLqk35GY$mDF@W$HKMU>1 z(SOBH+%o4TZewm^jM3l;VThC&X`J^wL|;C~5*I_zhK5hrK1L?0fa7|-o|Q9F2Eq*t z{QP?n0Cv&fabe~Wgk>7h?6CC71(W*v@#9~FEWi&MjtR$d=T2Qj&^Id&&1df$eFtuP zX@2#DX9B-6iy9<=Zecx!7LD;>&-et(n8Wo#0tuKtjfccmN)vc}Ecmg0Ge!>>&+ zO1Va(RbZcz1eiJTi@0-a7`26kyNS(aBWKQ>1yrJhaMjf3bUKOA)W-mc0q9!M zWg!gd;dHB?oA2oUtILdj3O^nQgi(vqqQqz`HJvV>IHn~zaGMB**+C=WGc#eVghWL}MFhn0o7Zl|`jz8X#L~bdE-Q>M z4*^|CxsHqNm)h;&fphFwT`+1flKFWzazfXT+1oMO;Wi#DdKn;<)vL^ACcNT>vk1bM z2!T-6^)^(*vnav@5R0URE6l@s#DBG^(EbhIM{BX+H#{;J$rpY*J)TlvAD{)6f3+fN zDIt@Y81Hy+5m>&kURD@r_%-P@b}Y&>EdAP-7cXO$q$P)Its+W#|4M9uXEePtJQ0Mm z!90udkImeeNl-JxDFus0nqfx4M(F**T4mx=>aNAX>qFB&!eX!TSz-l%$$tTX{=0wk zVSENNqReyM$w~6!!VkdiQV_1bapDI;u#TEkI(J8!J>8w!1JzqB0-0y-+Wj#$vm(Va z8JF%Jl_xJv!Ms_Tq%HK2&w$x!A%)+=00!iml{bK5U@7coNdYr2-lfvIJX|8db43?_ z2sV$Bp~4iz!xh8)Qc=8)I6}ae9Ey~s8(>p3V+3gSchD-^O%0j&I5r#pZ$YJ%P!mx= jAJ6>j`6Gkve*p#n2XCU5D(o$600000NkvXXu0mjfmVwEN diff --git a/src/main/resources/images/filechooser/view_history.png b/src/main/resources/images/filechooser/view_history.png old mode 100755 new mode 100644 index dcd308ea188aa93dd571b4731fd09e87c6d45efb..0e4eb52e956467fbb5d3d2734c5f6ec99e31635b GIT binary patch delta 969 zcmV;)12+7r1mFiDiBL{Q4GJ0x0000DNk~Le0000<0000H2m$~A03OU15s@J$e*=O^ zL_t(|+T2!ONK;W5*Zjj|)2V~y3}#L8#bzKqELpu+K4dBd6)mi%p?fRPQXf)$QS?O! zoMkT|ECNZ=_M+884p|^({-G$GCFI;<+NRPlihg&W9?$OGQdbY^<#74#cYf#I^E==7 z{k|LT4+P@&=@l>Kw(`?E=Cyqee>m5Et>Q5`L4G*RP^dO3lGJ;f+nDz;h!LOVH7`7= z$!g*WdWGt%dzBjz%gZP>WSK$lOTY^~~mV0%Qh@C!klRRKW26&Ql%GVF4My_Y8l($R#e{F;8vGjgz z{n<+F9{zPop;@b=uVtu5pPef(oS(5?u9;i%z$510Hi%i%qbAte%q-YgV!Pg`Oi?&o z6Qx}>1cMWAz`b>-XV^7iuWDysKc8P@F<#hsT_8YX;C=JGH|M@BxnaX_dB@ol4NN^4 zz0^B(hj+$R8~8_KdzF3Me<7N3e0Zy^ubA`9(<2OcA}+xI()y~GJ(?cg#ee|}kmLkF zdFu?r({kMP&DZ$N9AIaLqRLAzMu=da)R^tF4Zfg@KU7TRq#7tucb1JoL6dOy>!D6j z;K(B)?b9O&m+3?a^R$*#!-;6~FaVgxdZpI#M2H*it>u=;If5h@2Afs=oH0B;J$j&XzFN#)0Sbi$J8tEXYP{9Y838QoP zDN8*5<)TVX3|D{8@|uUpfF5)bMW{$x--k+e1OS2C?=WsCFlN{FTO)4TcB2XVMg)du z-l5D;Env9Q_*03_e=RNumBxh#Hn<_eQMCjYXz)5AReWD?HUv|P!onYOw4Dj38%jkm z>~!=+O|@aMbYRGI?O^gz!0KBGD8^30_mqW>kR_<>HCYnpBw;8Jhy*gAGXm! z{`jNiBnTrcJh*P43r>FDSc@z`A&81ldTnw;??Muy#YKZ+e+mG=w!?>d0P6(EC2iwH zY{=MQc|JWN%^yB{5jx};z*vHVkb;GrEUVsZy2>0U5H2gmLf>ELdEfka2E7@>4= zNp;Y{;W|{DBvnw+Hu1gi4$m~L3LZRiy}o?+z3+Q3jQ!)%eoCmej8)~QDCeBspTGbh z1CJU+0U`_GKp6D54PgOjC;DDue*_bJL5FZ@Zzw4UE+B7fEHg-0B!Da(AtQcs;@eLT z0fMucIgKr?CphI4fZ@?7W)_4;dj#dqeqR8X*}Vz`2JHFSUO)T(8eon|l6(iF@+<|2 z-8FshQH164R;yXW!18t@Itx-v`9P#!X zc#Yiw|9A<{kWWhZGlH(MvscEgSv6EyI=`XD?52QHI#*CAQjFGK62NO|0 ztqv^Gcl=j_O17v(RjWFhfrAcgGIHcl Date: Sat, 7 Sep 2013 16:49:34 +0100 Subject: [PATCH 012/111] Updating the pom to use version 1.6.1 of the import_layer. Updating ISAcreator version to 1.7.3 --- pom.xml | 4 ++-- .../isacreator/filechooser/FileChooserUI.java | 17 ++++++++++------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/pom.xml b/pom.xml index e36a2241..d2ababc3 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.isatools ISAcreator bundle - 1.7.2 + 1.7.3 ISAcreator http://www.isa-tools.org @@ -415,7 +415,7 @@ org.isatools import_layer - 1.6 + 1.6.1 uk.ac.ebi diff --git a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java index 414233ea..9bee2665 100755 --- a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java +++ b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java @@ -46,6 +46,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.effects.FooterPanel; import org.isatools.isacreator.effects.HUDTitleBar; import org.isatools.isacreator.effects.InfiniteProgressPanel; +import org.isatools.isacreator.effects.components.RoundedJPasswordField; +import org.isatools.isacreator.effects.components.RoundedJTextField; import org.isatools.isacreator.launch.ISAcreatorGUIProperties; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; @@ -143,9 +145,9 @@ private void createGUI() { private JPanel createTopPanel() { - final JTextField uri = new JTextField(20); - final JTextField username = new JTextField(20); - final JPasswordField password = new JPasswordField(20); + final JTextField uri = new RoundedJTextField(20); + final JTextField username = new RoundedJTextField(20); + final JPasswordField password = new RoundedJPasswordField(20); final JPanel topContainer = new JPanel(); topContainer.setLayout(new BoxLayout(topContainer, BoxLayout.PAGE_AXIS)); @@ -256,6 +258,7 @@ public void run() { JLabel uriLab = UIHelper.createLabel("FTP URI: ", UIHelper.VER_10_BOLD, UIHelper.DARK_GREEN_COLOR); UIHelper.renderComponent(uri, UIHelper.VER_10_PLAIN, UIHelper.DARK_GREEN_COLOR, false); + uriPanel.add(uriLab); uriPanel.add(uri); @@ -291,10 +294,9 @@ public void run() { connectLab.setOpaque(false); connectLab.setToolTipText("Connect

Connect to the FTP source defined!

"); - connectLab.addMouseListener(new MouseAdapter() { - - + connectLab.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); if (uri.getText() != null && !uri.getText().trim().equals("")) { String user = (username.getText() != null) ? username.getText() : ""; String pass = (password.getPassword() != null) ? new String(password.getPassword()) : ""; @@ -317,9 +319,10 @@ public void run() { JLabel historyLab = new JLabel(viewHistoryIcon); historyLab.setOpaque(false); historyLab.setToolTipText("Search previously connected to FTP locations

Connect to a previously defined FTP location

"); - historyLab.addMouseListener(new MouseAdapter() { + historyLab.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); SelectFromFTPHistory selectFTP = new SelectFromFTPHistory(); selectFTP.addPropertyChangeListener("locationSelected", new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent event) { From 019978b652b3a4671a387760254a90f79f2f998c Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Sat, 7 Sep 2013 22:25:28 +0100 Subject: [PATCH 013/111] Unit field handles a default value now. --- .../isatools/isacreator/configuration/io/ConfigXMLParser.java | 2 +- src/main/resources/xsd/isatab_configuration.xsd | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java index 121868a1..98a3cc49 100644 --- a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java +++ b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java @@ -295,7 +295,7 @@ public void processTable(IsaTabConfigurationType isaConf) { } else if (obj instanceof UnitFieldType) { UnitFieldType unitField = (UnitFieldType) obj; - FieldObject newField = new FieldObject(colNo, "Unit", StringProcessing.cleanUpString(unitField.getDescription()), DataTypes.resolveDataType(unitField.getDataType()), "", "", + FieldObject newField = new FieldObject(colNo, "Unit", StringProcessing.cleanUpString(unitField.getDescription()), DataTypes.resolveDataType(unitField.getDataType()), unitField.getDefaultValue(), "", unitField.getIsRequired(), false, false, false, unitField.getIsForcedOntology()); if (unitField.getRecommendedOntologies() != null) { diff --git a/src/main/resources/xsd/isatab_configuration.xsd b/src/main/resources/xsd/isatab_configuration.xsd index 825f8a74..d279f5c2 100644 --- a/src/main/resources/xsd/isatab_configuration.xsd +++ b/src/main/resources/xsd/isatab_configuration.xsd @@ -69,6 +69,7 @@ + From 5af5cffa09acf66e82d82db390b576e77dc5cc77 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Sun, 8 Sep 2013 15:02:37 +0100 Subject: [PATCH 014/111] Some further small changes to fix imports to use one source of isatab config xmlbean stubs. --- .../java/org/isatools/isacreator/api/utils/StudyUtils.java | 1 + .../isacreator/configuration/io/ConfigXMLParser.java | 7 ++++--- .../org/isatools/isacreator/gui/DataEntryEnvironment.java | 4 ++-- .../isatools/isacreator/gui/formelements/AssaySubForm.java | 3 ++- src/main/xsdconfig/isatab_config.xsdconfig | 3 --- .../isacreator/configuration/io/ConfigurationLoadTest.java | 4 +++- 6 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/api/utils/StudyUtils.java b/src/main/java/org/isatools/isacreator/api/utils/StudyUtils.java index 9b995ed2..6c91a7a7 100644 --- a/src/main/java/org/isatools/isacreator/api/utils/StudyUtils.java +++ b/src/main/java/org/isatools/isacreator/api/utils/StudyUtils.java @@ -149,6 +149,7 @@ private static String generateUniqueAssayReference(Study study, String assayRefe return generateUniqueAssayReference(study, assayReference, cycleCount + 1); } + candidateRef = candidateRef.replaceAll("\\s+","_"); return candidateRef; } diff --git a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java index 98a3cc49..e984aaef 100644 --- a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java +++ b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java @@ -41,11 +41,11 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.apache.xmlbeans.XmlException; import org.apache.xmlbeans.XmlObject; import org.isatools.isacreator.configuration.*; +import uk.ac.ebi.bii.isatabConfiguration.*; import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; import org.isatools.isacreator.utils.StringProcessing; -import org.isatools.isatab.configurator.schema.*; import java.io.File; import java.io.IOException; @@ -164,7 +164,7 @@ public List getMappings() { private List getTableDefinitions() throws XmlException, IOException { File dir = new File(configDir); - if (dir==null) + if (!dir.exists()) return null; File[] configFiles = dir.listFiles(); @@ -295,7 +295,8 @@ public void processTable(IsaTabConfigurationType isaConf) { } else if (obj instanceof UnitFieldType) { UnitFieldType unitField = (UnitFieldType) obj; - FieldObject newField = new FieldObject(colNo, "Unit", StringProcessing.cleanUpString(unitField.getDescription()), DataTypes.resolveDataType(unitField.getDataType()), unitField.getDefaultValue(), "", + FieldObject newField = new FieldObject(colNo, "Unit", StringProcessing.cleanUpString(unitField.getDescription()), + DataTypes.resolveDataType(unitField.getDataType()), unitField.getDefaultValue(), "", unitField.getIsRequired(), false, false, false, unitField.getIsForcedOntology()); if (unitField.getRecommendedOntologies() != null) { diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java index f4e3677a..47b13412 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java @@ -167,7 +167,7 @@ public Assay addAssay(String measurementEndpoint, String techType, JOptionPane optionPane = new JOptionPane( "Problem occurred when attempting to add an Assay... " + "\n Please ensure assay names for a study are unique, \n and that you have entered text in the assay name field!", - JOptionPane.OK_OPTION); + JOptionPane.ERROR_MESSAGE); optionPane.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent propertyChangeEvent) { getParentFrame().hideSheet(); @@ -180,7 +180,7 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { JOptionPane optionPane = new JOptionPane( "An assay definition with the features you have selected doesn't exist... " + "\n Please ensure that the assay definition you have entered is correct!", - JOptionPane.OK_OPTION); + JOptionPane.ERROR_MESSAGE); optionPane.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent propertyChangeEvent) { getParentFrame().hideSheet(); diff --git a/src/main/java/org/isatools/isacreator/gui/formelements/AssaySubForm.java b/src/main/java/org/isatools/isacreator/gui/formelements/AssaySubForm.java index b60005bc..7a3c8866 100644 --- a/src/main/java/org/isatools/isacreator/gui/formelements/AssaySubForm.java +++ b/src/main/java/org/isatools/isacreator/gui/formelements/AssaySubForm.java @@ -109,6 +109,7 @@ public boolean doAddColumn(DefaultTableModel model, TableColumn col) { assayName += ".txt"; } + assayName = assayName.replaceAll("\\s+","_"); tmpAssay.setAssayReference(assayName); if (dataEntryForm.getDataEntryEnvironment() @@ -132,7 +133,7 @@ public boolean doAddColumn(DefaultTableModel model, TableColumn col) { JOptionPane optionPane = new JOptionPane( "Problem occurred when attempting to add an Assay... " + "\n All fields for the assay definition are not complete!", - JOptionPane.OK_OPTION); + JOptionPane.ERROR_MESSAGE); UIHelper.applyOptionPaneBackground(optionPane, UIHelper.BG_COLOR); optionPane.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent event) { diff --git a/src/main/xsdconfig/isatab_config.xsdconfig b/src/main/xsdconfig/isatab_config.xsdconfig index 3a783fde..bb45cef7 100644 --- a/src/main/xsdconfig/isatab_config.xsdconfig +++ b/src/main/xsdconfig/isatab_config.xsdconfig @@ -1,8 +1,5 @@ - - org.isatools.isatab.configurator.schema - org.isatools.isacreator.mapping.schema diff --git a/src/test/java/org/isatools/isacreator/configuration/io/ConfigurationLoadTest.java b/src/test/java/org/isatools/isacreator/configuration/io/ConfigurationLoadTest.java index 4d4dae6e..96380fbd 100644 --- a/src/test/java/org/isatools/isacreator/configuration/io/ConfigurationLoadTest.java +++ b/src/test/java/org/isatools/isacreator/configuration/io/ConfigurationLoadTest.java @@ -1,5 +1,7 @@ package org.isatools.isacreator.configuration.io; +import org.isatools.isatab.configurator.schema.UnitFieldType; +import org.isatools.isatab.configurator.schema.impl.UnitFieldTypeImpl; import org.junit.Test; import java.io.File; @@ -17,6 +19,7 @@ public void configurationTestLoad() { File[] configurationFiles = configurationDirectory.listFiles(); + assert configurationFiles != null; for(File file : configurationFiles) { if(!file.isHidden() && !file.getName().startsWith(".")) { @@ -24,7 +27,6 @@ public void configurationTestLoad() { ConfigXMLParser parser = new ConfigXMLParser(ConfigurationLoadingSource.ISACREATOR, file.getAbsolutePath()); System.out.println("___loading configuration " + file.getName().toLowerCase()); - parser.loadConfiguration(); assertTrue("Oh, the configuration size is 0!", parser.getTables().size() > 0); From 017d0074026c5e546c3fc6fc08941288e463ca3e Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Mon, 9 Sep 2013 19:14:07 +0100 Subject: [PATCH 015/111] Updated pom to bring in new ISAtab error reporter. Cleaned up XSDs and modified imports in ConfigXMLParser --- pom.xml | 7 +- .../configuration/io/ConfigXMLParser.java | 6 +- .../resources/xsd/isatab_configuration.xsd | 166 ------------------ src/main/xsdconfig/isatab_config.xsdconfig | 3 + 4 files changed, 13 insertions(+), 169 deletions(-) delete mode 100644 src/main/resources/xsd/isatab_configuration.xsd diff --git a/pom.xml b/pom.xml index d2ababc3..05e85e0e 100644 --- a/pom.xml +++ b/pom.xml @@ -384,7 +384,7 @@ org.isatools ISAtabErrorReporter - 0.4 + 0.5 @@ -432,6 +432,11 @@ cpdetector
+ + org.isatools + ISAtabErrorReporter + +
diff --git a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java index e984aaef..10740a67 100644 --- a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java +++ b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java @@ -40,12 +40,13 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.apache.log4j.Logger; import org.apache.xmlbeans.XmlException; import org.apache.xmlbeans.XmlObject; + import org.isatools.isacreator.configuration.*; -import uk.ac.ebi.bii.isatabConfiguration.*; import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; import org.isatools.isacreator.utils.StringProcessing; +import org.isatools.isatab.configurator.schema.*; import java.io.File; import java.io.IOException; @@ -90,7 +91,8 @@ public void loadConfiguration() { try { definitions = getTableDefinitions(); - // do check for presence of the Investigation file, if it is not there, this method will load in a default file as well + // do check for presence of the Investigation file, if it is not there, + // this method will load in a default file as well checkInvestigationFileDefinitionFound(definitions); for (IsaTabConfigFileType isa : definitions) { diff --git a/src/main/resources/xsd/isatab_configuration.xsd b/src/main/resources/xsd/isatab_configuration.xsd deleted file mode 100644 index d279f5c2..00000000 --- a/src/main/resources/xsd/isatab_configuration.xsd +++ /dev/null @@ -1,166 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The conversion target. This is used by the converter to decide if a certain assay type - can be converted into an omics-specific format or not. - Current supported values are: magetab, prideml, ena. More targets can be added by extending the - converter. - - - - - - - - - - - - - - - - - - - - - - - - - - - Every assay type must be mapped to one of the types defined in the ISATAB specification. If a - certain endpoint/technology is specified in the - ISA Configuration, but the ISATAB Assay Type (i.e.: the value of this attribute) is not, then the ISA - configuration is used for performing - the validation and the internal IL configuration is used to see if there is an ISATAB type that - corresponds to the pair. - If the pair is not even defined in the ISA Configuration, then the import layer will try to use the - values defined in its internal - configuration (i.e.: the ISA Configuration overrides the IL configuration). If all the above fails, then - the assay is completely ignored. - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/main/xsdconfig/isatab_config.xsdconfig b/src/main/xsdconfig/isatab_config.xsdconfig index bb45cef7..3a783fde 100644 --- a/src/main/xsdconfig/isatab_config.xsdconfig +++ b/src/main/xsdconfig/isatab_config.xsdconfig @@ -1,5 +1,8 @@ + + org.isatools.isatab.configurator.schema + org.isatools.isacreator.mapping.schema From 18b68571e492b4197be4a42f9eaa3356135fd785 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 13 Sep 2013 19:09:53 +0100 Subject: [PATCH 016/111] upgrading to import_layer 1.6.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 05e85e0e..02de449a 100644 --- a/pom.xml +++ b/pom.xml @@ -415,7 +415,7 @@ org.isatools import_layer - 1.6.1 + 1.6.2 uk.ac.ebi From 848e4a278078300f785b6efbb03cbaf7c8da2b6c Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 13 Sep 2013 19:10:51 +0100 Subject: [PATCH 017/111] Dealing with different formats for the ontology annotations in columns --- .../io/importisa/SpreadsheetImport.java | 7 + .../ontologymanager/common/OntologyTerm.java | 7 +- .../utils/OntologyTermUtils.java | 152 ++++++++++++++++++ .../isacreator/spreadsheet/AddColumnGUI.java | 3 +- .../spreadsheet/SpreadsheetFunctions.java | 17 +- .../model/TableReferenceObject.java | 36 +---- .../settings/defaultsettings.properties | 3 +- 7 files changed, 185 insertions(+), 40 deletions(-) create mode 100644 src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java diff --git a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java index d171986d..f12154c8 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java @@ -5,6 +5,7 @@ import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; import org.isatools.isacreator.io.importisa.errorhandling.exceptions.MalformedInvestigationException; +import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; import org.isatools.isacreator.utils.GeneralUtils; @@ -111,11 +112,17 @@ private TableReferenceObject reformTableDefinition(String tableName, for (String columnHeader : headers) { positionInheaders++; + if (columnHeader.contains(":")) { + columnHeader = OntologyTermUtils.fullAnnotatedHeaderToUniqueId(columnHeader); + headers[count] = columnHeader; + } + String fieldAsLowercase = columnHeader.toLowerCase(); System.out.println("Column header is " + columnHeader); + if (expectedNextUnitLocation == positionInheaders) { System.out.println("Expected a unit here, got a " + columnHeader); if (fieldAsLowercase.contains("unit")) { diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java index a07cd93b..df64efc1 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java @@ -150,7 +150,12 @@ public String toString() { } /*** - * TODO: Change this to return the PURL instead, if not null or empty + * + * This method returns the string used for visualising the ontology term in the interface. + * + * This is ":". + * + * For example "OBI:parallel group design". * * @return */ diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java new file mode 100644 index 00000000..024aa989 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java @@ -0,0 +1,152 @@ +package org.isatools.isacreator.ontologymanager.utils; + +import org.isatools.isacreator.ontologymanager.OntologyManager; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import org.isatools.isacreator.settings.ISAcreatorProperties; + +import java.util.Map; + +/** + * Created by the ISATeam. + * User: agbeltran + * Date: 13/09/2013 + * Time: 11:54 + * + * @author
Alejandra Gonzalez-Beltran + */ +public class OntologyTermUtils { + + /** + * Given an OntologyTerm object, it creates a string such as: + * + * Characteristics[dose,efo:EFO_0000428,EFO] + * + * if not purl is defined in the ontology term, or such as + * + * Characteristics[dose,http://www.ebi.ac.uk/efo/EFO_0000428,EFO] + * + * + * @param ontologyTerm + * @return + */ + public static String ontologyTermToString(OntologyTerm ontologyTerm){ + if (ontologyTerm.getOntologyPurl()!=null && ISAcreatorProperties.getProperty("ontologyTermURI").equals("true")){ + return ontologyTerm.getOntologyTermName() +"," + ontologyTerm.getOntologyPurl() + "," + ontologyTerm.getOntologySource(); + } + return ontologyTerm.getOntologyTermName() + "," + ontologyTerm.getOntologyTermAccession() +"," + ontologyTerm.getOntologySource(); + } + + public static OntologyTerm stringToOntologyTerm(String header){ + OntologyTerm ontologyTerm = null; + + String prevVal = header.substring(header.indexOf('[') + 1, header.indexOf("]")); + + String source = ""; + String term = ""; + String accession = ""; + + + //moved this code from the TableReferenceObject and we are keeping it for backward compatibility, so that + //we can still read in column headers with the form + // -- + //but now we will save them back only following the patter by the method above (ontologyTermToString). + + if (prevVal.contains("-")) { + String[] parts = prevVal.split("-"); + source = parts[0]; + term = parts[1]; + accession = parts[2]; + + ontologyTerm = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + + } else if (prevVal.contains(":")) { + + //this should be the currently accepted string + //such as "Characteristics[dose,efo:EFO_0000428,EFO]" or "Characteristics[dose,http://www.ebi.ac.uk/efo/EFO_0000428,EFO]" + if (prevVal.contains(",")){ + String[] parts = prevVal.split(","); + term = parts[0]; + accession = parts[1]; + source = parts[2]; + + if (accession.contains("http://")) + ontologyTerm = new OntologyTerm(term, null, accession, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + else + ontologyTerm = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + + }else if (prevVal.startsWith("http://")) { + // we have a PURL. So we'll use this directly + if (prevVal.contains("(")) { + String[] termAndSource = prevVal.split("\\("); + term = termAndSource[0]; + accession = termAndSource[1].replace(")", ""); + + ontologyTerm = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + } + } else { + String[] parts = prevVal.split(":"); + if (parts[0].contains("(")) { + String[] termAndSource = parts[0].split("\\("); + term = termAndSource[0]; + source = termAndSource[1]; + } + accession = parts[1].replace(")", ""); + + ontologyTerm = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + } + + + } + + + + + return ontologyTerm; + } + + + /*** + * + * @param header + * @return + */ + public static String headerToString(String header){ + + String ontologyUniqueId = header.substring(header.indexOf('[') + 1, header.indexOf("]")); + String headerName = header.substring(0,header.indexOf('[')); + + //convert the ontologyUniqueId to the ontology term string + + Map ontologySelectionHistory = OntologyManager.getOntologySelectionHistory(); + + if (ontologySelectionHistory!=null){ + + OntologyTerm ontologyTerm = ontologySelectionHistory.get(ontologyUniqueId); + + if (ontologyTerm!=null){ + return headerName + "[" +ontologyTermToString(ontologyTerm) +"]"; + } + } + + return null; + } + + /** + * When importing an ISA-TAB file, takes the full annotated header (e.g. Characteristics[organism,http://purl.obolibrary.org/obo/OBI_0100026,OBI]) + * and retrieves the header with the ontology term unique ID + * + * @param fullAnnotatedHeader + * @return + */ + public static String fullAnnotatedHeaderToUniqueId(String fullAnnotatedHeader){ + OntologyTerm ontologyTerm = stringToOntologyTerm(fullAnnotatedHeader); + String headerName = fullAnnotatedHeader.substring(0,fullAnnotatedHeader.indexOf('[')); + + if (ontologyTerm != null) + return headerName +"["+ ontologyTerm.getUniqueId() + "]"; + + return null; + } + + +} diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java index 43a22763..f222fa51 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java @@ -270,8 +270,7 @@ public void propertyChange(PropertyChangeEvent evt) { } private String getStringForHeaderFromOntologyTerm(OntologyTerm ontologyTerm) { - // we just need the one term. - return ontologyTerm.getOntologySource() +"-" + ontologyTerm.getOntologyTermName() + "-" + ontologyTerm.getOntologyTermAccession(); + return ontologyTerm.getUniqueId(); //OntologyTermUtils.ontologyTermToString(ontologyTerm); } /** diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java index 5d2cf8a8..54b1d44f 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java @@ -44,9 +44,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; import org.isatools.isacreator.configuration.RecommendedOntology; -import org.isatools.isacreator.filterablelistselector.FilterableListCellEditor; import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; import org.isatools.isacreator.ontologyselectiontool.OntologyCellEditor; import org.isatools.isacreator.plugins.host.service.PluginSpreadsheetWidget; import org.isatools.isacreator.plugins.registries.SpreadsheetPluginRegistry; @@ -66,7 +66,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.io.File; import java.io.FileNotFoundException; import java.io.PrintStream; -import java.lang.reflect.Array; import java.util.*; /** @@ -243,10 +242,20 @@ public boolean exportTable(File f, String separator, boolean removeEmptyColumns) if (removeEmptyColumns && checkIsEmpty(tc) && !spreadsheet.getTableReferenceObject().isRequired(tc.getHeaderValue().toString())) { emptyColumns.add(tc); } else { + + String toPrint = null; + + String header = tc.getHeaderValue().toString(); + + if (header.contains(":")) + toPrint = "\"" + OntologyTermUtils.headerToString(header) + "\""; + else + toPrint = "\"" + header + "\""; + if (col == 1) { - ps.print("\"" + tc.getHeaderValue() + "\""); + ps.print(toPrint); } else { - ps.print(separator + "\"" + tc.getHeaderValue() + "\""); + ps.print( separator + toPrint); } if (tc.getCellEditor() instanceof OntologyCellEditor || diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java index c42b422f..a05b37d2 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java @@ -49,6 +49,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.model.Protocol; import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; import org.isatools.isacreator.spreadsheet.StringValidation; import org.isatools.isacreator.spreadsheet.ValidationObject; @@ -314,41 +315,12 @@ public void addRowData(String[] headers, String[] rowData) { String header = headers[i]; - String prevVal = header.substring(header.indexOf('[') + 1, header.indexOf("]")); - - String source = ""; - String term = ""; - String accession = ""; - if (prevVal.contains("-")) { - String[] parts = prevVal.split("-"); - source = parts[0]; - term = parts[1]; - accession = parts[2]; - } else if (prevVal.contains(":")) { - if (prevVal.startsWith("http://")) { - // we have a PURL. So we'll use this directly - if (prevVal.contains("(")) { - String[] termAndSource = prevVal.split("\\("); - term = termAndSource[0]; - accession = termAndSource[1].replace(")", ""); - } - } else { - String[] parts = prevVal.split(":"); - if (parts[0].contains("(")) { - String[] termAndSource = parts[0].split("\\("); - term = termAndSource[0]; - source = termAndSource[1]; - } - accession = parts[1].replace(")", ""); - } - } - + OntologyTerm ontologyTerm = OntologyTermUtils.stringToOntologyTerm(header); - prevVal = source + ":" + term; + String prevVal = ontologyTerm.getUniqueId(); //the uniqueID is source + ":" + term if (!referencedOntologyTerms.containsKey(prevVal)) { - referencedOntologyTerms.put(prevVal, - new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source))); + referencedOntologyTerms.put(prevVal, ontologyTerm); } } diff --git a/src/main/resources/defaults/settings/defaultsettings.properties b/src/main/resources/defaults/settings/defaultsettings.properties index f9f59852..2114a7ba 100644 --- a/src/main/resources/defaults/settings/defaultsettings.properties +++ b/src/main/resources/defaults/settings/defaultsettings.properties @@ -2,4 +2,5 @@ strictValidation.isOn=false alwaysShowInvestigation=${isacreator.alwaysShowInvestigation} version=${isacreator.version} configurationFilesLocation=http://cloud.github.com/downloads/ISA-tools/Configuration-Files/isaconfig-default_v2011-02-18.zip -showGenomeSpace=true \ No newline at end of file +showGenomeSpace=true +ontologyTermURI=true \ No newline at end of file From 776bb87afe81f95ef830a01308e2c67e49e7300f Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Sun, 15 Sep 2013 23:18:26 +0100 Subject: [PATCH 018/111] A lot of changes to the UI to remove dependency on images for buttons. I've tried to make everything much more consistent. --- pom.xml | 8 + .../isacreator/api/ImportConfiguration.java | 7 + .../assayselection/AssaySelectionDialog.java | 50 ++---- .../isacreator/calendar/CalendarGUI.java | 42 ++--- .../isatools/isacreator/common/Globals.java | 56 ------- .../isatools/isacreator/common/UIHelper.java | 15 +- .../isacreator/common/button/ButtonType.java | 32 ++++ .../isacreator/common/button/FlatButton.java | 118 ++++++++++++++ .../configuration/io/ConfigXMLParser.java | 14 +- .../isacreator/effects/AnimatableJFrame.java | 2 +- .../factorlevelentry/FactorLevelEntryGUI.java | 47 ++---- .../isacreator/filechooser/FileChooserUI.java | 59 ++----- .../isacreator/gs/gui/GSImportFilesMenu.java | 97 ++---------- .../isacreator/gui/AddStudyDialog.java | 55 ++----- .../gui/HistoricalSelectionGUI.java | 22 +-- .../isatools/isacreator/gui/SaveAsDialog.java | 40 ++--- .../gui/formelements/FactorSubForm.java | 59 ------- .../gui/menu/AbstractImportFilesMenu.java | 53 ++----- .../gui/menu/AuthenticationMenu.java | 92 +++-------- .../isacreator/gui/menu/CreateISATABMenu.java | 24 ++- .../gui/menu/CreateProfileMenu.java | 45 ++---- .../gui/menu/ExitConfirmationPanel.java | 20 +-- .../gui/menu/ImportConfigurationMenu.java | 93 +++-------- .../isacreator/gui/menu/ImportFilesMenu.java | 46 ++---- .../isacreator/gui/menu/MainMenu.java | 36 ++++- .../isacreator/longtexteditor/TextEditor.java | 23 +-- .../isacreator/mergeutil/MergeFilesUI.java | 15 +- .../ontologiser/ui/OntologiserUI.java | 52 +++---- .../OntologySelectionTool.java | 24 ++- .../PublicationLocatorUI.java | 38 ++--- .../qrcode/ui/QRCodeBuilderPane.java | 5 - .../qrcode/ui/QRCodeDetailedView.java | 16 +- .../qrcode/ui/QRCodeGeneratorUI.java | 143 ++++++++--------- .../qrcode/ui/QRCodeViewerPane.java | 3 +- .../isacreator/spreadsheet/AddColumnGUI.java | 144 ++++++++---------- .../spreadsheet/AddMultipleRowsGUI.java | 50 +++--- .../spreadsheet/MultipleSortGUI.java | 41 ++--- .../isacreator/spreadsheet/Spreadsheet.java | 2 +- .../spreadsheet/SpreadsheetFunctions.java | 1 - .../spreadsheet/SpreadsheetPopupMenus.java | 16 +- .../TransposedSpreadsheetView.java | 42 ++--- .../isatools/isacreator/wizard/Wizard.java | 13 +- .../test-data/BII-I-1/i_investigation.txt | 8 +- 43 files changed, 666 insertions(+), 1102 deletions(-) delete mode 100644 src/main/java/org/isatools/isacreator/common/Globals.java create mode 100644 src/main/java/org/isatools/isacreator/common/button/ButtonType.java create mode 100644 src/main/java/org/isatools/isacreator/common/button/FlatButton.java diff --git a/pom.xml b/pom.xml index 05e85e0e..42e3cf5d 100644 --- a/pom.xml +++ b/pom.xml @@ -510,6 +510,14 @@ runtime
+ + + com.sun.jersey + jersey-json + 1.11 + runtime + + com.amazonaws aws-java-sdk diff --git a/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java b/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java index e1cd63d6..babf6e6e 100644 --- a/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java +++ b/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java @@ -1,5 +1,6 @@ package org.isatools.isacreator.api; +import org.apache.log4j.Logger; import org.isatools.isacreator.configuration.io.ConfigXMLParser; import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.managers.ConfigurationManager; @@ -22,6 +23,8 @@ public class ImportConfiguration { private ConfigXMLParser configParser = null; private String configDir = null; + private static Logger log = Logger.getLogger(ImportConfiguration.class.getName()); + public ImportConfiguration(String cDir){ configDir = cDir; configParser = new ConfigXMLParser(configDir); @@ -38,8 +41,12 @@ public boolean loadConfiguration(){ if (!configParser.isProblemsEncountered()){ + log.info("Setting Assay definitions with " + configParser.getTables().size() + " tables."); ConfigurationManager.setAssayDefinitions(configParser.getTables()); + log.info("Setting Assay definitions with " + configParser.getMappings().size() + " mappings."); ConfigurationManager.setMappings(configParser.getMappings()); + log.info("Setting config dir with " + configDir); + ConfigurationManager.loadConfigurations(configDir); ApplicationManager.setCurrentDataReferenceObject(); diff --git a/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java index 0fb65dc5..0ab8b69f 100644 --- a/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java +++ b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java @@ -38,6 +38,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.common.dialog.ConfirmationDialog; import org.isatools.isacreator.gui.ISAcreator; import org.isatools.isacreator.managers.ApplicationManager; @@ -46,7 +48,10 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import javax.swing.border.EtchedBorder; +import javax.swing.border.LineBorder; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; @@ -60,8 +65,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ public class AssaySelectionDialog extends JDialog { - @InjectedResource - private ImageIcon closeWindowIcon, closeWindowIconOver, doneIcon, doneIconOver, buttonPanelFiller; private AssaySelectionUI assaySelectionUI; private Map> measurementsToTechnologies; @@ -97,49 +100,28 @@ public void clearSelectedAssays() { } private Container createSouthPanel() { - Box southPanel = Box.createHorizontalBox(); + JPanel southPanel = new JPanel(new BorderLayout()); + southPanel.setBorder(UIHelper.EMPTY_BORDER); + southPanel.setPreferredSize(new Dimension(750, 40)); - final JLabel closeButton = new JLabel(closeWindowIcon); - closeButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowIconOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowIcon); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowIcon); + JButton closeButton = new FlatButton(ButtonType.RED, "Cancel"); + closeButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { closeWindow(); } }); - final JLabel addAssay = new JLabel(doneIcon); - addAssay.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - addAssay.setIcon(doneIconOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - addAssay.setIcon(doneIcon); - } - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton addAssay = new FlatButton(ButtonType.GREEN, "Confirm"); + addAssay.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("assaysChosen", false, true); closeWindow(); } }); - southPanel.add(closeButton); - southPanel.add(new JLabel(buttonPanelFiller)); - southPanel.add(addAssay); + southPanel.add(closeButton, BorderLayout.WEST); + southPanel.add(addAssay, BorderLayout.EAST); return southPanel; } diff --git a/src/main/java/org/isatools/isacreator/calendar/CalendarGUI.java b/src/main/java/org/isatools/isacreator/calendar/CalendarGUI.java index 9f26262e..9b06b105 100755 --- a/src/main/java/org/isatools/isacreator/calendar/CalendarGUI.java +++ b/src/main/java/org/isatools/isacreator/calendar/CalendarGUI.java @@ -38,6 +38,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.calendar; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; @@ -60,9 +62,6 @@ public class CalendarGUI extends JFrame implements ActionListener { static final int WIDTH = 200; static final int HEIGHT = 230; - @InjectedResource - private ImageIcon closeIcon, closeIconOver, okIcon, okIconOver; - private static Calendar calendar; private JComboBox months; private JComboBox years; @@ -76,10 +75,6 @@ public class CalendarGUI extends JFrame implements ActionListener { private int selectedYear; - public CalendarGUI() { - ResourceInjector.get("calendar-package.style").inject(this); - } - /** * CreateGUI method is called by any class wishing to properly instantiate the calendar. Until * this method is called, no painting is done. @@ -133,42 +128,23 @@ private void instantiateCalendar() { JPanel buttonsCont = new JPanel(new BorderLayout()); buttonsCont.setBackground(UIHelper.BG_COLOR); - final JLabel confirm = new JLabel(okIcon, JLabel.RIGHT); - confirm.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton confirm = new FlatButton(ButtonType.GREEN, "Confirm"); + confirm.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("selectedDate", "OLD_VALUE", getSelectedDay()); setVisible(false); } - - public void mouseEntered(MouseEvent event) { - confirm.setIcon(okIconOver); - } - - public void mouseExited(MouseEvent event) { - confirm.setIcon(okIcon); - } }); - final JLabel discard = new JLabel(closeIcon, JLabel.LEFT); - discard.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton cancel = new FlatButton(ButtonType.RED, "Cancel"); + cancel.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("noneSelected", "", getSelectedDay()); setVisible(false); } - - public void mouseEntered(MouseEvent event) { - discard.setIcon(closeIconOver); - } - - public void mouseExited(MouseEvent event) { - discard.setIcon(closeIcon); - } }); - - buttonsCont.add(discard, BorderLayout.WEST); + buttonsCont.add(cancel, BorderLayout.WEST); buttonsCont.add(confirm, BorderLayout.EAST); add(buttonsCont, BorderLayout.SOUTH); diff --git a/src/main/java/org/isatools/isacreator/common/Globals.java b/src/main/java/org/isatools/isacreator/common/Globals.java deleted file mode 100644 index 0b6aedd5..00000000 --- a/src/main/java/org/isatools/isacreator/common/Globals.java +++ /dev/null @@ -1,56 +0,0 @@ -/** - ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) - - License: - ISAcreator is licensed under the Common Public Attribution License version 1.0 (CPAL) - - EXHIBIT A. CPAL version 1.0 - The contents of this file are subject to the CPAL version 1.0 (the License); - you may not use this file except in compliance with the License. You may obtain a - copy of the License at http://isa-tools.org/licenses/ISAcreator-license.html. - The License is based on the Mozilla Public License version 1.1 but Sections - 14 and 15 have been added to cover use of software over a computer network and - provide for limited attribution for the Original Developer. In addition, Exhibit - A has been modified to be consistent with Exhibit B. - - Software distributed under the License is distributed on an AS IS basis, - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for - the specific language governing rights and limitations under the License. - - The Original Code is ISAcreator. - The Original Developer is the Initial Developer. The Initial Developer of the - Original Code is the ISA Team (Eamonn Maguire, eamonnmag@gmail.com; - Philippe Rocca-Serra, proccaserra@gmail.com; Susanna-Assunta Sansone, sa.sanson@gmail.com; - http://www.isa-tools.org). All portions of the code written by the ISA Team are - Copyright (c) 2007-2011 ISA Team. All Rights Reserved. - - EXHIBIT B. Attribution Information - Attribution Copyright Notice: Copyright (c) 2008-2011 ISA Team - Attribution Phrase: Developed by the ISA Team - Attribution URL: http://www.isa-tools.org - Graphic Image provided in the Covered Code as file: http://isa-tools.org/licenses/icons/poweredByISAtools.png - Display of Attribution Information is required in Larger Works which are defined in the CPAL as a work which combines Covered Code or portions thereof with code not governed by the terms of the CPAL. - - Sponsors: - The ISA Team and the ISA software suite have been funded by the EU Carcinogenomics project (http://www.carcinogenomics.eu), the UK BBSRC (http://www.bbsrc.ac.uk), the UK NERC-NEBC (http://nebc.nerc.ac.uk) and in part by the EU NuGO consortium (http://www.nugo.org/everyone). - */ - - -package org.isatools.isacreator.common; - -import javax.swing.*; - -/** - * Globals - * - * @author Eamonn Maguire - * @date Dec 8, 2009 - */ - - -public class Globals { - public static final ImageIcon CLOSE_ICON = new ImageIcon(Globals.class.getResource("/images/common/close.png")); - public static final ImageIcon CLOSE_OVER_ICON = new ImageIcon(Globals.class.getResource("/images/common/close_over.png")); - public static final ImageIcon OK_ICON = new ImageIcon(Globals.class.getResource("/images/common/ok.png")); - public static final ImageIcon OK_OVER_ICON = new ImageIcon(Globals.class.getResource("/images/common/ok_over.png")); -} diff --git a/src/main/java/org/isatools/isacreator/common/UIHelper.java b/src/main/java/org/isatools/isacreator/common/UIHelper.java index 9a30451d..b83eb1d3 100644 --- a/src/main/java/org/isatools/isacreator/common/UIHelper.java +++ b/src/main/java/org/isatools/isacreator/common/UIHelper.java @@ -65,6 +65,19 @@ public class UIHelper { public static final Color LIGHT_GREY_COLOR = new Color(153, 153, 153); public static final Color LIGHT_GREEN_COLOR = new Color(140, 198, 63); public static final Color TRANSPARENT_LIGHT_GREEN_COLOR = new Color(140, 198, 63, 60); + + public static final Color EMERALD = new Color(79,186,111); + public static final Color NEPHRITIS = new Color(36,174,95); + public static final Color PETER_RIVER = new Color(52,152,219); + public static final Color BELIZE_HOLE = new Color(41,128,185); + public static final Color ASPHALT = new Color(52,73,94); + public static final Color MIDNIGHT = new Color(44,62,80); + public static final Color CARROT = new Color(230,126,34); + public static final Color PUMPKIN = new Color(211,84,0); + public static final Color ALIZARIN = new Color(240,76,60); + public static final Color POMEGRANATE = new Color(192,58,43); + + public static final Font VER_8_PLAIN = new Font("Verdana", Font.PLAIN, 8); public static final Font VER_8_BOLD = new Font("Verdana", Font.BOLD, 8); public static final Font VER_9_PLAIN = new Font("Verdana", Font.PLAIN, 9); @@ -79,7 +92,7 @@ public class UIHelper { public static final Font VER_14_BOLD = new Font("Verdana", Font.BOLD, 14); public static final Border STD_ETCHED_BORDER = new LineBorder(UIHelper.DARK_GREEN_COLOR, 1, true); - public static final Border EMPTY_BORDER = new EmptyBorder(0, 0, 0, 0); + public static final Border EMPTY_BORDER = new EmptyBorder(3, 3, 3, 3); public static final RoundedBorder GREEN_ROUNDED_BORDER = new RoundedBorder(UIHelper.LIGHT_GREEN_COLOR, 6); public static final RoundedBorder GREY_ROUNDED_BORDER = new RoundedBorder(UIHelper.GREY_COLOR, 6); public static final RoundedBorder DARK_GREEN_ROUNDED_BORDER = new RoundedBorder(UIHelper.DARK_GREEN_COLOR, 6); diff --git a/src/main/java/org/isatools/isacreator/common/button/ButtonType.java b/src/main/java/org/isatools/isacreator/common/button/ButtonType.java new file mode 100644 index 00000000..adc5b680 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/common/button/ButtonType.java @@ -0,0 +1,32 @@ +package org.isatools.isacreator.common.button; + +import org.isatools.isacreator.common.UIHelper; + +import java.awt.*; + + +public enum ButtonType { + + + BLUE(UIHelper.PETER_RIVER, UIHelper.BELIZE_HOLE), + GREEN(UIHelper.LIGHT_GREEN_COLOR, UIHelper.DARK_GREEN_COLOR), + RED(UIHelper.POMEGRANATE, UIHelper.ALIZARIN), + GREY(new Color(236,240,241), new Color(185,195,199)), + ORANGE(UIHelper.CARROT, UIHelper.PUMPKIN); + + private Color defaultColor; + private Color hoverColor; + + ButtonType(Color defaultColor, Color hoverColor) { + this.defaultColor = defaultColor; + this.hoverColor = hoverColor; + } + + public Color getDefaultColor() { + return defaultColor; + } + + public Color getHoverColor() { + return hoverColor; + } +} diff --git a/src/main/java/org/isatools/isacreator/common/button/FlatButton.java b/src/main/java/org/isatools/isacreator/common/button/FlatButton.java new file mode 100644 index 00000000..e28314fe --- /dev/null +++ b/src/main/java/org/isatools/isacreator/common/button/FlatButton.java @@ -0,0 +1,118 @@ +package org.isatools.isacreator.common.button; + +import org.isatools.isacreator.common.UIHelper; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; + +/** + * Created with IntelliJ IDEA. + * User: eamonnmaguire + * Date: 07/09/2013 + * Time: 14:00 + * To change this template use File | Settings | File Templates. + */ +public class FlatButton extends JButton implements MouseListener { + + private ButtonType type; + private Color fontColor; + private Font font; + + public FlatButton(ButtonType type, String text) { + this(type, text, Color.white); + + } + + public FlatButton(ButtonType type, String text, Color fontColor) { + this(type, text, fontColor, UIHelper.VER_12_BOLD); + } + + public FlatButton(ButtonType type, String text, Color fontColor, Font font) { + super(text); + this.type = type; + this.fontColor = fontColor; + this.font = font; + setForeground(Color.WHITE); + addMouseListener(this); + } + + @Override + public int getHeight() { + return super.getHeight()-4; //To change body of overridden methods use File | Settings | File Templates. + } + + public void paintComponent(Graphics graphics) { + + Graphics2D g = (Graphics2D) graphics.create(); + if (!isEnabled()) { + g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, .25f)); + } + if (getModel().isPressed() || getModel().isRollover()) { + g.setColor(type.getHoverColor()); + } else { + g.setColor(type.getDefaultColor()); + } + + + g.fillRect(0, 0, getWidth(), getHeight()); + + g.setColor(fontColor); + g.setFont(font); + FontMetrics fontMetrics = g.getFontMetrics(font); + + int width = fontMetrics.stringWidth(getText()); + int adjustment = (getWidth() - width) / 2; + g.drawString(getText(), adjustment, getHeight() - 9); + } + + @Override + protected void paintBorder(Graphics graphics) { + // do nothing. No border thank you. + } + + public static void main(String[] args) { + + JFrame testFrame = new JFrame("Test FlatButton"); + + testFrame.setSize(new Dimension(400, 400)); + + testFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + testFrame.setLayout(new BorderLayout()); + + JPanel container = new JPanel(); + + container.add(new FlatButton(ButtonType.RED, "Hi Lauren!")); + container.add(new FlatButton(ButtonType.BLUE, "Hi Annapaola!")); + container.add(new FlatButton(ButtonType.ORANGE, "Hi Paul!")); + + + testFrame.add(container); + testFrame.setLocationRelativeTo(null); + testFrame.pack(); + testFrame.setVisible(true); + } + + public void mouseClicked(MouseEvent mouseEvent) { + // + } + + public void mousePressed(MouseEvent mouseEvent) { + // To change body of implemented methods use File | Settings | File Templates. + } + + public void mouseReleased(MouseEvent mouseEvent) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public void mouseEntered(MouseEvent mouseEvent) { + setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); + } + + public void mouseExited(MouseEvent mouseEvent) { + setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); + } +} + + diff --git a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java index 10740a67..df10540a 100644 --- a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java +++ b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java @@ -170,7 +170,7 @@ private List getTableDefinitions() throws XmlException, IO return null; File[] configFiles = dir.listFiles(); - if (configFiles == null){ + if (configFiles == null) { log.error("The specified directory " + configDir + " is wrong!"); problemLog += "

There is a problem with the directory " + configDir + " as no files where found.

"; problemsEncountered = true; @@ -184,8 +184,9 @@ private List getTableDefinitions() throws XmlException, IO List configurations = new ArrayList(); for (File tableConfig : configFiles) { - if (!tableConfig.getName().startsWith(".")) { + if (!tableConfig.getName().startsWith(".")) { + log.info(tableConfig.getAbsolutePath() + " is being read."); IsaTabConfigFileType isa = parseFile(tableConfig); configurations.add(isa); } @@ -210,6 +211,8 @@ public void processTable(IsaTabConfigurationType isaConf) { String tableType = measurementInfo.getTermLabel().equalsIgnoreCase("[sample]") ? MappingObject.STUDY_SAMPLE : measurementInfo.getTermLabel().equalsIgnoreCase("[investigation]") ? MappingObject.INVESTIGATION : MappingObject.ASSAY_TYPE; + log.info("Processing " + isaConf.getTableName()); + MappingObject mo = new MappingObject(tableType, measurementInfo.getTermLabel(), measurementInfo.getSourceAbbreviation(), measurementInfo.getTermAccession(), @@ -238,6 +241,7 @@ public void processTable(IsaTabConfigurationType isaConf) { stdField.getIsRequired(), stdField.getIsMultipleValue(), stdField.getIsFileField(), stdField.getIsHidden(), stdField.getIsForcedOntology()); + log.info("Adding " + newField.getFieldName() + " to configuration."); newField.setWizardTemplate(StringProcessing.cleanUpString(stdField.getGeneratedValueTemplate())); if (stdField.getRecommendedOntologies() != null) { @@ -288,6 +292,8 @@ public void processTable(IsaTabConfigurationType isaConf) { protocolField.getIsRequired(), false, false); } + log.info("Adding protocol to configuration " + newField.getFieldName()); + newField.setWizardTemplate(newField.getWizardTemplate()); fields.add(newField); @@ -297,6 +303,8 @@ public void processTable(IsaTabConfigurationType isaConf) { } else if (obj instanceof UnitFieldType) { UnitFieldType unitField = (UnitFieldType) obj; + log.info("Adding unit to configuration."); + FieldObject newField = new FieldObject(colNo, "Unit", StringProcessing.cleanUpString(unitField.getDescription()), DataTypes.resolveDataType(unitField.getDataType()), unitField.getDefaultValue(), "", unitField.getIsRequired(), false, false, false, unitField.getIsForcedOntology()); @@ -312,7 +320,7 @@ public void processTable(IsaTabConfigurationType isaConf) { String[] valueList = values.split(","); newField.setFieldList(valueList); } else { - if(!values.isEmpty()) { + if (!values.isEmpty()) { newField.setFieldList(new String[]{values}); } } diff --git a/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java b/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java index ca95243f..6949d17f 100755 --- a/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java +++ b/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java @@ -192,7 +192,7 @@ public void maskOutMouseEvents() { */ public void showJDialogAsSheet(JDialog dialog) { sheet = (JComponent) dialog.getContentPane(); - sheet.setBorder(new LineBorder(UIHelper.LIGHT_GREEN_COLOR, 2)); + sheet.setBorder(new LineBorder(UIHelper.LIGHT_GREEN_COLOR, 1)); setupAnimation(); } diff --git a/src/main/java/org/isatools/isacreator/factorlevelentry/FactorLevelEntryGUI.java b/src/main/java/org/isatools/isacreator/factorlevelentry/FactorLevelEntryGUI.java index 7830d6ca..ca879530 100644 --- a/src/main/java/org/isatools/isacreator/factorlevelentry/FactorLevelEntryGUI.java +++ b/src/main/java/org/isatools/isacreator/factorlevelentry/FactorLevelEntryGUI.java @@ -43,6 +43,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.common.CustomTableHeaderRenderer; import org.isatools.isacreator.common.ExcelAdaptor; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.ontologyselectiontool.OntologyCellEditor; import org.isatools.isacreator.spreadsheet.SpreadsheetCellPoint; import org.isatools.isacreator.spreadsheet.SpreadsheetModel; @@ -447,15 +449,12 @@ private void updateCellEditors() { } private JPanel createButtonPanel() { - JPanel buttonPanel = new JPanel(new GridLayout(1, 2)); + JPanel buttonPanel = new JPanel(new BorderLayout()); + buttonPanel.setBorder(UIHelper.EMPTY_BORDER); - final JLabel ok = new JLabel(UIHelper.OK_BUTTON, JLabel.RIGHT); - ok.setOpaque(false); - ok.addMouseListener(new MouseListener() { - public void mouseClicked(MouseEvent event) { - } - - public void mousePressed(MouseEvent event) { + JButton ok = new FlatButton(ButtonType.GREEN, "Confirm"); + ok.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { if (checkLevelsAndUnits()) { firePropertyChange("changedFactorLevels", "OLD_VALUE", new LevelsAndUnits(getLevels(), getUnits())); rows.clear(); @@ -466,42 +465,16 @@ public void mousePressed(MouseEvent event) { status.setVisible(true); } } - - public void mouseReleased(MouseEvent event) { - } - - public void mouseEntered(MouseEvent event) { - ok.setIcon(UIHelper.OK_BUTTON_OVER); - } - - public void mouseExited(MouseEvent event) { - ok.setIcon(UIHelper.OK_BUTTON); - } }); - final JLabel cancel = new JLabel(UIHelper.CLOSE_BUTTON, JLabel.LEFT); - cancel.setOpaque(false); - cancel.addMouseListener(new MouseListener() { - public void mouseClicked(MouseEvent event) { - } - - public void mousePressed(MouseEvent event) { + JButton cancel = new FlatButton(ButtonType.RED, "Cancel"); + cancel.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("noChange", "canceled", ""); status.setVisible(false); rows.clear(); setVisible(false); } - - public void mouseReleased(MouseEvent event) { - } - - public void mouseEntered(MouseEvent event) { - cancel.setIcon(UIHelper.CLOSE_BUTTON_OVER); - } - - public void mouseExited(MouseEvent event) { - cancel.setIcon(UIHelper.CLOSE_BUTTON); - } }); buttonPanel.add(cancel); diff --git a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java index 9bee2665..051453b1 100755 --- a/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java +++ b/src/main/java/org/isatools/isacreator/filechooser/FileChooserUI.java @@ -40,8 +40,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import com.explodingpixels.macwidgets.IAppWidgetFactory; import org.apache.commons.net.ftp.FTPFile; import org.isatools.isacreator.common.CommonMouseAdapter; -import org.isatools.isacreator.common.Globals; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.AnimatableJFrame; import org.isatools.isacreator.effects.FooterPanel; import org.isatools.isacreator.effects.HUDTitleBar; @@ -533,26 +534,16 @@ public void mouseExited(MouseEvent event) { */ private JPanel createBottomPanel() { JPanel southPanel = new JPanel(new BorderLayout()); + southPanel.setBorder(UIHelper.EMPTY_BORDER); southPanel.setBackground(UIHelper.BG_COLOR); - final JLabel ok = new JLabel(Globals.OK_ICON); - ok.setHorizontalAlignment(JLabel.RIGHT); - ok.setOpaque(false); - ok.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton ok = new FlatButton(ButtonType.GREEN, "Select Files"); + ok.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("selectedFiles", "", selectedFiles.getSelectedValues()); setVisible(false); listModel.removeAllElements(); } - - public void mouseEntered(MouseEvent event) { - ok.setIcon(Globals.OK_OVER_ICON); - } - - public void mouseExited(MouseEvent event) { - ok.setIcon(Globals.OK_ICON); - } }); southPanel.add(ok, BorderLayout.EAST); @@ -1014,52 +1005,28 @@ public void createGUI() { // create button panel JPanel buttonPanel = new JPanel(new BorderLayout()); + buttonPanel.setBorder(UIHelper.EMPTY_BORDER); buttonPanel.setBackground(UIHelper.BG_COLOR); - final JLabel close = new JLabel(Globals.CLOSE_ICON); - close.setOpaque(false); - close.setHorizontalAlignment(JLabel.LEFT); - - close.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton close = new FlatButton(ButtonType.RED, "Cancel"); + close.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { closeAndDisposeWindow(); } - - public void mouseEntered(MouseEvent event) { - close.setIcon(Globals.CLOSE_OVER_ICON); - } - - public void mouseExited(MouseEvent event) { - close.setIcon(Globals.CLOSE_ICON); - } }); buttonPanel.add(close, BorderLayout.WEST); - final JLabel ok = new JLabel(Globals.OK_ICON); - ok.setHorizontalAlignment(JLabel.RIGHT); - ok.setOpaque(false); - ok.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton ok = new FlatButton(ButtonType.GREEN, "Ok"); + ok.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("locationSelected", "", locationList.getSelectedValue()); closeAndDisposeWindow(); } - - public void mouseEntered(MouseEvent event) { - ok.setIcon(Globals.OK_OVER_ICON); - } - - public void mouseExited(MouseEvent event) { - ok.setIcon(Globals.OK_ICON); - } }); buttonPanel.add(ok, BorderLayout.EAST); - container.add(buttonPanel); - add(container); pack(); diff --git a/src/main/java/org/isatools/isacreator/gs/gui/GSImportFilesMenu.java b/src/main/java/org/isatools/isacreator/gs/gui/GSImportFilesMenu.java index 3aa7eaf2..b0429bfc 100644 --- a/src/main/java/org/isatools/isacreator/gs/gui/GSImportFilesMenu.java +++ b/src/main/java/org/isatools/isacreator/gs/gui/GSImportFilesMenu.java @@ -6,6 +6,8 @@ import org.isatools.isacreator.autofilteringlist.ExtendedJList; import org.isatools.isacreator.common.ClearFieldUtility; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.gs.GSDataManager; import org.isatools.isacreator.gs.GSIdentityManager; import org.isatools.isacreator.gui.ISAcreator; @@ -20,6 +22,8 @@ import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; @@ -40,12 +44,12 @@ public class GSImportFilesMenu extends ImportFilesMenu { private static Logger log = Logger.getLogger(GSImportFilesMenu.class); @InjectedResource - private ImageIcon panelHeader, listImage, searchButton, searchButtonOver, - backButton, backButtonOver, loadButton, loadButtonOver, filterLeft, filterRight, searchButtonGS, searchButtonGSOver,gslistImage; + private ImageIcon panelHeader, listImage, + backButton, backButtonOver, filterLeft, filterRight, gslistImage; private JLabel back; private Container loadingImagePanel; - private JLabel chooseFromGS; + private JButton chooseFromGS; GSFileChooser gsFileChooser = null; GSDataManager gsDataManager = null; @@ -246,34 +250,6 @@ public void mouseExited(MouseEvent event) { return previousButtonPanel; } - @Override - public ImageIcon getSearchButton() { - return searchButton; - } - - @Override - public ImageIcon getSearchButtonOver() { - return searchButtonOver; - } - - public ImageIcon getSearchButtonGS() { - return searchButtonGS; - } - - public ImageIcon getSearchButtonGSOver() { - return searchButtonGSOver; - } - - @Override - public ImageIcon getLoadButton() { - return loadButton; - } - - @Override - public ImageIcon getLoadButtonOver() { - return loadButtonOver; - } - @Override public ImageIcon getLeftFilterImage() { return filterLeft; @@ -291,18 +267,11 @@ private Container createButtonPanel() { Box selectionPanel = Box.createHorizontalBox(); selectionPanel.setOpaque(false); - chooseFromElsewhere = new JLabel(getSearchButton(), - JLabel.LEFT); - chooseFromElsewhere.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - - // precautionary measure to stop double execution of action... - + chooseFromElsewhere = new FlatButton(ButtonType.GREEN, "Open Another..."); + chooseFromElsewhere.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { if (timeButtonLastClicked != System.currentTimeMillis()) { - chooseFromElsewhere.setIcon(getSearchButton()); - if (jfc.showOpenDialog(ApplicationManager.getCurrentApplicationInstance()) == JFileChooser.APPROVE_OPTION) { String directory = jfc.getSelectedFile().toString(); File dirFile = new File(directory + File.separator); @@ -317,27 +286,13 @@ public void mousePressed(MouseEvent event) { timeButtonLastClicked = System.currentTimeMillis(); } } - - - public void mouseEntered(MouseEvent event) { - chooseFromElsewhere.setIcon(getSearchButtonOver()); - } - - public void mouseExited(MouseEvent event) { - chooseFromElsewhere.setIcon(getSearchButton()); - } }); - - chooseFromGS = new JLabel(getSearchButtonGS(), - JLabel.CENTER); - chooseFromGS.addMouseListener(new MouseAdapter() { - public void mousePressed(MouseEvent event) { - // precautionary measure to stop double execution of action... + chooseFromGS = new FlatButton(ButtonType.BLUE, "Load from GenomeSpace"); + chooseFromGS.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { if (timeButtonLastClicked != System.currentTimeMillis()) { - chooseFromGS.setIcon(getSearchButtonGS()); - gsFileChooser = new GSFileChooser(menu, GSFileChooser.GSFileChooserMode.OPEN); gsFileChooser.addPropertyChangeListener("selectedFileMetadata", new PropertyChangeListener() { @@ -351,33 +306,13 @@ public void propertyChange(PropertyChangeEvent event) { timeButtonLastClicked = System.currentTimeMillis(); } } - - - public void mouseEntered(MouseEvent event) { - chooseFromGS.setIcon(getSearchButtonGSOver()); - } - - public void mouseExited(MouseEvent event) { - chooseFromGS.setIcon(getSearchButtonGS()); - } }); - loadSelected = new JLabel(getLoadButton(), - JLabel.CENTER); - loadSelected.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - loadSelected.setIcon(getLoadButton()); + loadSelected = new FlatButton(ButtonType.GREEN, "Load File"); + loadSelected.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { getSelectedFileAndLoad(); } - - public void mouseEntered(MouseEvent event) { - loadSelected.setIcon(getLoadButtonOver()); - } - - public void mouseExited(MouseEvent event) { - loadSelected.setIcon(getLoadButton()); - } }); selectionPanel.add(chooseFromElsewhere); diff --git a/src/main/java/org/isatools/isacreator/gui/AddStudyDialog.java b/src/main/java/org/isatools/isacreator/gui/AddStudyDialog.java index 7393096a..774fde6d 100755 --- a/src/main/java/org/isatools/isacreator/gui/AddStudyDialog.java +++ b/src/main/java/org/isatools/isacreator/gui/AddStudyDialog.java @@ -39,6 +39,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.components.RoundedJTextField; import org.isatools.isacreator.managers.ApplicationManager; import org.jdesktop.fuse.InjectedResource; @@ -46,11 +48,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import javax.swing.border.EmptyBorder; +import javax.swing.border.LineBorder; import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.FocusAdapter; -import java.awt.event.FocusEvent; -import java.awt.event.MouseEvent; +import java.awt.event.*; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -60,12 +60,10 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class AddStudyDialog extends JDialog { @InjectedResource - private ImageIcon addStudyHeader, addStudyButton, addStudyButtonOver, - closeButton, closeButtonOver; + private ImageIcon addStudyHeader; private DataEntryEnvironment dataEntryEnvironment; - private JLabel add; - private JLabel close; + private JButton add, close; private JLabel status; private JTextField name; private String type; @@ -151,48 +149,23 @@ public void actionPerformed(ActionEvent e) { private JPanel createButtonPanel() { JPanel buttonCont = new JPanel(new BorderLayout()); buttonCont.setBackground(UIHelper.BG_COLOR); + buttonCont.setBorder(new EmptyBorder(4,4,4,4)); - - add = new JLabel(addStudyButton, - JLabel.RIGHT); - add.addMouseListener(new CommonMouseAdapter() { - - public void mousePressed(MouseEvent event) { - super.mousePressed(event); - add.setIcon(addStudyButton); + add = new FlatButton(ButtonType.GREEN, "Add Study"); + add.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { addStudy(); } - - public void mouseEntered(MouseEvent event) { - super.mouseEntered(event); - add.setIcon(addStudyButtonOver); - } - - public void mouseExited(MouseEvent event) { - super.mouseExited(event); - add.setIcon(addStudyButton); - } }); - close = new JLabel(closeButton, - JLabel.LEFT); - close.addMouseListener(new CommonMouseAdapter() { - public void mousePressed(MouseEvent event) { - super.mousePressed(event); + + close = new FlatButton(ButtonType.RED, "Cancel"); + close.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { status.setText(""); hideMe(); } - - public void mouseEntered(MouseEvent event) { - super.mouseEntered(event); - close.setIcon(closeButtonOver); - } - - public void mouseExited(MouseEvent event) { - super.mouseExited(event); - close.setIcon(closeButton); - } }); buttonCont.add(close, BorderLayout.WEST); diff --git a/src/main/java/org/isatools/isacreator/gui/HistoricalSelectionGUI.java b/src/main/java/org/isatools/isacreator/gui/HistoricalSelectionGUI.java index 62a58ee0..2c630e9e 100644 --- a/src/main/java/org/isatools/isacreator/gui/HistoricalSelectionGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/HistoricalSelectionGUI.java @@ -41,8 +41,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.autofilteringlist.ExtendedJList; import org.isatools.isacreator.autofilteringlist.FilterableListCellRenderer; import org.isatools.isacreator.common.ClearFieldUtility; -import org.isatools.isacreator.common.Globals; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.FooterPanel; import org.isatools.isacreator.effects.HUDTitleBar; import org.isatools.isacreator.gui.formelements.FieldTypes; @@ -311,25 +312,16 @@ public void instantiatePanel() { // need button panel to allow for selection of terms, or to cancel/close JPanel buttonPanel = new JPanel(new BorderLayout()); + buttonPanel.setBorder(UIHelper.EMPTY_BORDER); buttonPanel.setBackground(UIHelper.BG_COLOR); - final JLabel okButton = new JLabel(Globals.OK_ICON, - JLabel.RIGHT); - okButton.setOpaque(false); - okButton.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton okButton = new FlatButton(ButtonType.GREEN, "Select"); + okButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("selectedTerms", "", "values selected"); } - - public void mouseEntered(MouseEvent event) { - okButton.setIcon(Globals.OK_OVER_ICON); - } - - public void mouseExited(MouseEvent event) { - okButton.setIcon(Globals.OK_ICON); - } }); + buttonPanel.add(okButton, BorderLayout.EAST); southPanel.add(buttonPanel); diff --git a/src/main/java/org/isatools/isacreator/gui/SaveAsDialog.java b/src/main/java/org/isatools/isacreator/gui/SaveAsDialog.java index 49114ff6..b4cb9a3c 100644 --- a/src/main/java/org/isatools/isacreator/gui/SaveAsDialog.java +++ b/src/main/java/org/isatools/isacreator/gui/SaveAsDialog.java @@ -46,6 +46,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.gui; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.components.RoundedJTextField; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; @@ -69,8 +71,7 @@ public class SaveAsDialog extends JDialog { private RoundedJTextField fileName; @InjectedResource - private ImageIcon dialogHeader, closeButton, closeButtonOver, - saveSubmission, saveSubmissionOver; + private ImageIcon dialogHeader; public SaveAsDialog() { ResourceInjector.get("gui-package.style").inject(this); @@ -155,43 +156,22 @@ public void actionPerformed(ActionEvent e) { private void createAndAddSouthPanel() { // setup south panel with buttons and so forth :o) JPanel southPanel = new JPanel(new BorderLayout()); + southPanel.setBorder(UIHelper.EMPTY_BORDER); southPanel.setBackground(UIHelper.BG_COLOR); - final JLabel close = new JLabel(closeButton, - JLabel.LEFT); - close.setOpaque(false); - close.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton close = new FlatButton(ButtonType.RED, "Cancel"); + close.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("windowClosed", "", "none"); } - - public void mouseEntered(MouseEvent event) { - close.setIcon(closeButtonOver); - } - - public void mouseExited(MouseEvent event) { - close.setIcon(closeButton); - } }); - final JLabel save = new JLabel(saveSubmission, - JLabel.RIGHT); - save.setOpaque(false); - save.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton save = new FlatButton(ButtonType.GREEN, "Save"); + save.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { save(fileName.getText().trim()); } - - public void mouseEntered(MouseEvent event) { - save.setIcon(saveSubmissionOver); - } - - public void mouseExited(MouseEvent event) { - save.setIcon(saveSubmission); - } }); southPanel.add(close, BorderLayout.WEST); diff --git a/src/main/java/org/isatools/isacreator/gui/formelements/FactorSubForm.java b/src/main/java/org/isatools/isacreator/gui/formelements/FactorSubForm.java index 963200c9..a17df702 100644 --- a/src/main/java/org/isatools/isacreator/gui/formelements/FactorSubForm.java +++ b/src/main/java/org/isatools/isacreator/gui/formelements/FactorSubForm.java @@ -120,8 +120,6 @@ public void updateItems() { Map record = getRecord(recordNumber); -// record.put(Factor.FACTOR_TYPE, record.get(Factor.FACTOR_NAME)); - Factor factor = new Factor(); factor.addToFields(record); @@ -155,61 +153,4 @@ public void valueChanged(ListSelectionEvent event) { } } } - -// @Override -// public String toString() { -// update(); -// -// System.out.println("Outputting using new factor output code..."); -// -// StringBuilder output = new StringBuilder(); -// output.append(InvestigationFileSection.STUDY_FACTORS).append("\n"); -// -// Map> valuesToOutput = new HashMap>(); -// -// int cols = dtm.getColumnCount(); -// -// for (int recordNumber = 1; recordNumber < cols; recordNumber++) { -// -// Map record = getRecord(recordNumber); -// -// Map> ontologyTerms = IOUtils.getOntologyTerms(record.keySet()); -// -// // now, do ontology processing -// for (int fieldHashCode : ontologyTerms.keySet()) { -// -// Map ontologyField = ontologyTerms.get(fieldHashCode); -// -// Map processedOntologyField = IOUtils.processOntologyField(ontologyField, record); -// record.put(ontologyField.get(IOUtils.TERM), processedOntologyField.get(ontologyField.get(IOUtils.TERM))); -// record.put(ontologyField.get(IOUtils.ACCESSION), processedOntologyField.get(ontologyField.get(IOUtils.ACCESSION))); -// record.put(ontologyField.get(IOUtils.SOURCE_REF), processedOntologyField.get(ontologyField.get(IOUtils.SOURCE_REF))); -// } -// -// for (String fieldName : record.keySet()) { -// if (!valuesToOutput.containsKey(fieldName)) { -// valuesToOutput.put(fieldName, new ArrayList()); -// } -// -// valuesToOutput.get(fieldName).add(StringProcessing.cleanUpString(record.get(fieldName))); -// } -// } -// -// // now output the values. -// for (String fieldName : valuesToOutput.keySet()) { -// output.append(fieldName).append("\t"); -// -// for (int outputCount = 0; outputCount < valuesToOutput.get(fieldName).size(); outputCount++) { -// -// output.append(valuesToOutput.get(fieldName).get(outputCount)); -// if (outputCount != valuesToOutput.get(fieldName).size() - 1) { -// output.append("\t"); -// } -// -// } -// output.append("\n"); -// } -// -// return output.toString(); -// } } diff --git a/src/main/java/org/isatools/isacreator/gui/menu/AbstractImportFilesMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/AbstractImportFilesMenu.java index 1bcdf079..f73e2104 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/AbstractImportFilesMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/AbstractImportFilesMenu.java @@ -41,12 +41,16 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.autofilteringlist.ExtendedJList; import org.isatools.isacreator.common.ClearFieldUtility; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.managers.ApplicationManager; import javax.swing.*; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.io.File; @@ -71,7 +75,7 @@ public abstract class AbstractImportFilesMenu extends MenuUIComponent { protected long timeButtonLastClicked = System.currentTimeMillis(); - protected JLabel chooseFromElsewhere, loadSelected; + protected JButton chooseFromElsewhere, loadSelected; protected boolean showProblemArea; public AbstractImportFilesMenu(ISAcreatorMenu menu) { @@ -179,18 +183,11 @@ private JPanel createButtonPanel() { JPanel selectionPanel = new JPanel(new BorderLayout()); selectionPanel.setOpaque(false); - chooseFromElsewhere = new JLabel(getSearchButton(), - JLabel.LEFT); - chooseFromElsewhere.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - - // precautionary meaaure to stop double execution of action... - + chooseFromElsewhere = new FlatButton(ButtonType.GREEN, "Open Another..."); + chooseFromElsewhere.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { if (timeButtonLastClicked != System.currentTimeMillis()) { - chooseFromElsewhere.setIcon(getSearchButton()); - if (jfc.showOpenDialog(ApplicationManager.getCurrentApplicationInstance()) == JFileChooser.APPROVE_OPTION) { String directory = jfc.getSelectedFile().toString(); @@ -207,34 +204,16 @@ public void mousePressed(MouseEvent event) { timeButtonLastClicked = System.currentTimeMillis(); } - } - - public void mouseEntered(MouseEvent event) { - chooseFromElsewhere.setIcon(getSearchButtonOver()); - } - - public void mouseExited(MouseEvent event) { - chooseFromElsewhere.setIcon(getSearchButton()); } }); - loadSelected = new JLabel(getLoadButton(), - JLabel.RIGHT); - loadSelected.addMouseListener(new MouseAdapter() { - public void mousePressed(MouseEvent event) { - loadSelected.setIcon(getLoadButton()); + loadSelected = new FlatButton(ButtonType.GREEN, "Load File"); + loadSelected.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { getSelectedFileAndLoad(); } - - public void mouseEntered(MouseEvent event) { - loadSelected.setIcon(getLoadButtonOver()); - } - - public void mouseExited(MouseEvent event) { - loadSelected.setIcon(getLoadButton()); - } }); selectionPanel.add(chooseFromElsewhere, BorderLayout.WEST); @@ -244,7 +223,7 @@ public void mouseExited(MouseEvent event) { } protected JPanel createProblemDisplay() { - // todo change with table view from validator etc. + JPanel problemCont = new JPanel(new GridLayout(1, 1)); problemCont.setOpaque(false); @@ -282,14 +261,6 @@ protected JPanel createProblemDisplay() { public abstract JPanel createAlternativeExitDisplay(); - public abstract ImageIcon getSearchButton(); - - public abstract ImageIcon getSearchButtonOver(); - - public abstract ImageIcon getLoadButton(); - - public abstract ImageIcon getLoadButtonOver(); - public abstract ImageIcon getLeftFilterImage(); public abstract ImageIcon getRightFilterImage(); diff --git a/src/main/java/org/isatools/isacreator/gui/menu/AuthenticationMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/AuthenticationMenu.java index 9fc1d5ca..2d640b41 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/AuthenticationMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/AuthenticationMenu.java @@ -41,6 +41,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.api.Authentication; import org.isatools.isacreator.api.ImportConfiguration; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.components.RoundedJPasswordField; import org.isatools.isacreator.effects.components.RoundedJTextField; import org.isatools.isacreator.launch.ISAcreatorCLArgs; @@ -49,6 +51,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -63,19 +66,14 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ public class AuthenticationMenu extends MenuUIComponent { - private static final Logger log = Logger.getLogger(AuthenticationMenu.class); - private JLabel status; private JPasswordField password; private JTextField username; - private JLabel createProfile, login, exit; - private Authentication authentication = null; @InjectedResource - public ImageIcon pleaseLogin, loginButton, loginButtonOver, createProfileButton, - createProfileButtonOver, exitButtonSml, exitButtonSmlOver; + public ImageIcon pleaseLogin; /** * Constructor @@ -152,56 +150,28 @@ public void createGUI() { JLabel.RIGHT), BorderLayout.NORTH); northPanel.add(fields, BorderLayout.CENTER); - JPanel southPanel = new JPanel(new GridLayout(4, 1)); - southPanel.setOpaque(false); - - JPanel buttonContainer = new JPanel(new GridLayout(1, 2)); + JPanel buttonContainer = new JPanel(new BorderLayout()); buttonContainer.setOpaque(false); - createProfile = new JLabel(createProfileButton, - JLabel.LEFT); - createProfile.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - createProfile.setIcon(createProfileButton); - + JButton createProfile = new FlatButton(ButtonType.GREEN, "Create a new profile"); + createProfile.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { clearFields(); - confirmExitPanel.setVisible(false); - menu.changeView(menu.getCreateProfileGUI()); } - - public void mouseEntered(MouseEvent event) { - createProfile.setIcon(createProfileButtonOver); - } - - public void mouseExited(MouseEvent event) { - createProfile.setIcon(createProfileButton); - } }); - buttonContainer.add(createProfile); - - login = new JLabel(loginButton, - JLabel.RIGHT); - login.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - login.setIcon(AuthenticationMenu.this.loginButton); + buttonContainer.add(createProfile, BorderLayout.WEST); + JButton login = new FlatButton(ButtonType.GREEN, "Log in"); + login.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { confirmExitPanel.setVisible(false); login(); } - - public void mouseEntered(MouseEvent event) { - login.setIcon(loginButtonOver); - } - - public void mouseExited(MouseEvent event) { - login.setIcon(AuthenticationMenu.this.loginButton); - } }); + Action loginAction = new AbstractAction() { public void actionPerformed(ActionEvent e) { login(); @@ -213,40 +183,14 @@ public void actionPerformed(ActionEvent e) { username.getInputMap().put(KeyStroke.getKeyStroke("ENTER"), "LOGIN"); username.getActionMap().put("LOGIN", loginAction); - buttonContainer.add(login); - - southPanel.add(status); - southPanel.add(buttonContainer); - - exit = new JLabel(exitButtonSml, - JLabel.CENTER); - exit.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - exit.setIcon(exitButtonSml); - confirmExitPanel.setVisible(true); - confirmExitPanel.getParent().validate(); - } - - public void mouseEntered(MouseEvent event) { - exit.setIcon(exitButtonSmlOver); - } + buttonContainer.add(login, BorderLayout.EAST); - public void mouseExited(MouseEvent event) { - exit.setIcon(exitButtonSml); - } - }); - - JPanel exitContainer = new JPanel(new GridLayout(1, 1)); - exitContainer.setOpaque(false); - - exitContainer.add(exit); - - southPanel.add(exitContainer); + fields.add(UIHelper.wrapComponentInPanel(status)); + fields.add(Box.createVerticalStrut(10)); + fields.add(buttonContainer); + fields.add(Box.createVerticalStrut(10)); - southPanel.add(confirmExitPanel); - northPanel.add(southPanel, BorderLayout.SOUTH); northPanel.setOpaque(false); add(northPanel, BorderLayout.CENTER); diff --git a/src/main/java/org/isatools/isacreator/gui/menu/CreateISATABMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/CreateISATABMenu.java index e0035a3b..a13e8a8e 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/CreateISATABMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/CreateISATABMenu.java @@ -37,6 +37,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.gui.menu; +import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.formatmappingutility.ui.MappingUtilView; import org.isatools.isacreator.gui.DataEntryEnvironment; import org.isatools.isacreator.gui.modeselection.Mode; @@ -91,10 +92,10 @@ public void createGUI() { createUsingWizard = new JLabel(useWizardButton, JLabel.LEFT); - createUsingWizard.addMouseListener(new MouseAdapter() { + createUsingWizard.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { - + super.mousePressed(event); SwingUtilities.invokeLater(new Runnable() { public void run() { Wizard wizard = new Wizard(menu); @@ -107,20 +108,22 @@ public void run() { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); createUsingWizard.setIcon(useWizardButtonOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); createUsingWizard.setIcon(useWizardButton); } }); createUsingMapper = new JLabel(useMapperButton, JLabel.LEFT); - createUsingMapper.addMouseListener(new MouseAdapter() { + createUsingMapper.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { - + super.mousePressed(event); SwingUtilities.invokeLater(new Runnable() { public void run() { @@ -134,10 +137,12 @@ public void run() { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); createUsingMapper.setIcon(useMapperButtonOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); createUsingMapper.setIcon(useMapperButton); } }); @@ -145,18 +150,20 @@ public void mouseExited(MouseEvent event) { createManual = new JLabel(createManuallyButton, JLabel.LEFT); - createManual.addMouseListener(new MouseAdapter() { + createManual.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { - + super.mousePressed(event); createNewISAtabEditView(); } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); createManual.setIcon(createManuallyButtonOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); createManual.setIcon(createManuallyButton); } }); @@ -164,18 +171,21 @@ public void mouseExited(MouseEvent event) { back = new JLabel(backButton, JLabel.LEFT); - back.addMouseListener(new MouseAdapter() { + back.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); back.setIcon(backButton); menu.changeView(menu.getMainMenuGUI()); } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); back.setIcon(backButtonOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); back.setIcon(backButton); } }); diff --git a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java index 503d44ad..99a30480 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java @@ -40,6 +40,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.api.CreateProfile; import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.components.RoundedJPasswordField; import org.isatools.isacreator.launch.ISAcreatorCLArgs; import org.jdesktop.fuse.InjectedResource; @@ -47,6 +49,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -61,10 +64,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class CreateProfileMenu extends UserCreationMenu { - @InjectedResource - private ImageIcon createProfileButton, createProfileButtonOver, backButtonSml, backButtonSmlOver; - private JLabel createProfile, backButton; + private JButton createProfile, backButton; private JTextField firstnameVal; private JTextField institutionVal; @@ -131,48 +132,22 @@ public void actionPerformed(ActionEvent e) { buttonContainer.add(back, BorderLayout.WEST); - createProfile = new JLabel(createProfileButton, - JLabel.RIGHT); - createProfile.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - createProfile.setIcon(createProfileButton); + createProfile = new FlatButton(ButtonType.GREEN, "Save"); + createProfile.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { createProfile(); } - - public void mouseEntered(MouseEvent event) { - createProfile.setIcon(createProfileButtonOver); - } - - public void mouseExited(MouseEvent event) { - createProfile.setIcon(createProfileButton); - } }); - backButton = new JLabel(backButtonSml, JLabel.LEFT); - backButton.addMouseListener(new CommonMouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - super.mouseEntered(mouseEvent); - backButton.setIcon(backButtonSmlOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - super.mouseExited(mouseEvent); - backButton.setIcon(backButtonSml); - } - @Override - public void mousePressed(MouseEvent mouseEvent) { - super.mousePressed(mouseEvent); + backButton = new FlatButton(ButtonType.GREY, "Back", UIHelper.GREY_COLOR); + backButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { menu.changeView(menu.getAuthenticationGUI()); - backButton.setIcon(backButtonSml); } }); - buttonContainer.add(backButton, BorderLayout.WEST); buttonContainer.add(createProfile, BorderLayout.EAST); diff --git a/src/main/java/org/isatools/isacreator/gui/menu/ExitConfirmationPanel.java b/src/main/java/org/isatools/isacreator/gui/menu/ExitConfirmationPanel.java index 15dc4367..fb95ec74 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/ExitConfirmationPanel.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/ExitConfirmationPanel.java @@ -38,8 +38,12 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.gui.menu; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import javax.swing.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -72,24 +76,20 @@ private void createGUI() { JLabel.LEFT); UIHelper.renderComponent(existLab, UIHelper.VER_12_BOLD, UIHelper.DARK_GREEN_COLOR, false); - JLabel yesOption = new JLabel("YES"); - yesOption.addMouseListener(new MouseAdapter() { - public void mousePressed(MouseEvent event) { + JButton yesOption = new FlatButton(ButtonType.GREEN, "Yes"); + yesOption.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { System.exit(0); } }); - yesOption.setForeground(UIHelper.DARK_GREEN_COLOR); - yesOption.setFont(UIHelper.VER_12_BOLD); - JLabel noOption = new JLabel("NO"); - noOption.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton noOption = new FlatButton(ButtonType.RED, "No"); + noOption.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { ExitConfirmationPanel.this.setVisible(false); ExitConfirmationPanel.this.revalidate(); } }); - UIHelper.renderComponent(noOption, UIHelper.VER_12_BOLD, UIHelper.RED_COLOR, false); confirmExitPanel.add(existLab); confirmExitPanel.add(Box.createVerticalStrut(10)); diff --git a/src/main/java/org/isatools/isacreator/gui/menu/ImportConfigurationMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/ImportConfigurationMenu.java index 119110f5..d18149e4 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/ImportConfigurationMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/ImportConfigurationMenu.java @@ -42,6 +42,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.errorreporter.model.FileType; import org.isatools.errorreporter.model.ISAFileErrorReport; import org.isatools.isacreator.api.ImportConfiguration; +import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.gs.GSLocalFilesManager; import org.isatools.isacreator.gui.ISAcreator; import org.isatools.isacreator.gui.modeselection.Mode; @@ -53,6 +56,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.io.File; @@ -64,20 +69,18 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi /** * ImportFilesMenu provides the interface to allow users to import previously saved ISATAB * submissions into the software for editing/viewing. - * + *

* Date: Mar 3, 2010 * * @author eamonnmaguire * @author Alejandra Gonzalez-Beltran - * */ public class ImportConfigurationMenu extends AbstractImportFilesMenu { private static Logger log = Logger.getLogger(ImportConfigurationMenu.class); @InjectedResource - private ImageIcon panelHeader, listImage, searchButton, searchButtonOver, - loadButton, loadButtonOver, exitButtonSml, exitButtonSmlOver, filterLeft, filterRight; + private ImageIcon panelHeader, listImage, filterLeft, filterRight; //private boolean initialLoadingPassed = true; @@ -87,35 +90,7 @@ public ImportConfigurationMenu(ISAcreatorMenu menu) { } public JPanel createAlternativeExitDisplay() { - - final JLabel exit = new JLabel(exitButtonSml, JLabel.CENTER); - exit.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - exit.setIcon(exitButtonSml); - confirmExitPanel.setVisible(true); - confirmExitPanel.getParent().validate(); - } - - public void mouseEntered(MouseEvent event) { - exit.setIcon(exitButtonSmlOver); - } - - public void mouseExited(MouseEvent event) { - exit.setIcon(exitButtonSml); - } - }); - - JPanel exitCont = new JPanel(new GridLayout(1, 1)); - exitCont.setOpaque(false); - exitCont.add(exit); - - JPanel exitPanelContainer = new JPanel(new GridLayout(1, 1)); - exitPanelContainer.add(confirmExitPanel); - - add(exitPanelContainer, BorderLayout.SOUTH); - - return exitCont; + return new JPanel(); } public void getSelectedFileAndLoad() { @@ -163,13 +138,13 @@ public void run() { menu.resetViewAfterProgress(); menu.hideGlassPane(); - if (ISAcreatorCLArgs.mode()== Mode.GS ){ + if (ISAcreatorCLArgs.mode() == Mode.GS) { - if (ISAcreatorCLArgs.isatabDir()!=null || ISAcreatorCLArgs.isatabFiles()!=null){ + if (ISAcreatorCLArgs.isatabDir() != null || ISAcreatorCLArgs.isatabFiles() != null) { - List errors = GSLocalFilesManager.downloadFiles(menu.getAuthentication()); + List errors = GSLocalFilesManager.downloadFiles(menu.getAuthentication()); - if (!errors.isEmpty()){ + if (!errors.isEmpty()) { ISAFileErrorReport error = new ISAFileErrorReport("", FileType.INVESTIGATION, errors); java.util.List list = new ArrayList(); @@ -182,16 +157,16 @@ public void run() { menu.loadFiles(ISAcreatorCLArgs.isatabDir(), true); } - } else { + } else { //the ISAtab files were not given as parameter, show main menu menu.changeView(menu.getMainMenuGUI()); - } + } - } else{ + } else { //mode is not GS - if (ISAcreatorCLArgs.isatabDir()!=null){ + if (ISAcreatorCLArgs.isatabDir() != null) { menu.loadFiles(ISAcreatorCLArgs.isatabDir(), true); - }else { + } else { menu.changeView(menu.getMainMenuGUI()); } } @@ -202,7 +177,7 @@ public void run() { } } - ); + ); } } ); @@ -221,22 +196,22 @@ public File[] getPreviousFiles() { previousFiles = f.listFiles(); - if (previousFiles.length==0){ + if (previousFiles.length == 0) { String configurationFilesLocation = PropertyFileIO.retrieveDefaultSettings().getProperty("configurationFilesLocation"); String tmpDirectory = GeneralUtils.createTmpDirectory("Configurations"); - String downloadedFile = tmpDirectory+"config.zip"; + String downloadedFile = tmpDirectory + "config.zip"; boolean downloaded = DownloadUtils.downloadFile(configurationFilesLocation, downloadedFile); - System.out.println("downloadedFile="+downloadedFile); - ISAcreator.DEFAULT_CONFIGURATIONS_DIRECTORY = tmpDirectory; - try{ + System.out.println("downloadedFile=" + downloadedFile); + ISAcreator.DEFAULT_CONFIGURATIONS_DIRECTORY = tmpDirectory; + try { String unzipped = GeneralUtils.unzip(downloadedFile); - System.out.println("Configurations downloaded and unzipped ="+unzipped); + System.out.println("Configurations downloaded and unzipped =" + unzipped); f = new File(ISAcreator.DEFAULT_CONFIGURATIONS_DIRECTORY); previousFiles = f.listFiles(); - }catch(IOException ex){ + } catch (IOException ex) { ex.printStackTrace(); } @@ -264,22 +239,6 @@ public void setListRenderer() { previousFileList.setCellRenderer(new ImportFilesListCellRenderer(listImage)); } - public ImageIcon getSearchButton() { - return searchButton; - } - - public ImageIcon getSearchButtonOver() { - return searchButtonOver; - } - - public ImageIcon getLoadButton() { - return loadButton; - } - - public ImageIcon getLoadButtonOver() { - return loadButtonOver; - } - @Override public ImageIcon getLeftFilterImage() { return filterLeft; @@ -291,6 +250,4 @@ public ImageIcon getRightFilterImage() { } - - } diff --git a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java index 9897945c..caa18f3f 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java @@ -43,6 +43,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.errorreporter.model.FileType; import org.isatools.errorreporter.model.ISAFileErrorReport; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.gui.ISAcreator; import org.isatools.isacreator.gui.io.importisa.ISAtabFilesImporterFromGUI; import org.isatools.isacreator.io.importisa.ISAtabImporter; @@ -52,6 +54,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.io.File; @@ -70,16 +74,14 @@ public class ImportFilesMenu extends AbstractImportFilesMenu { private static Logger log = Logger.getLogger(ImportFilesMenu.class); @InjectedResource - private ImageIcon panelHeader, listImage, searchButton, searchButtonOver, - loadButton, loadButtonOver, backButton, backButtonOver, filterLeft, filterRight; + private ImageIcon panelHeader, listImage, backButton, backButtonOver, filterLeft, filterRight; - private JLabel back; + private JButton back; private Container loadingImagePanel; public ImportFilesMenu(ISAcreatorMenu menu) { super(menu, false); - setPreferredSize(new Dimension(400, 400)); } public JPanel createAlternativeExitDisplay() { @@ -87,28 +89,16 @@ public JPanel createAlternativeExitDisplay() { JPanel previousButtonPanel = new JPanel(new GridLayout(1, 1)); previousButtonPanel.setOpaque(false); - back = new JLabel(backButton, JLabel.LEFT); - back.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - + back = new FlatButton(ButtonType.GREY, "Back", UIHelper.DARK_GREEN_COLOR); + back.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { if (problemScroll != null) problemScroll.setVisible(false); ApplicationManager.getCurrentApplicationInstance().setGlassPanelContents(menu.getMainMenuGUI()); } - - public void mouseEntered(MouseEvent event) { - back.setIcon(backButtonOver); - } - - public void mouseExited(MouseEvent event) { - back.setIcon(backButton); - } }); - back.setOpaque(false); - previousButtonPanel.add(back); return previousButtonPanel; @@ -154,24 +144,6 @@ private Container createLoadingImagePanel() { return loadingImagePanel; } - - public ImageIcon getSearchButton() { - return searchButton; - } - - public ImageIcon getSearchButtonOver() { - return searchButtonOver; - } - - public ImageIcon getLoadButton() { - return loadButton; - } - - public ImageIcon getLoadButtonOver() { - return loadButtonOver; - } - - public void loadFile(final String dir) { diff --git a/src/main/java/org/isatools/isacreator/gui/menu/MainMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/MainMenu.java index b0a9d476..bccd7ea5 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/MainMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/MainMenu.java @@ -37,6 +37,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.gui.menu; +import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.gui.modeselection.Mode; import org.isatools.isacreator.io.UserProfileManager; import org.isatools.isacreator.managers.ApplicationManager; @@ -98,19 +99,22 @@ public void createGUI() { newISA = new JLabel(createNew, JLabel.LEFT); - newISA.addMouseListener(new MouseAdapter() { + newISA.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); newISA.setIcon(createNew); confirmExitPanel.setVisible(false); menu.changeView(menu.getCreateISAMenuGUI()); } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); newISA.setIcon(createNewOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); newISA.setIcon(createNew); } }); @@ -119,9 +123,10 @@ public void mouseExited(MouseEvent event) { loadPrev = new JLabel(loadExisting, JLabel.LEFT); - loadPrev.addMouseListener(new MouseAdapter() { + loadPrev.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); loadPrev.setIcon(loadExisting); confirmExitPanel.setVisible(false); menu.getImportISAGUI().getPreviousFiles(); @@ -129,10 +134,12 @@ public void mousePressed(MouseEvent event) { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); loadPrev.setIcon(loadExistingOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); loadPrev.setIcon(loadExisting); } }); @@ -141,9 +148,10 @@ public void mouseExited(MouseEvent event) { merge = new JLabel(mergeFiles, JLabel.LEFT); - merge.addMouseListener(new MouseAdapter() { + merge.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); merge.setIcon(mergeFiles); confirmExitPanel.setVisible(false); menu.getMergeStudiesGUI().createGUI(); @@ -152,10 +160,12 @@ public void mousePressed(MouseEvent event) { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); merge.setIcon(mergeFilesOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); merge.setIcon(mergeFiles); } }); @@ -165,9 +175,10 @@ public void mouseExited(MouseEvent event) { if (ApplicationManager.getCurrentApplicationInstance().getMode() == Mode.NORMAL_MODE) { settingsButton = new JLabel(settings, JLabel.LEFT); - settingsButton.addMouseListener(new MouseAdapter() { + settingsButton.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); settingsButton.setIcon(settings); confirmExitPanel.setVisible(false); menu.getSettings().createGUI(); @@ -176,10 +187,12 @@ public void mousePressed(MouseEvent event) { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); settingsButton.setIcon(settingsOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); settingsButton.setIcon(settings); } }); @@ -189,9 +202,10 @@ public void mouseExited(MouseEvent event) { loadAnotherConfiguration = new JLabel(loadConfiguration, JLabel.LEFT); - loadAnotherConfiguration.addMouseListener(new MouseAdapter() { + loadAnotherConfiguration.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); loadAnotherConfiguration.setIcon(loadConfiguration); confirmExitPanel.setVisible(false); menu.getImportConfigurationGUI().getPreviousFiles(); @@ -199,10 +213,12 @@ public void mousePressed(MouseEvent event) { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); loadAnotherConfiguration.setIcon(loadConfigurationOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); loadAnotherConfiguration.setIcon(loadConfiguration); } }); @@ -211,9 +227,10 @@ public void mouseExited(MouseEvent event) { logoutButton = new JLabel(logout, JLabel.LEFT); - logoutButton.addMouseListener(new MouseAdapter() { + logoutButton.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); logoutButton.setIcon(MainMenu.this.logout); confirmExitPanel.setVisible(false); UserProfileManager.setCurrentUser(null); @@ -221,10 +238,12 @@ public void mousePressed(MouseEvent event) { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); logoutButton.setIcon(logoutOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); logoutButton.setIcon(MainMenu.this.logout); } }); @@ -233,18 +252,21 @@ public void mouseExited(MouseEvent event) { final JLabel exitProgram = new JLabel(exit, JLabel.LEFT); - exitProgram.addMouseListener(new MouseAdapter() { + exitProgram.addMouseListener(new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); exitProgram.setIcon(exit); confirmExitPanel.setVisible(true); } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); exitProgram.setIcon(exitOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); exitProgram.setIcon(exit); } }); diff --git a/src/main/java/org/isatools/isacreator/longtexteditor/TextEditor.java b/src/main/java/org/isatools/isacreator/longtexteditor/TextEditor.java index 3b10f620..359e05d7 100644 --- a/src/main/java/org/isatools/isacreator/longtexteditor/TextEditor.java +++ b/src/main/java/org/isatools/isacreator/longtexteditor/TextEditor.java @@ -37,8 +37,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.longtexteditor; -import org.isatools.isacreator.common.Globals; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.FooterPanel; import org.isatools.isacreator.effects.HUDTitleBar; import org.jdesktop.fuse.InjectedResource; @@ -47,10 +48,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import javax.swing.border.EtchedBorder; import java.awt.*; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.awt.event.WindowEvent; -import java.awt.event.WindowListener; +import java.awt.event.*; /** * TextEditor widget to allow users to edit large bits of text in a light, convenient interface. @@ -113,21 +111,12 @@ public void createGUI() { JPanel buttonContainer = new JPanel(new BorderLayout()); buttonContainer.setBackground(UIHelper.BG_COLOR); - final JLabel ok = new JLabel(Globals.OK_ICON, JLabel.RIGHT); - ok.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton ok = new FlatButton(ButtonType.GREEN, "Confirm"); + ok.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("enteredText", "OLD_VALUE", textEditor.getEnteredText()); setVisible(false); } - - public void mouseEntered(MouseEvent event) { - ok.setIcon(Globals.OK_OVER_ICON); - } - - public void mouseExited(MouseEvent event) { - ok.setIcon(Globals.OK_ICON); - } }); buttonContainer.add(ok, BorderLayout.EAST); diff --git a/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java b/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java index 2f3ff93e..7acfdb0c 100644 --- a/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java +++ b/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java @@ -38,10 +38,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.mergeutil; import com.explodingpixels.macwidgets.IAppWidgetFactory; -import org.isatools.isacreator.common.DropDownComponent; -import org.isatools.isacreator.common.FileSelectionPanel; -import org.isatools.isacreator.common.HistoryComponent; -import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.*; import org.isatools.isacreator.effects.InfiniteProgressPanel; import org.isatools.isacreator.effects.borders.RoundedBorder; import org.isatools.isacreator.effects.components.RoundedJTextField; @@ -172,17 +169,20 @@ private JLayeredPane createSelectFilesPanel() { final MouseListener[] listeners = new MouseListener[2]; - listeners[0] = new MouseAdapter() { + listeners[0] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); backButton.setIcon(backOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); backButton.setIcon(back); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); backButton.setIcon(back); SwingUtilities.invokeLater(new Runnable() { public void run() { @@ -197,18 +197,21 @@ public void run() { assignListenerToLabel(backButton, listeners[0]); - listeners[1] = new MouseAdapter() { + listeners[1] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); nextButton.setIcon(next); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); nextButton.setIcon(next); String isatab1Path = isatab1.getSelectedFilePath().trim(); diff --git a/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserUI.java b/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserUI.java index bebf849b..8891687e 100644 --- a/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserUI.java +++ b/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserUI.java @@ -37,6 +37,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.ontologiser.ui; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.common.dialog.ConfirmationDialog; import org.isatools.isacreator.gui.ISAcreator; import org.isatools.isacreator.ontologiser.adaptors.ContentAdaptor; @@ -48,7 +50,10 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import javax.swing.border.EmptyBorder; import javax.swing.border.EtchedBorder; +import javax.swing.border.LineBorder; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; @@ -92,8 +97,7 @@ public class OntologiserUI extends JDialog { @InjectedResource private ImageIcon termTaggerLogo, termTaggerIcon, termTaggerIconOver, visualiseInactiveIcon, visualiseIcon, visualiseIconOver, - suggestInactiveIcon, suggestIcon, suggestIconOver, clearAllInactiveIcon, clearAllIcon, clearAllIconOver, helpIcon, helpIconOver, closeWindowIcon, - closeWindowIconOver, doneIcon, doneIconOver, buttonPanelFiller, working; + suggestInactiveIcon, suggestIcon, suggestIconOver, clearAllInactiveIcon, clearAllIcon, clearAllIconOver, helpIcon, helpIconOver, working; private OntologiserAnnotationPane annotationPane; private OntologyHelpPane helpPane; @@ -276,22 +280,12 @@ public void run() { } private Container createSouthPanel() { - Box southPanel = Box.createHorizontalBox(); + JPanel southPanel = new JPanel(new BorderLayout()); + southPanel.setBorder(new LineBorder(Color.white, 4)); - final JLabel closeButton = new JLabel(closeWindowIcon); - closeButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowIconOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowIcon); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton closeButton = new FlatButton(ButtonType.RED, "Close"); + closeButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { if (confirmChoice == null || !confirmChoice.isShowing()) { confirmChoice = new ConfirmationDialog(); @@ -321,21 +315,10 @@ public void run() { } }); - final JLabel export = new JLabel(doneIcon); - export.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - export.setIcon(doneIconOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - export.setIcon(doneIcon); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton export = new FlatButton(ButtonType.GREEN, "Apply Annotations"); + export.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { Thread performer = new Thread(new Runnable() { public void run() { if (annotationPane != null) { @@ -352,9 +335,10 @@ public void run() { } }); - southPanel.add(closeButton); - southPanel.add(new JLabel(buttonPanelFiller)); - southPanel.add(export); + + southPanel.add(closeButton, BorderLayout.WEST); + + southPanel.add(export, BorderLayout.EAST); return southPanel; } diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java index 851e2f24..fb960202 100755 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java @@ -41,8 +41,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.apache.log4j.Logger; import org.isatools.isacreator.autofilteringlist.ExtendedJList; import org.isatools.isacreator.common.ClearFieldUtility; -import org.isatools.isacreator.common.Globals; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.common.filterableTree.FilterableJTree; import org.isatools.isacreator.common.filterableTree.TreeFilterModel; import org.isatools.isacreator.configuration.OntologyBranch; @@ -127,7 +128,9 @@ public class OntologySelectionTool extends JFrame implements MouseListener, Onto private WSOntologyTreeCreator wsOntologyTreeCreator; private JPanel ontologyViewContainer, searchUIContainer, browseUIContainer, historyUIContainer; - private JLabel searchOntologiesTab, browseRecommendedOntologiesTab, viewHistoryTab, searchOntologiesButton, confirmOkButton; + private JLabel searchOntologiesTab, browseRecommendedOntologiesTab, viewHistoryTab, searchOntologiesButton; + + private JButton confirmOkButton; private OptionGroup searchSpan; private Set selectedTerms; @@ -699,24 +702,15 @@ public void actionPerformed(ActionEvent e) { termSelectionContainer.add(selectedTerm); termSelectionContainer.add(new ClearFieldUtility(selectedTerm)); termSelectionContainer.add(new JLabel(rightFieldIcon)); - termSelectionContainer.add(Box.createVerticalStrut(5)); + termSelectionContainer.add(Box.createVerticalStrut(10)); - confirmOkButton = new JLabel(Globals.OK_ICON); + confirmOkButton = new FlatButton(ButtonType.GREEN, "Select Ontology Term"); confirmOkButton.setOpaque(false); - confirmOkButton.addMouseListener(new MouseAdapter() { + confirmOkButton.addActionListener(new ActionListener() { - public void mousePressed(MouseEvent event) { - confirmOkButton.setIcon(Globals.OK_ICON); + public void actionPerformed(ActionEvent actionEvent) { confirmSelection(); } - - public void mouseEntered(MouseEvent event) { - confirmOkButton.setIcon(Globals.OK_OVER_ICON); - } - - public void mouseExited(MouseEvent event) { - confirmOkButton.setIcon(Globals.OK_ICON); - } }); diff --git a/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java b/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java index 02c62f07..4cc28215 100644 --- a/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java +++ b/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java @@ -39,6 +39,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.archiveoutput.ArchiveOutputWindow; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.DraggablePaneMouseInputHandler; import org.isatools.isacreator.effects.InfiniteProgressPanel; import org.isatools.isacreator.gui.DataEntryForm; @@ -83,7 +85,7 @@ public class PublicationLocatorUI extends JFrame implements WindowListener { @InjectedResource private ImageIcon searchBy, pubmedOption, pubmedOptionOver, doiOption, doiOptionOver, resultInactive, result, - resultOver, end, close, closeOver, accept, acceptOver, search, searchOver, pubmedText, doiText, searchFieldLeft; + resultOver, end, search, searchOver, pubmedText, doiText, searchFieldLeft; private JPanel swappableContainer; @@ -129,41 +131,21 @@ public void createGUI() { private Container createSouthPanel() { JPanel southPanel = new JPanel(new BorderLayout()); + southPanel.setBorder(UIHelper.EMPTY_BORDER); southPanel.setBackground(UIHelper.BG_COLOR); - final JLabel closeButton = new JLabel(close); - closeButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - closeButton.setIcon(closeOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - closeButton.setIcon(close); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton closeButton = new FlatButton(ButtonType.RED, "Cancel"); + closeButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("noSelectedPublication", "noneSelected", ""); setVisible(false); } }); - final JLabel export = new JLabel(accept); - export.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - export.setIcon(acceptOver); - } - @Override - public void mouseExited(MouseEvent mouseEvent) { - export.setIcon(accept); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton export = new FlatButton(ButtonType.GREEN, "Select Publication"); + export.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("selectedPublication", "OLD_VALUE", currentPublication); setVisible(false); diff --git a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeBuilderPane.java b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeBuilderPane.java index 0cb3cb37..94849f31 100644 --- a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeBuilderPane.java +++ b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeBuilderPane.java @@ -60,8 +60,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class QRCodeBuilderPane extends JPanel { - @InjectedResource - private ImageIcon help; private String[] columnNames; private String[][] spreadsheetDataSnapshot; @@ -72,7 +70,6 @@ public QRCodeBuilderPane(String[] columnNames, String[][] spreadsheetDataSnapsho this.columnNames = columnNames; this.spreadsheetDataSnapshot = spreadsheetDataSnapshot; - ResourceInjector.get("qrcode-generator-package.style").inject(this); } public void createGUI() { @@ -96,8 +93,6 @@ public void createGUI() { IAppWidgetFactory.makeIAppScrollPane(mappingBuilderScroller); add(mappingBuilderScroller, BorderLayout.CENTER); - - add(UIHelper.wrapComponentInPanel(new JLabel(help)), BorderLayout.WEST); } public List getMappings() { diff --git a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeDetailedView.java b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeDetailedView.java index 23ba8d1c..a01a3913 100644 --- a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeDetailedView.java +++ b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeDetailedView.java @@ -58,9 +58,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class QRCodeDetailedView extends JPanel { - @InjectedResource - private ImageIcon qrInfoSectionHeader, qrCodeSectionHeader; - private JLabel qrCodeImage; private QRCode qrCode; private QRCodeInfoRenderer qrCodeDetailsUI; @@ -87,18 +84,13 @@ private Container createTopPanel() { container.add(Box.createVerticalStrut(16), BorderLayout.NORTH); - JLabel sectionHeader = new JLabel(qrCodeSectionHeader); - sectionHeader.setHorizontalAlignment(SwingConstants.LEFT); - sectionHeader.setVerticalAlignment(SwingConstants.TOP); - - container.add(sectionHeader, BorderLayout.WEST); qrCodeImage = new JLabel(); qrCodeImage.setPreferredSize(new Dimension(100, 100)); qrCodeImage.setVerticalAlignment(SwingConstants.TOP); qrCodeImage.setHorizontalAlignment(SwingConstants.RIGHT); - container.add(qrCodeImage, BorderLayout.EAST); + container.add(qrCodeImage, BorderLayout.WEST); return container; } @@ -152,12 +144,6 @@ private void createPane() { updateContent(); - - JLabel infoSectionLabel = new JLabel(qrInfoSectionHeader); - infoSectionLabel.setHorizontalAlignment(SwingConstants.LEFT); - QRCodeInfoRenderer.this.add(Box.createVerticalStrut(15)); - QRCodeInfoRenderer.this.add(UIHelper.wrapComponentInPanel(infoSectionLabel)); - QRCodeInfoRenderer.this.add(Box.createVerticalStrut(15)); QRCodeInfoRenderer.this.add(content); } diff --git a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeGeneratorUI.java b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeGeneratorUI.java index 09a65f35..d28fd480 100644 --- a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeGeneratorUI.java +++ b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeGeneratorUI.java @@ -39,6 +39,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.common.SelectOutputDirectoryDialog; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.common.dialog.ConfirmationDialog; import org.isatools.isacreator.gui.ISAcreator; import org.isatools.isacreator.qrcode.html.HTMLCreator; @@ -52,6 +54,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.border.EmptyBorder; import javax.swing.border.EtchedBorder; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; @@ -91,8 +95,7 @@ public class QRCodeGeneratorUI extends JDialog { @InjectedResource private ImageIcon qrCodeGeneratorLogo, qrCodeViewIcon, qrCodeViewOver, qrCodeBuilderIcon, - qrCodeBuilderIconOver, helpIcon, helpIconOver, closeWindowIcon, closeWindowIconOver, exportIcon, - exportIconOver, working, builderFirst; + qrCodeBuilderIconOver, helpIcon, helpIconOver, working, builderFirst; private QRCodeViewerPane viewerPane; private QRCodeBuilderPane builderPane; @@ -319,22 +322,12 @@ public void run() { private Container createSouthPanel() { JPanel southPanel = new JPanel(new BorderLayout()); + southPanel.setBorder(UIHelper.EMPTY_BORDER); southPanel.setBackground(UIHelper.BG_COLOR); - final JLabel closeButton = new JLabel(closeWindowIcon); - closeButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowIconOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowIcon); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton closeButton = new FlatButton(ButtonType.RED, "Cancel"); + closeButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { confirmChoice = new ConfirmationDialog(); confirmChoice.addPropertyChangeListener(ConfirmationDialog.NO, new PropertyChangeListener() { @@ -359,94 +352,86 @@ public void run() { confirmChoice.showDialog(isacreatorEnvironment); } }); + } + }); + JButton export = new FlatButton(ButtonType.GREEN, "Export QR Codes"); + export.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { + exportQRCodes(); } }); - final JLabel export = new JLabel(exportIcon); - export.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - export.setIcon(exportIconOver); - } - @Override - public void mouseExited(MouseEvent mouseEvent) { - export.setIcon(exportIcon); - } + southPanel.add(closeButton, BorderLayout.WEST); + southPanel.add(export, BorderLayout.EAST); - @Override - public void mousePressed(MouseEvent mouseEvent) { + return southPanel; + } - if (builderPane == null) { - swapContainers(UIHelper.wrapComponentInPanel(new JLabel(builderFirst))); - } else { - final SelectOutputDirectoryDialog outputDir = new SelectOutputDirectoryDialog(); + private void exportQRCodes() { + if (builderPane == null) { + swapContainers(UIHelper.wrapComponentInPanel(new JLabel(builderFirst))); + } else { + final SelectOutputDirectoryDialog outputDir = new SelectOutputDirectoryDialog(); - if (generatedQRCodes == null) { + if (generatedQRCodes == null) { - Thread performer = new Thread(new Runnable() { - public void run() { - generatedQRCodes = CodeGenerator.createQRCodeImage(apiHook.generateEncodeInfo(builderPane.getMappings()), new Dimension(100, 100)); + Thread performer = new Thread(new Runnable() { + public void run() { + generatedQRCodes = CodeGenerator.createQRCodeImage(apiHook.generateEncodeInfo(builderPane.getMappings()), new Dimension(100, 100)); - SwingUtilities.invokeLater(new Runnable() { - public void run() { - swapContainers(selectedSection == HELP ? helpPane : selectedSection == QR_CODE_VIEW ? viewerPane : builderPane); - outputDir.createGUI(); - outputDir.showDialog(isacreatorEnvironment); - } - }); + SwingUtilities.invokeLater(new Runnable() { + public void run() { + swapContainers(selectedSection == HELP ? helpPane : selectedSection == QR_CODE_VIEW ? viewerPane : builderPane); + outputDir.createGUI(); + outputDir.showDialog(isacreatorEnvironment); } - }); - swapContainers(UIHelper.wrapComponentInPanel(new JLabel(working))); - performer.start(); - } else { - outputDir.createGUI(); - outputDir.showDialog(isacreatorEnvironment); } - outputDir.addPropertyChangeListener(SelectOutputDirectoryDialog.CANCEL, new PropertyChangeListener() { - public void propertyChange(PropertyChangeEvent propertyChangeEvent) { - outputDir.hideDialog(); - outputDir.dispose(); - } - }); + }); + swapContainers(UIHelper.wrapComponentInPanel(new JLabel(working))); + performer.start(); + } else { + outputDir.createGUI(); + outputDir.showDialog(isacreatorEnvironment); + } - outputDir.addPropertyChangeListener(SelectOutputDirectoryDialog.CONTINUE, new PropertyChangeListener() { - public void propertyChange(PropertyChangeEvent propertyChangeEvent) { - outputDir.hideDialog(); - outputDir.dispose(); + outputDir.addPropertyChangeListener(SelectOutputDirectoryDialog.CANCEL, new PropertyChangeListener() { + public void propertyChange(PropertyChangeEvent propertyChangeEvent) { + outputDir.hideDialog(); + outputDir.dispose(); + } + }); - File outputDir = new File(propertyChangeEvent.getNewValue().toString() + File.separator + "qr-codes"); + outputDir.addPropertyChangeListener(SelectOutputDirectoryDialog.CONTINUE, new PropertyChangeListener() { + public void propertyChange(PropertyChangeEvent propertyChangeEvent) { + outputDir.hideDialog(); + outputDir.dispose(); - if (!outputDir.exists()) { - outputDir.mkdir(); - } + File outputDir = new File(propertyChangeEvent.getNewValue().toString() + File.separator + "qr-codes"); - CodeGenerator.generateFilesFromQRCodes(generatedQRCodes, outputDir.getAbsolutePath()); - - HTMLCreator htmlOutput = new HTMLCreator(generatedQRCodes); - try { - htmlOutput.createHTML(outputDir); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } + if (!outputDir.exists()) { + outputDir.mkdir(); + } - closeWindow(); - } - }); + CodeGenerator.generateFilesFromQRCodes(generatedQRCodes, outputDir.getAbsolutePath()); + HTMLCreator htmlOutput = new HTMLCreator(generatedQRCodes); + try { + htmlOutput.createHTML(outputDir); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } + closeWindow(); } - } - }); + }); - southPanel.add(closeButton, BorderLayout.WEST); - southPanel.add(export, BorderLayout.EAST); - return southPanel; + } } private void closeWindow() { diff --git a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeViewerPane.java b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeViewerPane.java index 0a884d36..d7830dc2 100644 --- a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeViewerPane.java +++ b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeViewerPane.java @@ -70,7 +70,7 @@ public class QRCodeViewerPane extends JPanel implements MouseListener { // will display a list with the generated codes. @InjectedResource - private ImageIcon leftFilter, rightFilter, separator; + private ImageIcon leftFilter, rightFilter; private FilterableJTree qrCodeTree; @@ -99,7 +99,6 @@ public void createGUI() { treePanel.setBackground(UIHelper.BG_COLOR); treePanel.add(createTreePanel()); - treePanel.add(UIHelper.wrapComponentInPanel(new JLabel(separator))); add(treePanel, BorderLayout.WEST); add(detailedView, BorderLayout.CENTER); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java index 43a22763..00730850 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java @@ -41,6 +41,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.autofiltercombo.AutoFilterCombo; import org.isatools.isacreator.common.DropDownComponent; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; import org.isatools.isacreator.configuration.Ontology; @@ -115,6 +117,7 @@ private void changePanels(int panelType) { containingPanel.setBackground(UIHelper.BG_COLOR); JPanel headerCont = new JPanel(new GridLayout(1, 1)); + headerCont.setSize(new Dimension(300, 25)); headerCont.setOpaque(false); Box container = Box.createVerticalBox(); @@ -128,10 +131,7 @@ private void changePanels(int panelType) { terms[i] = factors.get(i).getFactorName(); } - headerCont.add(new JLabel( - new ImageIcon(getClass() - .getResource("/images/spreadsheet/addFactorHeader.png")), - JLabel.RIGHT)); + headerCont.add(UIHelper.createLabel("Add Factor", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); container.add(headerCont); container.add(Box.createVerticalStrut(5)); container.add(createDropDownField("factor", terms)); @@ -140,10 +140,7 @@ private void changePanels(int panelType) { } if (panelType == ADD_CHARACTERISTIC_COLUMN) { - headerCont.add(new JLabel( - new ImageIcon(getClass() - .getResource("/images/spreadsheet/addCharacteristicHeader.png")), - JLabel.RIGHT)); + headerCont.add(UIHelper.createLabel("Add Characteristic", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); container.add(headerCont); container.add(createStdOntologyField("characteristic")); container.add(Box.createVerticalStrut(5)); @@ -151,10 +148,7 @@ private void changePanels(int panelType) { } if (panelType == ADD_PARAMETER_COLUMN) { - headerCont.add(new JLabel( - new ImageIcon(getClass() - .getResource("/images/spreadsheet/addParameterHeader.png")), - JLabel.RIGHT)); + headerCont.add(UIHelper.createLabel("Add Parameter Value", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); container.add(headerCont); container.add(createStdOntologyField("parameter")); container.add(Box.createVerticalStrut(5)); @@ -162,10 +156,7 @@ private void changePanels(int panelType) { } if (panelType == ADD_COMMENT_COLUMN) { - headerCont.add(new JLabel( - new ImageIcon(getClass() - .getResource("/images/spreadsheet/addCommentHeader.png")), - JLabel.RIGHT)); + headerCont.add(UIHelper.createLabel("Add Comment", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); container.add(headerCont); JLabel lab = new JLabel("Enter comment qualifier"); @@ -363,39 +354,35 @@ private void instantiatePanel() { status = new JLabel(""); status.setForeground(UIHelper.RED_COLOR); - final ImageIcon typeText; - final ImageIcon[] typeHoverImage = new ImageIcon[1]; + final String typeText; switch (type) { case ADD_CHARACTERISTIC_COLUMN: - typeText = addCharacteristicButton; - typeHoverImage[0] = addCharacteristicButtonOver; + typeText = "Add Characteristic"; break; case ADD_FACTOR_COLUMN: - typeText = addFactorButton; - typeHoverImage[0] = addFactorButtonOver; + typeText = "Add Factor"; break; case ADD_PARAMETER_COLUMN: - typeText = addParameterButton; - typeHoverImage[0] = addParameterButtonOver; + typeText = "Add Parameter"; break; case ADD_COMMENT_COLUMN: - typeText = addCommentButton; - typeHoverImage[0] = addCommentButtonOver; + typeText = "Add Comment"; break; default: - typeText = addCommentButton; + typeText = "Add Comment"; } - final JLabel addColumn = new JLabel((typeText), JLabel.RIGHT); + final JButton addColumn = new FlatButton(ButtonType.GREEN, typeText); - addColumn.addMouseListener(new MouseAdapter() { + addColumn.addActionListener(new ActionListener() { + + public void actionPerformed(ActionEvent actionEvent) { - public void mousePressed(MouseEvent event) { String typeAsText; switch (type) { @@ -424,6 +411,7 @@ public void mousePressed(MouseEvent event) { } if (type == ADD_COMMENT_COLUMN && stdTextField != null) { + String toAdd = stdTextField.getText(); if (toAdd.equals("")) { @@ -436,6 +424,7 @@ public void mousePressed(MouseEvent event) { String colName = typeAsText + "[" + toAdd + "]"; + doAddColumn(typeAsText, toAdd, colName); FieldObject newFieldObject = st.getTableReferenceObject().getFieldByName(colName); if (newFieldObject == null) { newFieldObject = new FieldObject(st.getColumnCount(), @@ -497,40 +486,7 @@ public void run() { String colName = typeAsText + "[" + toAdd + "]"; - if (!st.getSpreadsheetFunctions().checkColumnExists(colName)) { - boolean useOntology = qualitativeOp.isSelected(); - DataTypes type = useOntology ? DataTypes.ONTOLOGY_TERM - : DataTypes.STRING; - FieldObject charFo = new FieldObject(st.getColumnCount(), - colName, typeAsText + " value", type, - "", false, false, false); - st.getSpreadsheetFunctions().addFieldToReferenceObject(charFo); - - if (!toAdd.equals("")) { - st.getSpreadsheetFunctions().addColumnAfterPosition(colName, null, charFo.isRequired(), -1); - } - - if (quantativeOp.isSelected()) { - FieldObject unitFo = new FieldObject(st.getColumnCount(), - "Unit", - "Unit for definition of value", - DataTypes.ONTOLOGY_TERM, "", false, false, - false); - st.getSpreadsheetFunctions().addFieldToReferenceObject(unitFo); - st.getSpreadsheetFunctions().addColumnAfterPosition("Unit", - unitField.getText(), unitFo.isRequired(), -1); - } - - SwingUtilities.invokeLater(new Runnable() { - public void run() { - st.getParentFrame().hideSheet(); - } - }); - } else { - status.setText("Duplicate " + - typeAsText + ""); - status.setForeground(UIHelper.RED_COLOR); - } + doAddColumn(typeAsText, toAdd, colName); } else { status.setText( "No factors available"); @@ -539,20 +495,12 @@ public void run() { } } - public void mouseEntered(MouseEvent event) { - addColumn.setIcon(typeHoverImage[0]); - } - - public void mouseExited(MouseEvent event) { - addColumn.setIcon(typeText); - } }); - final JLabel close = new JLabel(closeButton, - JLabel.LEFT); - close.addMouseListener(new MouseAdapter() { + final JButton close = new FlatButton(ButtonType.RED, "Cancel"); + close.addActionListener(new ActionListener() { - public void mousePressed(MouseEvent event) { + public void actionPerformed(ActionEvent event) { SwingUtilities.invokeLater(new Runnable() { public void run() { st.getParentFrame().hideSheet(); @@ -560,14 +508,6 @@ public void run() { } }); } - - public void mouseEntered(MouseEvent event) { - close.setIcon(closeButtonOver); - } - - public void mouseExited(MouseEvent event) { - close.setIcon(closeButton); - } }); JPanel southPanel = new JPanel(); @@ -575,6 +515,7 @@ public void mouseExited(MouseEvent event) { southPanel.setBackground(UIHelper.BG_COLOR); JPanel buttonCont = new JPanel(new BorderLayout()); + buttonCont.setBorder(UIHelper.EMPTY_BORDER); buttonCont.setBackground(UIHelper.BG_COLOR); buttonCont.add(close, BorderLayout.WEST); @@ -591,4 +532,41 @@ public void mouseExited(MouseEvent event) { add(southPanel, BorderLayout.SOUTH); pack(); } + + private void doAddColumn(String typeAsText, String toAdd, String colName) { + if (!st.getSpreadsheetFunctions().checkColumnExists(colName)) { + boolean useOntology = qualitativeOp.isSelected(); + DataTypes type = useOntology ? DataTypes.ONTOLOGY_TERM + : DataTypes.STRING; + FieldObject charFo = new FieldObject(st.getColumnCount(), + colName, typeAsText + " value", type, + "", false, false, false); + st.getSpreadsheetFunctions().addFieldToReferenceObject(charFo); + + if (!toAdd.equals("")) { + st.getSpreadsheetFunctions().addColumnAfterPosition(colName, null, charFo.isRequired(), -1); + } + + if (quantativeOp.isSelected()) { + FieldObject unitFo = new FieldObject(st.getColumnCount(), + "Unit", + "Unit for definition of value", + DataTypes.ONTOLOGY_TERM, "", false, false, + false); + st.getSpreadsheetFunctions().addFieldToReferenceObject(unitFo); + st.getSpreadsheetFunctions().addColumnAfterPosition("Unit", + unitField.getText(), unitFo.isRequired(), -1); + } + + SwingUtilities.invokeLater(new Runnable() { + public void run() { + st.getParentFrame().hideSheet(); + } + }); + } else { + status.setText("Duplicate " + + typeAsText + ""); + status.setForeground(UIHelper.RED_COLOR); + } + } } diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java index fccaafec..6e2bb608 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java @@ -39,13 +39,17 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.spreadsheet; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.components.RoundedJTextField; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; import javax.swing.*; +import javax.swing.border.LineBorder; import java.awt.*; import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -57,8 +61,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class AddMultipleRowsGUI extends JDialog { @InjectedResource - private ImageIcon panelHeader, addRowButton, addRowButtonOver, closeButton, closeButtonOver; - private JLabel close, addRows; + private ImageIcon addRowButton, addRowButtonOver, closeButton, closeButtonOver; private JTextField numRowsTxt; private Spreadsheet st; @@ -94,15 +97,17 @@ public void run() { * Creates the JFrame for the class. */ private void instantiateFrame() { + getInsets().left = 3; //setPreferredSize(new Dimension(250, 200)); setBackground(UIHelper.BG_COLOR); + // add panel returned from instantiatePanel() method JPanel headerCont = new JPanel(new GridLayout(1, 1)); + headerCont.setPreferredSize(new Dimension(300, 25)); headerCont.setBackground(UIHelper.BG_COLOR); - headerCont.add(new JLabel(panelHeader, - JLabel.RIGHT)); + headerCont.add(UIHelper.createLabel("Add Rows", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); add(headerCont, BorderLayout.NORTH); add(instantiatePanel()); @@ -132,29 +137,17 @@ public void actionPerformed(ActionEvent e) { numRowsTxt.getInputMap().put(KeyStroke.getKeyStroke("ENTER"), "ADDROWS"); numRowsTxt.getActionMap().put("ADDROWS", addRowsAction); - addRows = new JLabel(addRowButton, - JLabel.RIGHT); - addRows.addMouseListener(new MouseAdapter() { - public void mousePressed(MouseEvent event) { + JButton addRows = new FlatButton(ButtonType.GREEN, "Add Rows"); + addRows.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { addRows(); } - - public void mouseEntered(MouseEvent event) { - addRows.setIcon(addRowButtonOver); - } - - public void mouseExited(MouseEvent event) { - addRows.setIcon(addRowButton); - } }); - close = new JLabel(closeButton, - JLabel.LEFT); - close.addMouseListener(new MouseAdapter() { - - - public void mousePressed(MouseEvent event) { + JButton close = new FlatButton(ButtonType.RED, "Cancel"); + close.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { SwingUtilities.invokeLater(new Runnable() { public void run() { st.getParentFrame().hideSheet(); @@ -162,26 +155,21 @@ public void run() { } }); } - - public void mouseEntered(MouseEvent event) { - close.setIcon(closeButtonOver); - } - - public void mouseExited(MouseEvent event) { - close.setIcon(closeButton); - } }); + JPanel container = new JPanel(new BorderLayout()); + container.setPreferredSize(new Dimension(300, 60)); container.setBackground(UIHelper.BG_COLOR); JPanel fieldCont = new JPanel(new GridLayout(1, 2)); fieldCont.setBackground(UIHelper.BG_COLOR); fieldCont.add(numRowsLab); fieldCont.add(numRowsTxt); - container.add(fieldCont, BorderLayout.CENTER); + container.add(fieldCont, BorderLayout.NORTH); JPanel buttonCont = new JPanel(new BorderLayout()); + buttonCont.setBorder(UIHelper.EMPTY_BORDER); buttonCont.setBackground(UIHelper.BG_COLOR); buttonCont.add(close, BorderLayout.WEST); buttonCont.add(addRows, BorderLayout.EAST); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java index 5247f797..cef07edc 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java @@ -38,6 +38,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.spreadsheet; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; @@ -56,7 +58,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class MultipleSortGUI extends JDialog implements ActionListener { @InjectedResource - private ImageIcon titleIcon, sortButton, sortButtonOver, closeButton, closeButtonOver; + private ImageIcon sortButton, sortButtonOver, closeButton, closeButtonOver; private JCheckBox sort2Check = new JCheckBox("Sort on 2 columns?", false); private JComboBox sortOpt1; @@ -109,9 +111,9 @@ private void instantiateFrame() { JPanel headerCont = new JPanel(); headerCont.setBackground(UIHelper.BG_COLOR); + headerCont.setSize(new Dimension(300, 25)); headerCont.setLayout(new BoxLayout(headerCont, BoxLayout.LINE_AXIS)); - headerCont.add(new JLabel(titleIcon, - JLabel.RIGHT)); + headerCont.add(UIHelper.createLabel("Perform Multiple Sort", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); add(headerCont, BorderLayout.NORTH); instantiatePanel(); @@ -139,11 +141,9 @@ public void instantiatePanel() { sortOpt2IsAscending.setPreferredSize(new Dimension(40, 20)); sortOpt2IsAscending.setEnabled(false); - final JLabel sort = new JLabel(sortButton, - JLabel.RIGHT); - sort.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton sort = new FlatButton(ButtonType.GREEN, "Apply Sort"); + sort.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { try { int primaryCol = getAbsoluteColumn(sortOpt1.getSelectedItem().toString()); @@ -171,22 +171,11 @@ public void mousePressed(MouseEvent event) { e.printStackTrace(); } } - - - public void mouseEntered(MouseEvent event) { - sort.setIcon(sortButtonOver); - } - - public void mouseExited(MouseEvent event) { - sort.setIcon(sortButton); - } }); - final JLabel close = new JLabel(closeButton, - JLabel.LEFT); - close.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { + JButton close = new FlatButton(ButtonType.RED, "Cancel"); + close.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { SwingUtilities.invokeLater(new Runnable() { public void run() { st.getParentFrame().hideSheet(); @@ -194,14 +183,6 @@ public void run() { } }); } - - public void mouseEntered(MouseEvent event) { - close.setIcon(closeButtonOver); - } - - public void mouseExited(MouseEvent event) { - close.setIcon(closeButton); - } }); // Panel to contain button diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java index 3ebc419c..1a2e0201 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java @@ -550,7 +550,7 @@ public void changeFilesToRelativeOrAbsolute(int toSwitch) { /** - * Create the Button panel - a panel which contains graphical representations of the options available + * Create the FlatButton panel - a panel which contains graphical representations of the options available * to the user when interacting with the software. */ private void createButtonPanel() { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java index 5d2cf8a8..a7ab4c25 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java @@ -289,7 +289,6 @@ public boolean exportTable(File f, String separator, boolean removeEmptyColumns) if (oo != null) { termAccession = oo.getOntologyTermAccession(); - } if (val.contains(":")) { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java index 8b15ad0c..93314c79 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java @@ -36,6 +36,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ package org.isatools.isacreator.spreadsheet; +import org.isatools.isacreator.api.utils.SpreadsheetUtils; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; @@ -79,6 +80,13 @@ public void popupMenu(JComponent jc, final int x, final int y, String columnName popup.setLightWeightPopupEnabled(false); popup.setBackground(new Color(0, 104, 56, 50)); + JMenuItem rename = new JMenuItem("Rename"); + rename.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + System.out.println("Hi!"); + } + }); + JMenuItem undo = new JMenuItem("Undo"); undo.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -401,10 +409,16 @@ public void actionPerformed(ActionEvent actionEvent) { popup.add(undo); popup.add(redo); popup.add(new JSeparator()); + + if (SpreadsheetUtils.isFactorParameterOrCharacteristic(columnName)) { + popup.add(rename); + } + popup.add(new JSeparator()); + popup.add(addRow); popup.add(deleteRow); - popup.add(new JSeparator()); + checkAndAddIfShouldAddColumn(columnName, popup, addColumn); if (spreadsheet.hiddenColumns.size() > 0) { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/transposedview/TransposedSpreadsheetView.java b/src/main/java/org/isatools/isacreator/spreadsheet/transposedview/TransposedSpreadsheetView.java index a3b02c24..bac2c047 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/transposedview/TransposedSpreadsheetView.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/transposedview/TransposedSpreadsheetView.java @@ -38,6 +38,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.spreadsheet.transposedview; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.common.dialog.ConfirmationDialog; import org.isatools.isacreator.gui.formelements.FieldTypes; import org.isatools.isacreator.gui.formelements.SubFormCellRenderer; @@ -47,8 +49,10 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import javax.swing.border.EtchedBorder; +import javax.swing.border.LineBorder; import java.awt.*; import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; @@ -70,8 +74,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class TransposedSpreadsheetView extends JDialog { @InjectedResource - private ImageIcon logo, backToSpreadsheet, backToSpreadsheetOver, closeWindow, closeWindowOver, toolboxIcon, - highlightOnIcon, highlightOnOver, highlightOffIcon, highlightOffOver, goToRecord, goToRecordOver, go, goOver; + private ImageIcon logo, toolboxIcon, highlightOnIcon, highlightOnOver, highlightOffIcon, highlightOffOver, goToRecord, goToRecordOver, go, goOver; private TransposedSpreadsheetModel transposedSpreadsheetModel; private TransposedSubForm transposedSpreadsheetSubform; @@ -286,22 +289,12 @@ public void scrollToColumnLocation(int colIndex) { private Container createSouthPanel() { JPanel buttonPanel = new JPanel(new BorderLayout()); + buttonPanel.setBorder(new LineBorder(Color.white, 4)); buttonPanel.setOpaque(false); - final JLabel closeButton = new JLabel(closeWindow); - closeButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindowOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - closeButton.setIcon(closeWindow); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton closeButton = new FlatButton(ButtonType.RED, "Cancel"); + closeButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { confirmChoice = new ConfirmationDialog(); confirmChoice.addPropertyChangeListener(ConfirmationDialog.NO, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent propertyChangeEvent) { @@ -327,20 +320,9 @@ public void run() { } }); - final JLabel toSpreadsheet = new JLabel(backToSpreadsheet); - toSpreadsheet.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - toSpreadsheet.setIcon(backToSpreadsheetOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - toSpreadsheet.setIcon(backToSpreadsheet); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + JButton toSpreadsheet = new FlatButton(ButtonType.GREEN, "Apply Changes"); + toSpreadsheet.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { confirmChoice = new ConfirmationDialog(); confirmChoice.addPropertyChangeListener(ConfirmationDialog.NO, new PropertyChangeListener() { diff --git a/src/main/java/org/isatools/isacreator/wizard/Wizard.java b/src/main/java/org/isatools/isacreator/wizard/Wizard.java index 7d115cff..b4ae373a 100644 --- a/src/main/java/org/isatools/isacreator/wizard/Wizard.java +++ b/src/main/java/org/isatools/isacreator/wizard/Wizard.java @@ -39,6 +39,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import com.explodingpixels.macwidgets.IAppWidgetFactory; import org.isatools.isacreator.autofiltercombo.AutoFilterComboCellEditor; +import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.HistoryComponent; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.configuration.MappingObject; @@ -526,10 +527,10 @@ public JLayeredPane createDefineStudyPanel(String studyRef) { final JLayeredPane finalPane = getGeneralLayout(defineStudyHeader, breadcrumb2, studyRef, finalPanel, getHeight()); - listeners[0] = new MouseAdapter() { + listeners[0] = new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { - + super.mousePressed(event); if (!previousPage.isEmpty()) { // remove the previously added study from the investigation SwingUtilities.invokeLater(new Runnable() { @@ -550,6 +551,7 @@ public void run() { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); if (numberOfStudies > 0) { backButton.setIcon(wizardOver); } else { @@ -558,6 +560,7 @@ public void mouseEntered(MouseEvent event) { } public void mouseExited(MouseEvent event) { + super.mouseExited(event); if (numberOfStudies > 0) { backButton.setIcon(wizard); } else { @@ -568,10 +571,10 @@ public void mouseExited(MouseEvent event) { assignListenerToLabel(backButton, listeners[0]); - listeners[1] = new MouseAdapter() { + listeners[1] = new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { - + super.mousePressed(event); Thread performStudyCreation = new Thread(new Runnable() { public void run() { studyBeingEdited = new Study(studyId.getText(), @@ -601,10 +604,12 @@ public void run() { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); nextButton.setIcon(next); } }; diff --git a/src/test/resources/test-data/BII-I-1/i_investigation.txt b/src/test/resources/test-data/BII-I-1/i_investigation.txt index b2a628c6..106a3fdc 100644 --- a/src/test/resources/test-data/BII-I-1/i_investigation.txt +++ b/src/test/resources/test-data/BII-I-1/i_investigation.txt @@ -57,14 +57,14 @@ Study Factor Type "chemical compound" "rate" Study Factor Type Term Accession Number "37577" "0000161" Study Factor Type Term Source REF "CHEBI" "PATO" STUDY ASSAYS -Study Assay File Name "a_proteome.txt" "a_metabolome.txt" "a_transcriptome.txt" -Study Assay Measurement Type "protein expression profiling" "metabolite profiling" "transcription profiling" -Study Assay Measurement Type Term Accession Number "" "0000366" "0000424" +Study Assay File Name "a_metabolome.txt" "a_proteome.txt" "a_transcriptome.txt" +Study Assay Measurement Type "metabolite profiling" "protein expression profiling" "transcription profiling" +Study Assay Measurement Type Term Accession Number "0000366" "" "0000424" Study Assay Measurement Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Type "mass spectrometry" "mass spectrometry" "DNA microarray" Study Assay Technology Type Term Accession Number "" "" "0400148" Study Assay Technology Type Term Source REF "OBI" "OBI" "OBI" -Study Assay Technology Platform "iTRAQ" "LC-MS/MS" "Affymetrix" +Study Assay Technology Platform "LC-MS/MS" "iTRAQ" "Affymetrix" STUDY PROTOCOLS Study Protocol Name "growth protocol" "mRNA extraction" "protein extraction" "biotin labeling" "ITRAQ labeling" "EukGE-WS4" "metabolite extraction" Study Protocol Type "growth" "mRNA extraction" "protein extraction" "labeling" "labeling" "hybridization" "extraction" From 269463aaeaeee15842949bf50889162c7cf5d138 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Sun, 15 Sep 2013 23:26:05 +0100 Subject: [PATCH 019/111] Further small cleanups. --- .../isacreator/mergeutil/MergeFilesUI.java | 31 ++++++++++++++----- .../isatools/isacreator/wizard/Wizard.java | 23 +++++++++++--- 2 files changed, 42 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java b/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java index 7acfdb0c..16483e21 100644 --- a/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java +++ b/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java @@ -507,9 +507,10 @@ private JLayeredPane createInvestigationDefinitionPanel(final Investigation inv1 final MouseListener[] listeners = new MouseListener[2]; - listeners[0] = new MouseAdapter() { + listeners[0] = new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { + super.mousePressed(event); // go back to the create isatab menu SwingUtilities.invokeLater(new Runnable() { public void run() { @@ -522,10 +523,12 @@ public void run() { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); backButton.setIcon(backOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); backButton.setIcon(back); } }; @@ -538,10 +541,10 @@ public void mouseExited(MouseEvent event) { assignListenerToLabel(backButton, listeners[0]); - listeners[1] = new MouseAdapter() { + listeners[1] = new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { - + super.mousePressed(event); if (!invTitle.getText().trim().equals("")) { invTitle.setBackground(UIHelper.BG_COLOR); if (!invDescription.getText().trim() @@ -577,10 +580,12 @@ public void run() { } public void mouseEntered(MouseEvent event) { + super.mouseEntered(event); nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent event) { + super.mouseExited(event); nextButton.setIcon(next); } }; @@ -700,17 +705,20 @@ private JLayeredPane visualizeCurrentStudy(final Investigation inv1) { final MouseListener[] listeners = new MouseListener[2]; - listeners[0] = new MouseAdapter() { + listeners[0] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); backButton.setIcon(backOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); backButton.setIcon(back); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); // go back to define assay page. // output files to default directory, and then in last page offer users ability to load the file straight away HistoryComponent hc = previousPage.pop(); @@ -723,17 +731,20 @@ public void mousePressed(MouseEvent mouseEvent) { assignListenerToLabel(backButton, listeners[0]); - listeners[1] = new MouseAdapter() { + listeners[1] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); nextButton.setIcon(next); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); // go back to define assay page. previousPage.push(new HistoryComponent(finalPane, listeners)); setCurrentPage(showDonePage(inv1)); @@ -759,17 +770,20 @@ private JLayeredPane showDonePage(final Investigation inv1) { final MouseListener[] listeners = new MouseListener[2]; backButton.setIcon(back); - listeners[0] = new MouseAdapter() { + listeners[0] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); backButton.setIcon(backOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); backButton.setIcon(back); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); SwingUtilities.invokeLater(new Runnable() { public void run() { HistoryComponent hc = previousPage.pop(); @@ -784,17 +798,20 @@ public void run() { assignListenerToLabel(backButton, listeners[0]); - listeners[1] = new MouseAdapter() { + listeners[1] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); nextButton.setIcon(next); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); // go back to define assay page. SwingUtilities.invokeLater(new Runnable() { public void run() { diff --git a/src/main/java/org/isatools/isacreator/wizard/Wizard.java b/src/main/java/org/isatools/isacreator/wizard/Wizard.java index b4ae373a..dc8be872 100644 --- a/src/main/java/org/isatools/isacreator/wizard/Wizard.java +++ b/src/main/java/org/isatools/isacreator/wizard/Wizard.java @@ -574,7 +574,7 @@ public void mouseExited(MouseEvent event) { listeners[1] = new CommonMouseAdapter() { public void mousePressed(MouseEvent event) { - super.mousePressed(event); + super.mousePressed(event); Thread performStudyCreation = new Thread(new Runnable() { public void run() { studyBeingEdited = new Study(studyId.getText(), @@ -1139,17 +1139,20 @@ private JLayeredPane visualizeCurrentStudy() { final MouseListener[] listeners = new MouseListener[2]; - listeners[0] = new MouseAdapter() { + listeners[0] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); backButton.setIcon(backOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); backButton.setIcon(back); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); // go back to define assay page. showPreviousPage(previousPage.pop()); // remove the assay from the investigation again to avoid duplicates! @@ -1165,17 +1168,20 @@ public void mousePressed(MouseEvent mouseEvent) { assignListenerToLabel(backButton, listeners[0]); - listeners[1] = new MouseAdapter() { + listeners[1] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); nextButton.setIcon(next); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); // go back to define assay page. if (investigationDefinition.getStudies().size() < numberStudiesToDefine) { status.setText(""); @@ -1211,17 +1217,21 @@ private JLayeredPane showDonePage() { final MouseListener[] listeners = new MouseListener[2]; backButton.setIcon(wizard); - listeners[0] = new MouseAdapter() { + listeners[0] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); backButton.setIcon(wizardOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); + backButton.setIcon(wizard); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); SwingUtilities.invokeLater(new Runnable() { public void run() { ApplicationManager.getCurrentApplicationInstance().setCurrentPage(new ISAcreatorMenu(ISAcreatorMenu.SHOW_CREATE_ISA)); @@ -1233,17 +1243,20 @@ public void run() { assignListenerToLabel(backButton, listeners[0]); - listeners[1] = new MouseAdapter() { + listeners[1] = new CommonMouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); nextButton.setIcon(next); } public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); // go back to define assay page. ApplicationManager.getCurrentApplicationInstance().setCurDataEntryPanel(dep); From e6897e1a2964eda316cb312e4473f39caccfc53b Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Sun, 15 Sep 2013 23:48:36 +0100 Subject: [PATCH 020/111] More cleanups and removing of now unused image files. --- .../isatools/isacreator/common/UIHelper.java | 4 --- .../isacreator/gui/TermSubstitutionGUI.java | 23 ++++-------------- .../launch/ISAcreatorGUIProperties.java | 6 +---- .../qrcode/ui/QRCodeTreeRenderer.java | 3 +-- .../assayselection-package.properties | 7 ------ .../calendar-package.properties | 4 --- .../ontologiser-generator-package.properties | 5 ---- .../publicationlocator-package.properties | 4 --- .../qrcode-generator-package.properties | 11 +-------- src/main/resources/images/common/cancel.png | Bin 1259 -> 0 bytes .../resources/images/common/cancel_over.png | Bin 1232 -> 0 bytes src/main/resources/images/common/close.png | Bin 1000 -> 0 bytes .../resources/images/common/close_over.png | Bin 1019 -> 0 bytes src/main/resources/images/common/ok.png | Bin 386 -> 0 bytes src/main/resources/images/common/ok_over.png | Bin 482 -> 0 bytes .../images/ontologiser/button_middle.png | Bin 235 -> 0 bytes .../images/ontologiser/cancel_button.png | Bin 1078 -> 0 bytes .../images/ontologiser/cancel_button_over.png | Bin 983 -> 0 bytes .../images/ontologiser/done_button.png | Bin 907 -> 0 bytes .../images/ontologiser/done_button_over.png | Bin 848 -> 0 bytes .../images/publicationlocator/accept.png | Bin 1398 -> 0 bytes .../images/publicationlocator/accept_over.png | Bin 1265 -> 0 bytes .../images/publicationlocator/close.png | Bin 820 -> 0 bytes .../images/publicationlocator/close_over.png | Bin 640 -> 0 bytes .../code_information_section.png | Bin 629 -> 0 bytes .../images/qrcode_generator/export_codes.png | Bin 757 -> 0 bytes .../qrcode_generator/export_codes_over.png | Bin 757 -> 0 bytes .../generated_code_section.png | Bin 637 -> 0 bytes .../qr_code_details_header.png | Bin 646 -> 0 bytes .../qr_constructor_header.png | Bin 5976 -> 0 bytes .../treeRenderer/separator.png | Bin 164 -> 0 bytes 31 files changed, 8 insertions(+), 59 deletions(-) delete mode 100644 src/main/resources/dependency-injections/calendar-package.properties delete mode 100644 src/main/resources/images/common/cancel.png delete mode 100644 src/main/resources/images/common/cancel_over.png delete mode 100644 src/main/resources/images/common/close.png delete mode 100644 src/main/resources/images/common/close_over.png delete mode 100755 src/main/resources/images/common/ok.png delete mode 100755 src/main/resources/images/common/ok_over.png delete mode 100644 src/main/resources/images/ontologiser/button_middle.png delete mode 100644 src/main/resources/images/ontologiser/cancel_button.png delete mode 100644 src/main/resources/images/ontologiser/cancel_button_over.png delete mode 100644 src/main/resources/images/ontologiser/done_button.png delete mode 100644 src/main/resources/images/ontologiser/done_button_over.png delete mode 100644 src/main/resources/images/publicationlocator/accept.png delete mode 100644 src/main/resources/images/publicationlocator/accept_over.png delete mode 100644 src/main/resources/images/publicationlocator/close.png delete mode 100644 src/main/resources/images/publicationlocator/close_over.png delete mode 100644 src/main/resources/images/qrcode_generator/code_information_section.png delete mode 100644 src/main/resources/images/qrcode_generator/export_codes.png delete mode 100644 src/main/resources/images/qrcode_generator/export_codes_over.png delete mode 100644 src/main/resources/images/qrcode_generator/generated_code_section.png delete mode 100644 src/main/resources/images/qrcode_generator/qr_code_details_header.png delete mode 100644 src/main/resources/images/qrcode_generator/qr_constructor_header.png delete mode 100644 src/main/resources/images/qrcode_generator/treeRenderer/separator.png diff --git a/src/main/java/org/isatools/isacreator/common/UIHelper.java b/src/main/java/org/isatools/isacreator/common/UIHelper.java index b83eb1d3..3ed65af1 100644 --- a/src/main/java/org/isatools/isacreator/common/UIHelper.java +++ b/src/main/java/org/isatools/isacreator/common/UIHelper.java @@ -97,10 +97,6 @@ public class UIHelper { public static final RoundedBorder GREY_ROUNDED_BORDER = new RoundedBorder(UIHelper.GREY_COLOR, 6); public static final RoundedBorder DARK_GREEN_ROUNDED_BORDER = new RoundedBorder(UIHelper.DARK_GREEN_COLOR, 6); - public static final ImageIcon OK_BUTTON = new ImageIcon(UIHelper.class.getResource("/images/common/ok.png")); - public static final ImageIcon OK_BUTTON_OVER = new ImageIcon(UIHelper.class.getResource("/images/common/ok_over.png")); - public static final ImageIcon CLOSE_BUTTON = new ImageIcon(UIHelper.class.getResource("/images/common/close.png")); - public static final ImageIcon CLOSE_BUTTON_OVER = new ImageIcon(UIHelper.class.getResource("/images/common/close_over.png")); public static final Color VERY_LIGHT_GREY_COLOR = new Color(250, 252, 250); // diff --git a/src/main/java/org/isatools/isacreator/gui/TermSubstitutionGUI.java b/src/main/java/org/isatools/isacreator/gui/TermSubstitutionGUI.java index 866231b8..27bfd019 100644 --- a/src/main/java/org/isatools/isacreator/gui/TermSubstitutionGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/TermSubstitutionGUI.java @@ -39,6 +39,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import com.explodingpixels.macwidgets.IAppWidgetFactory; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import javax.swing.*; import javax.swing.border.LineBorder; @@ -162,16 +164,9 @@ private void instantiatePanel() { JPanel buttonPanel = new JPanel(new GridLayout(1, 1)); buttonPanel.setBackground(UIHelper.BG_COLOR); - final JLabel okButton = new JLabel(new ImageIcon(getClass().getResource("/images/common/ok.png")), JLabel.RIGHT); - okButton.setOpaque(false); - - okButton.addMouseListener(new MouseAdapter() { - - public void mousePressed(MouseEvent event) { - // check to ensure that all terms have been replaced uniquely. - - // Hashmap containing the category for replacement and the terms selected. as soon as we come across a term added twice, it will be - // reported to the user... + JButton okButton = new FlatButton(ButtonType.GREY, "Ok"); + okButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { Map> uniquenessCheck = new HashMap>(); for (String category : categorySubstitutionPanels.keySet()) { @@ -192,14 +187,6 @@ public void mousePressed(MouseEvent event) { status.setText(""); firePropertyChange("substitutionComplete", "", getDefinedSubstitutions()); } - - public void mouseEntered(MouseEvent event) { - okButton.setIcon(new ImageIcon(getClass().getResource("/images/common/ok_over.png"))); - } - - public void mouseExited(MouseEvent event) { - okButton.setIcon(new ImageIcon(getClass().getResource("/images/common/ok.png"))); - } }); buttonPanel.add(okButton); diff --git a/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java b/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java index d74fa525..63e0e994 100644 --- a/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java +++ b/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java @@ -71,17 +71,13 @@ public static void setProperties(){ ISAcreator.class.getResource("/dependency-injections/effects-package.properties")); ResourceInjector.get("assayselection-package.style").load( ISAcreator.class.getResource("/dependency-injections/assayselection-package.properties")); - ResourceInjector.get("calendar-package.style").load( - ISAcreator.class.getResource("/dependency-injections/calendar-package.properties")); + ResourceInjector.get("validateconvert-package.style").load( ISAcreator.class.getResource("/dependency-injections/validator-package.properties")); ResourceInjector.get("autofilteringlist-package.style").load( FilterableListCellRenderer.class.getResource("/dependency-injections/autofilteringlist-package.properties")); - ResourceInjector.get("calendar-package.style").load( - CalendarGUI.class.getResource("/dependency-injections/calendar-package.properties")); - ResourceInjector.get("common-package.style").load( ArchiveOutputWindow.class.getResource("/dependency-injections/common-package.properties")); diff --git a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeTreeRenderer.java b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeTreeRenderer.java index 2948cad6..fd59d22a 100644 --- a/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeTreeRenderer.java +++ b/src/main/java/org/isatools/isacreator/qrcode/ui/QRCodeTreeRenderer.java @@ -58,7 +58,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class QRCodeTreeRenderer extends JComponent implements TreeCellRenderer { @InjectedResource - private ImageIcon selectedIcon, notSelectedIcon, rootClosed, rootExpanded, separator; + private ImageIcon selectedIcon, notSelectedIcon, rootClosed, rootExpanded; private JLabel leftSide; private JLabel text; @@ -85,7 +85,6 @@ public QRCodeTreeRenderer() { add(qrCodeContainer, BorderLayout.WEST); text = UIHelper.createLabel("", UIHelper.VER_12_PLAIN, UIHelper.DARK_GREEN_COLOR); - text.setIcon(separator); add(text, BorderLayout.CENTER); } diff --git a/src/main/resources/dependency-injections/assayselection-package.properties b/src/main/resources/dependency-injections/assayselection-package.properties index 8b174a4f..62b0fd7d 100644 --- a/src/main/resources/dependency-injections/assayselection-package.properties +++ b/src/main/resources/dependency-injections/assayselection-package.properties @@ -5,13 +5,6 @@ AssaySelectionUI.selectIcon=/images/assay-selection/add-assay-active.png AssaySelectionUI.selectIconOver=/images/assay-selection/add-assay-active_over.png AssaySelectionUI.selectIconInactive=/images/assay-selection/add-assay-inactive.png -AssaySelectionDialog.closeWindowIcon=/images/ontologiser/cancel_button.png -AssaySelectionDialog.closeWindowIconOver=/images/ontologiser/cancel_button_over.png -AssaySelectionDialog.doneIcon=/images/ontologiser/done_button.png -AssaySelectionDialog.doneIconOver=/images/ontologiser/done_button_over.png -AssaySelectionDialog.buttonPanelFiller=/images/gui/assayinformation/button_panel_filler.png - - AssaySelectionUI.leftFieldIcon=/images/common/customfields/left_field.png AssaySelectionUI.rightFieldIcon=/images/common/customfields/right_field.png diff --git a/src/main/resources/dependency-injections/calendar-package.properties b/src/main/resources/dependency-injections/calendar-package.properties deleted file mode 100644 index 73660355..00000000 --- a/src/main/resources/dependency-injections/calendar-package.properties +++ /dev/null @@ -1,4 +0,0 @@ -CalendarGUI.closeIcon=/images/common/close.png -CalendarGUI.closeIconOver=/images/common/close_over.png -CalendarGUI.okIcon=/images/common/ok.png -CalendarGUI.okIconOver=/images/common/ok_over.png \ No newline at end of file diff --git a/src/main/resources/dependency-injections/ontologiser-generator-package.properties b/src/main/resources/dependency-injections/ontologiser-generator-package.properties index 69bee91f..36daae77 100644 --- a/src/main/resources/dependency-injections/ontologiser-generator-package.properties +++ b/src/main/resources/dependency-injections/ontologiser-generator-package.properties @@ -3,11 +3,6 @@ OntologiserUI.termTaggerIcon=/images/ontologiser/tag_term.png OntologiserUI.termTaggerIconOver=/images/ontologiser/tag_term_over.png OntologiserUI.helpIcon=/images/ontologiser/help.png OntologiserUI.helpIconOver=/images/ontologiser/help_over.png -OntologiserUI.closeWindowIcon=/images/ontologiser/cancel_button.png -OntologiserUI.closeWindowIconOver=/images/ontologiser/cancel_button_over.png -OntologiserUI.doneIcon=/images/ontologiser/done_button.png -OntologiserUI.doneIconOver=/images/ontologiser/done_button_over.png -OntologiserUI.buttonPanelFiller=/images/ontologiser/button_middle.png OntologiserUI.working=/images/ontologiser/working.png OntologiserUI.visualiseInactiveIcon=/images/ontologiser/functions/visualise_inactive.png OntologiserUI.visualiseIcon=/images/ontologiser/functions/visualise_active.png diff --git a/src/main/resources/dependency-injections/publicationlocator-package.properties b/src/main/resources/dependency-injections/publicationlocator-package.properties index b650b34c..e7897a29 100644 --- a/src/main/resources/dependency-injections/publicationlocator-package.properties +++ b/src/main/resources/dependency-injections/publicationlocator-package.properties @@ -7,10 +7,6 @@ PublicationLocatorUI.resultInactive=/images/publicationlocator/header_result_ina PublicationLocatorUI.result=/images/publicationlocator/header_result.png PublicationLocatorUI.resultOver=/images/publicationlocator/header_result_selected.png PublicationLocatorUI.end=/images/publicationlocator/header_end.png -PublicationLocatorUI.close=/images/publicationlocator/close.png -PublicationLocatorUI.closeOver=/images/publicationlocator/close_over.png -PublicationLocatorUI.accept=/images/publicationlocator/accept.png -PublicationLocatorUI.acceptOver=/images/publicationlocator/accept_over.png PublicationLocatorUI.search=/images/publicationlocator/search.png PublicationLocatorUI.searchOver=/images/publicationlocator/search_over.png PublicationLocatorUI.pubmedText=/images/publicationlocator/pubmed_text.png diff --git a/src/main/resources/dependency-injections/qrcode-generator-package.properties b/src/main/resources/dependency-injections/qrcode-generator-package.properties index 259344a9..bb712052 100644 --- a/src/main/resources/dependency-injections/qrcode-generator-package.properties +++ b/src/main/resources/dependency-injections/qrcode-generator-package.properties @@ -5,10 +5,7 @@ QRCodeGeneratorUI.qrCodeBuilderIcon=/images/qrcode_generator/qr_builder.png QRCodeGeneratorUI.qrCodeBuilderIconOver=/images/qrcode_generator/qr_builder_over.png QRCodeGeneratorUI.helpIcon=/images/qrcode_generator/help.png QRCodeGeneratorUI.helpIconOver=/images/qrcode_generator/help_over.png -QRCodeGeneratorUI.closeWindowIcon=/images/publicationlocator/close.png -QRCodeGeneratorUI.closeWindowIconOver=/images/publicationlocator/close_over.png -QRCodeGeneratorUI.exportIcon=/images/qrcode_generator/export_codes.png -QRCodeGeneratorUI.exportIconOver=/images/qrcode_generator/export_codes_over.png + QRCodeGeneratorUI.working=/images/qrcode_generator/working.png QRCodeGeneratorUI.builderFirst=/images/qrcode_generator/need_qr_builder_first.png @@ -22,10 +19,4 @@ QRCodeTreeRenderer.separator=/images/qrcode_generator/treeRenderer/separator.png QRCodeViewerPane.leftFilter=/images/qrcode_generator/left_filter.png QRCodeViewerPane.rightFilter=/images/qrcode_generator/right_filter.png -QRCodeViewerPane.separator=/images/qrcode_generator/view_separator.png - -QRCodeDetailedView.qrInfoSectionHeader=/images/qrcode_generator/code_information_section.png -QRCodeDetailedView.qrCodeSectionHeader=/images/qrcode_generator/generated_code_section.png - -QRCodeBuilderPane.help=/images/qrcode_generator/qr_constructor_header.png diff --git a/src/main/resources/images/common/cancel.png b/src/main/resources/images/common/cancel.png deleted file mode 100644 index 62536a6fc88f0e0744e4e60b79bec184f8b2028f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1259 zcmV19Oo43@) zd6i}I!0J0aDpUSv@!k!I(e_UN^P%B4X8D?b)dVMezI-EZC!`hV2(`wMbq<5V2~lKz zWL!*~?{Zd-gCo9JoB+77MY?SqjzmTUaRzv2`sJXQ85q=fCehd+N?Q)AJ>k$9IR^!T zcHWj`fv`>P%^?uyEl&PS?p3i<%>lP9%CjISC@MP7Sz!};;4GS};G;>NalBO&O1-$= zzaBhPx^cbB+FAp7Aj}ho#t{Tbrm^e#`^17IApRXLhw*QcM@%w@f(Kqa4$V6-7Kk54 zob0_DcnLb23=2#~0Avdqtl9VIzDBBmQf^pN2;XgX;ex=Z?7k8oM<7x&NVq9kq9Vep zQipLvY(IS}V-2FqydXgyHxl;A7ESa${)$+1V(*|zF38C$%UBkgPDo~@evS>QVRQsc zX-l&|23;r+Vu2W$3R+hsq63coq)90E-PWdga*im zqbGa_fnGZ-K>$NSSL|&@GWsAG5No*;FjjrLN7EIVZt9JB6!|uN!a!6(t{T`T6n#*F zB7vL`w8k9g(TF{`(l9t2!#~4_(>;R{62~?C&LxEv<^J9X92=zY#uT!r>!S7<4kjn_ z;9O95PQ%Xftfyt%s(04OgT^vQH)^R`Twj~@`-ux(n&Vbm%*+c4C?ou>k?nmiRGB98dW2i>Z2WT)Q8$|2{BgB;r zFfK@)U;8-jtzSZv-gjaouBc1P(Q;8z{Lfm4hL;v4h5`#4}SJm*0Kq zq85EN!=kAxW{nf(ZkdXr?X{E>6ur%qDtvTV5Ehz3JHp97uh^w(>`S0RYCe Vzk+^D`V0U7002ovPDHLkV1nhZKw1C* diff --git a/src/main/resources/images/common/cancel_over.png b/src/main/resources/images/common/cancel_over.png deleted file mode 100644 index 1a3213d0e16e2e38618273f162331c441fec2427..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1232 zcmV;>1TXuEP)+ez*0SKlvTC^>$qCewcO9{g<@$*V=+(B-$sKsV7Wo=^NvR9$Mtq}zD%EIw*NW=NwJl|PI?z^3z) z)5ffq8zjo(LBcxwOF64Q^gTX2JF&K{le1}*uClIT6-p4WzI={}su72+(Q#e9Ji%o3 zo~R;Bi@|v~0uYE201igkhOby#W-{g=1Q2`TAmH5E;Be8`{ytr~(r;YHGe7K4_E;2^sMG`7C<_KBC=&<- z+dYX34JCl`4RNOtJX9Dz#xt=wP@<&Ea^`3Da*(|yO5uYk?8l4Op<@6{AoJw(Thl3H zytsDMY_c{z2;vsCRjo9Qw@-|QfUC91%CjXW65=>X5jzm13FHhMr!tMw>XzG#?qWps zp6l~7X2n2Os zk~WC%<230T=>gX_q988HIIml1&ma1rHEz0-iIa zW?TzE2^_4AbLd7e2ZU*AOs|C?#8nLlE~=U;Qzw8INZJRF0V;qhl>3c+;~wsNY(OAb z=oq9>)7w`bY}kpDdJTp50|M)}z?q;jSWhj`Ul z*s|NJ)&FLVjEwSw51%ufo$&1|(F@A9S^=UmcRvo*XpYdoym|afZ%esA(FDu+(OC@# uIudZxdmU#rrY2_&2nU2SXJ^v>3NQeI*@!h=b5e`|0000>P)X1^@s6jP_Wj0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#ib+I4RCwC#SV2e>VHEz;r6t)B!v%B0 zD6kZwK*{K2VAvrKMwhx2LY_7VZw3_^B;+lM^;8sgsYB(Z4#|RbDGD|S0^N$DaLw3A zn#EW_>i_=TH~#bQKRYu^P`UG9*zun?|9kIy-+TWX84Dy3KeA3;FwNXZ72+^$7?Ejt zA*4~dP^BcX0aFtcja~v^93#sT?s`HBEXCje#J=y?uMw{HhB<2P6)ab4W+dGqXV;c$^R-w|J>1W-Plz2pcA zvFY9EVWC?UrG&BpC|(7+8`^iUy7ukb=SwqhIfy0;$C}yt&CRa+kv_!e>eT8i&&{)Z zW?tOaaocK1BWX)BX>sq>t}8H~dHKi^J2l7_Chl150RV6&D=`J{wB1USl#BeHaFRQ? z>+yX@K;Cl(=I7>Z<=S-O7>mVEI_f~8hx^#p(Q}qB3%Bpuo&(_4Yh$iGv8G(MaLIu* z9Y4y09v7Pe6x_F*8L}Ax%a$c)sfPd*=)p1kssYIvo*jr=&q*Ka*k>{MRIHN@?Wyi7 zg95N{k$-B!eKF=|k$xmF2xkBWu5gi(SX28Cs7;gwQz+xRrykgX)X8G~<5DxC`w3vloFwM=b(bXY-0Wug`U~$@FFp`Cf`XKh*!uOSZ0z+m8Qd*xX0!CMZ za1H@k8I2E$40$m`vrnZWGX&ChGaH2tf3>74W(<%fx{?8$K5&w#3UC^EQRzNq_M;4==VJN!ZDrka?*NrtYiX45MO!r<&%iY50@G=EJG!_69fR13nCTg@YC}2i8yZDTW_V=kimQ22`p9CK{(piraEu3;{s{go@ z0OR@*i4zDERtF_j=xD8~k4PH5)l-1_0hr=-)c#)>;~AJWF8;r+ga6&2n0000X1^@s6jP_Wj0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#ok>JNRCwC#SWQS&Q53#TQnN4}!hRU7 zTnLG1xG=D$MYiZ?Q=5JkxrnhALSPaY1Ttf_NeFF|3sDH%h;3}u1my_H49q~mlvo*x zjxyL#Gb$w}P4BzYxpU{ud-F$&Y~F#(yYIg9&hK~5z3-WrL7HSTLZD5>>V@$G_09r} zgS&Y?;7%JDg&YM661P!GMvwW6Jw}(YbSK+);XJb(ZB*u^d~I`Og@s+?Ed1h?GG8sc zz#t&ij!qsNHI<(_sRX5yP2cL`0m_xCI@(y(&9-=vA3VHuN(n)!d3aAVC^DMr2KqQ} zK_JG`bc6>bTLSOe)U+}_Xg)8gJ;cj!J-DchrHt~39~ANWGN=*^=1qV%15TTzJ69|ZxQH00AP%alxoLq_V%(prCj9q;zlkpukDO(KL4yhvW=5j0}nA#E*5zK~Dn_56Mi(tw;$9f`vi$sS}QisM4ODTd#bWj?(yFGLcBks0GU2e$wK002ovPDHLkV1n_f+Q9$- diff --git a/src/main/resources/images/common/ok.png b/src/main/resources/images/common/ok.png deleted file mode 100755 index cae8587682581ce980ddc6bb22bd7173d29cb304..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 386 zcmV-|0e$|7P)F4h0~qOLQO_~^1Rxbp z1*0~WSRI@IVzAILpcH`EfePk000ZI!&;tvYhG>fM2N8qb@$4)-3?3>KU>XSs40^|d z92}-Kfk9i;15BfNVDLH~=5R4?6)+z}qkDj9C^#GjUVpp8@bk}?!RvTj4!`<(2g8m# z9Rr_iKn}|>-2zU_Vfq7#<+i;RBXo@p*t)hYx5`iOmC~IDEj%d1Mce>hJ+6 zZLoP@(WMlIPd{Ifte2i4{{fc-84kZdZ^tiySxSXKm`K-dAhate0PRf~kZAi0GuC(6c}Z7_W%F@07*qoM6N<$g0(u0bpQYW diff --git a/src/main/resources/images/common/ok_over.png b/src/main/resources/images/common/ok_over.png deleted file mode 100755 index cb884be232ab4d69079c3d82d5d369f01da0a855..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 482 zcmV<80UiE{P)j>ItV4?4SI`K6aVZwKw{*PMr*HUcfJ|VjvWNG z)N;A+gSJX6Ml zO4NJ-_@QhX9-H-fyT#&Jj_sIE#mP3qri*8b-+()19-9s2q(cYL4m8G`ocv~nt(<|| z9B}CvbJ~^$FN9}r6=w++wxK;-N38RqvhCCMhZ6;E*2Q)JzThsIH=9q)1U7lYu!BBW zc6N}XoUWv^y$_%axbuO<;1JRfk-fS1o+5F zKrbTzZ*Uj*gwCENqXeH?nLGqZI4Q5te7HOV@B%M{XUB+G78~dn>vn=?Ns9do25Es~ z`)zp!-~{ee^X%zuIuyMjq>+ef0RR91 diff --git a/src/main/resources/images/ontologiser/button_middle.png b/src/main/resources/images/ontologiser/button_middle.png deleted file mode 100644 index a18af9c419b7a6ce5864dbd1c8bd3aaf8da96bc3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 235 zcmeAS@N?(olHy`uVBq!ia0y~yV0;c_t8g#@Nt=|^wLnU;#5JNMI6tkVJh3R1!7(L2 zDOJHUH!(dmC^a#qvhZZ84Ny_9r;B4q#jQ8j9C;ZOcvu`2eE*(i@ez^bH5Pieac5*G zbA#G6PKFR^hO2A=xxx%9%otYjF1V$}5ReNLd{Djd{8pxh^}G#P%wQSv=vbGuD8>cd b>IWDCKeLGiOh0`X=r9IPS3j3^P6>y1l= z-n8CiLK*aOVF{8#)I||Q1Vy(&^c~y}5kZ7R1rZTM1%;p{Xhv2SZWnF2rZ=?1&ebA0?@PFlCs_oVkN@X0cQv#bSx<-LqQ~@nJuH{tE7y(WpYs zo;gk8@fO!{=9&B`#h+L!cKN1%N)l$}6go*#o3i=qJS2tT*bbQ4DOiz39SeNzR9 z1BLZ@$b)`CB1d%{I%sYR#O?8ur>uHtPwX?trRkbn)X)bQny#54iFpu5P1D&m=AyEQ zSvKOq!$)im=JRmlLh@i5mk%@7D%xN}bg2;^@F2<$Lj7lw5K5T;s$5gW(h;eZEi z32aV2zcnzORNF2}PIai$oaxlOun(RF*npMGi#LgfH2c49gN^D^JWu2taw zo+Y|9p1BdoYJfJ!nuPbm%ff@kCnj0j%^TN!*Np4o8^Ez9Pb(tWo2KS&Ak%{U=v3H? z48Rd$_Ob1Wgjt#ec}Z1WU@5`weYjtNdMi@GMvhT)&vXOH#Rj5a7bUMAIz0M@jk|p5 zA`44%?U6AiIQ^@_kXVK5)uvM^Q_TSmDFC8#ckmwbN{G|7t5?kQ0WZE!l|HD2lgVVS zzP#M4>&v96X_xS%y|J;8JxnALc2sR+w~K4a7}(jap+BAe z#>SZUq<#1uV!2mm>lSSJ)>?t!w9RTE{1F0e9N7;e24vGOYh?J6oLxm_+ zI>dT`4uyE%Uwn_d*Y~b>Ng8SR{oqLM-FxruKJWMYeSa@$t5hlvgb-Q5R=2e?g2q{= z-mo_HjH!gMzRY+Cm`@mHtuQ&vIcG9VhUrVN2fIc8^prSo=2T!mTtAt;%W573^8AZg z0@X8cL43YBDx8&7BS`c^e;kF0`|O!Ekfw7JNLb>=usHqr(Y}My)q7O*-5DpRi44;z zm&N+eU)D~TR0pR6)j>)F(5Mgf|6v}Z(x>NQGO!<*d5=(@x$$Pn7_Jg1fSEwTFs_vQ z#9{7Rg_jFfpa^9fNQ{eOwkSY5!Y?Q^gM<;+O%Y;i-%|mSKw)9>U{sLEQN5!hYEd9= z`D-bv9^#jWjEjnE2+8fuKQ54@8V7Mi8w_JnS$G#BH+Yq<_fJ1n<8c1<;bi2+uNh`o zptXQRjzT&q&OBG%NGWFVEp2fDN%kv!%+vg61FR~*F;$Y`z%$?+z;S&!ogrX=x>fu^ z&yVXE=d2WH4BF~RNu9L}!p-qurqD(^u17I=qj@I{$2I9uH*i2m!1d^iPSK8 zE6qDLLZ8d&+XPS-#^UUpf`zakOJ^7@6QgBS3;ZyKD<`X2Jle&rV5ZrwQVX7 z572X#$um&~;f3LS5HKtb#zAcpsq6oQB%{=rJkRa3Cj38Uug@>|@+TIOc46*r2Im`# zODabLocEq`>{jtR{o{c7qgWgMP;?3j2C?5-q001Ni0ssI2PL5DA0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#ElET{RCwC#m_JNYK^(^mZCa3~#3~3$ zF%C^6VAQZd7?g>@=t78->A>jFL`)nU9auCBY&tYLNnG4I7-b-mU^IjX(c}>uOG0U5 z`IA0O#fqQy@bc_?^!Z*$I`_I>P^7 ze6qG(%q-=SZo<|diT#CetC)G4PPh+YJr7-whne*(KYqX8<8>;AfG=45Suiw#&hZ=q zZ?tD}IC{@qOPvd^y(P+rW>T3rgghMWoxFPP_K|`on!RnqhD=)Kuq$-=2*MMk?L^ci zT51R{t18pWahn{50v)Y^jML$`4W#x*c0&{4`r?(dfBH#^bO`?c?DvYtJkTu{L zjyFfB-QQI%Fp-l?DVl`)^7DPhM8kvhEBRR}!o+z{$^hPYP#zVZFU9#bgpu1(s>H)8 zJo8Qo|xOMT#`?VK@h+CPKrcBy^NAZr2-!1=my}ON@`k6qL+L|Zj&;!<<0c(Zjo!xwD zbH4QJ$ERc7q=(Xn?l@=+VKUFC6iX!L(d#=dy=TE!gJE? z32aXn$H*5O@EmhLG?nOM{Xfld`bQYuM_%2BaQ|(=`>?sW$$jt&1$CdpQmI6vo`=rN h!}5Q@t}ed?7yuTE^(+{m9U1@t002ovPDHLkV1h{ztP}tM diff --git a/src/main/resources/images/ontologiser/done_button_over.png b/src/main/resources/images/ontologiser/done_button_over.png deleted file mode 100644 index 8a8f73a0a056788f405e6db2a26207c8f65aa522..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 848 zcmV-W1F!svP)001Ni0ssI2PL5DA0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!@<~KNRCwC#n9pm|U>L`{wKUryyO@jX zW!b@|2lb%aq3dAI!IMg~3mSr93$5CRNpS$xPVcoJ0 z4!=Z?F#1^<6NaHlQaZ|nz*~R(Xk~dxtfk?_QzlfPK2nZ@ll0qbx|mgOnAWu?}8GkS8i zZQ~yNe8Z^12}zRpq0Ym0ucL!GLojUH@rBoSzL+qlW$$q+>+=Ywtb9b>z!UXtKGfk@4;`WYJw;rsm;#UC1fobUPmG+PHGK|CBLLm?1UKBC_ zo>)tBEuN2`K7#>P&|yP_imfa~038H`@zWI~Ax7y}l*~Ep27Ce@IajGvSe%C|WH3BW zG32X-x0T6U$0x$VuAqPW*3EynH_cvyvfC1`UcMM~N10}Djh>p~Hs5$xu;TN2AbDGI zP_74uUk8nn-v}4K7vodI7oIpv4dayMDhp{lVkd6&v}~54s;X-BXhyGRs4qwe@`4?H zz4wkMjv+JoUQEC=dNj0J3|bQV zLi)u+8#_Har(N6S8f1kbz_&_fcwbc!ku-Ui$LVRAi6FXgZH{iWo_d!(ShBaK?i|=-N+^h zqzKNu<$ITRbEDO0f57f#J`nQFjNZ(9^UeD)UZp%dJUmt%=e!9#zJIa#P`}bSi!JVd zHQJ(oocAX7STsDzJUq!fJjt43{B`|ou3&DmNo#k|?YgJVf4K6=y1M)2Pvf@@7Zx;c zrk{8P3yT8JR*P-u^uxHY1mvT z`ys-dYMMijxdUSCitnf`)NMOm)@mTYqYSyRup51UU}+!QOw4yePuL;A_#+WQ*-i?f z)YM5qKJOikdAw+X5%v!ssaJ3J-8>mKy?`<`Ty})M8&IMzPG8v+(scU|kQKsknIHul zrV<_@5}O>MEfgDMA{8wrCQ!nM!7Rv&+Kc`gKN^JIM}(l4CYl74KE!qkg=Y}vE89p*Sh8|O4lXKJKSjaKpQ?0-Ik^UwE%aiT^(m7_G_4m)n z1}<{oQDdpA(I1LPFoc(+H9xlLX{pdNCZSj#ktfmb?}WD^9TLdxHSLWJ8&|f~_WA?$ z=Fh`%694x1f=wiuNNUG1 zom{dJ4g(mKpHdLh^b9f##3CeBqQ9CkRj7^iA5F1|Hai@M1K~olazcJvffNC}*gW)n zr{;jqKaGwF#$cjR-?Rj4P5j|*a}noLQR!qI!%$+o>!Fh^NI06oPJty%o8%3<3KbWx zrHeP6Kt?84gd(7)ru$Fnz;c&%ihN!1+xt?ze6z2o+b0YfJolrn^NY zHiAN_P;e6X#5RqW{cEnqwdG_otcwjS#3qDH8oXnhH!^PYO*w741_*~u>#s!U>#FAv zdfu^I4i9JbWU&zb5Oy-^0`vx zISbuan*=BMXg}7|wkKRz=rIHKj9A~UngfVv1k6IeMx9iaOv`vO%?5ak4QPEdK%ZRHy%H&9N{lE$0hc|d(E+il$P0fG^c8gd>V zXNF7=czAetczAetczAetczEoKvtt}7Kad7i=PE-7bhUF zfP@wgPM0ubos2+0Zis!RwiE`p+B!%~Vaw+4!t{Tk_6xMzG+U!jL!>9B&nBhmTF<=y z42OfZF-)I1gz-q<*>{n7cel%29i)cp`#Jm&-t6~l$NLRuG~Sk<;2}i+XG)>MQ-D;e zeF|V-*3S01{{sTs@Xzz%L?Oh~6cJ)t zWZ4xFEs#b=He)!yH3sbIXejAOr$Cu&Nd zFeedTVc!2#KIP~aiw{_Xp(47*SbGbsFOtn*Xy!O27KkWQ3|!F8xpjzjf!%zAcO}TV zCekeNv5pv~PYtIE9dR7ucy-cz_hA3F0(Lpx0qb)jKAZ2qSq_HSK}1d1SJfU-CRid$ z+Bx65{6vJ)hmJ_i&x&VZem_#QvOX+echa^tEk4Y#z7>l2mwg1*SCduZ7{tJ-BotCX z>j!k$lHAv~b<^ z*qu!x+~@K(bfjr5-e?5*mnyOcJ<&hzsNF)81ZzZy>;QgFT;dyZQl_Z- zzFqxX!q2(ma(KCKG((yndR>wZ4KiJk%odXi?9NCzBzHHp=~Hoir4I?%wK=}w{%m?14k< z%Sl=&mWEcBwTg z`ZlA9-wHXDR#J+VcWCGFa*Cug5p_pekSmp1?3-^t&>Wt~j$Fy;D~ycZ%V{rFg?yoQ zdnQp1b4?(I66543*6(DaQCiJZ8ct|_4e?r1of*MSLw@S{=`>u*CO$w!OLrCYsr_%U zEw%sRD;1A}@%o@5S~@0To_i`i21c}WY)bxDL{<(w{dtTNT70OQ&%?vR!^6YF!{hJZ bw*UhG`kaxv#_F-T00000NkvXXu0mjfUtm*s diff --git a/src/main/resources/images/publicationlocator/close.png b/src/main/resources/images/publicationlocator/close.png deleted file mode 100644 index bf67dd4210b90ddd72806021681885dacc05f4c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 820 zcmV-41Izr0P)REZid^T6yOeDJ=G4 ziWGtP-ts2Ao10xH=Y?F%J{aa^-;cD*dI+QnFcHd4T#kk|hI&tk{Nsnw+zEm_G>qe*a)1_m{>h`=_4+l`t@OzeRR^X<2-_JF}NqKMm6)mE9T) z5Bi1W7}-&hwWzFOZ&6R+JHT&fcpmL-7$-rg1oVVBY6JWY0$pPL$9RnFa{?v%6WkNX zL`eWuzT7)aJe$sQ)V?HRa$%{2k(H$uUikK1JC=751YVk3Lst>VdgvWj*fXE3d4>VE z`G3(ljPoqc=G_xBG>oH%H!-DivuR_ zsTnIk2maUVHzIpsq@_CSK?ySM>xN-7swlzYiU8gnkSUX=OwtIMr>(Zt2Sgp90v;3I zhubA>VjP&gXM)F*7lTXp8NNuBHF+VxN$&VX%1)82PryqQ`&E`8J?34u>=88Q1Wa+-4pZ3Frod2?!GqCTO}r5DTPCkZynvJtJc!&83y7p!XyzYJ86S{CPp(;o;%o zal9C~99o`TPVIC2@&4SPJEccTGAI3J-#~i;4t+&ZlY}Y=A+jE;^X0z^fbByfYmnJcm8nKX=Vv{7 z{Tx9w2y{;NuPtXsI2+-=SYPWc`jqF9(&ez-IL`nKBZEq4LtpY!ke-Y7nY5gJ0x5%6 z)~4iP34&VBwzr~9DAVaWUz{t*ifM$YlIZSzPkll$mjT&-VTkIr54z}TstOUq=FF1 zK#=Z^&MXj!1X7DiTkU!em^P5l&{Iu=(d7b@^B;4#IPt(*G|Yw4ZUVGHfObknl{xtt z^sIm%(_Rdu5Wz4mS6H%pz)Y#p3f8`|fwd(JLSyB>f*9$G^euE1mWaUbpOBQyS$TVj!lebU!k?kDYVBO-U?3iU99v&VZ9>;`F a0R{k?AsxW#Qx&rS0000EtCxQpvuF8BQpL4G_u zKQFGYvif9kAtiRhU7v(Qsz?HnUV|!nBt~UBZ zZ#I|?`sgN-{x1b9;Go4w4;{AlfUz%H#gIiVBNzl9_ zEQRW3c$c3rMbUJn#$~v3a8L%V8q^%Jgp<(|Y56YG*Ih}C1b z)#GPebeTWe8U}fi7AzZCsS>Jijo6-LR@=}*|TO?KK^)N<(2#&f4&@hJl~}+`{1o}lTUeH zd9{7f#pLa`+h?5(|M=s@#mBez-=Dnb_|}JSpC>PD*>I!!!?(|`zT7csi4!e!EnYQ2 zr8;QR-j$m!9J>AXNbvOXv(HvHZJG1`|NkSs>(hYNDV7BJ1p~Qw0mJ-*7Ze#77=L@Z zIEGZ*dNcLrv_lF!ZNdvKw7%QDcGma$Q=Tg>``N~wt1vDSFd8 z$yMF`OE(z^JYAZ%m|^0~89pmZQ}{R>R{2d}d|R`WiQRh9;=+{R*7B?y4b2uF&TJaD zgnq#*yLHp9YIL9j`uUZdk}EzDWC;Xk3Th3Biq@XGc|^^H0lT5VY^LZ3W+UbuHc~G3%~q+V?x%A_o=r-YTEd)-q3_@IuD=b-NDE zEI;>BkYjnqj7~+rDBYJHd>(8o-_*CeT$(ZSMea?$N|$eoTclM^H=G4tmw?95-%{;Nn?&`ILo{z=!H2YE{Sq{Ame3c;ceqGj*hNl9* zPgHb7|9dvc=)H64)Hi<1=S_;(uDFkP)BH)YLA@QHosOPi@|c&wsZo@3VCRFIubhv4 zE=c{7qw#dRcl;e4l1YlnnD2QbYrc)I$ztaD0e0sxS@ej5M) diff --git a/src/main/resources/images/qrcode_generator/export_codes_over.png b/src/main/resources/images/qrcode_generator/export_codes_over.png deleted file mode 100644 index 1cf8a36e2fb846ad0cd98cc37cb4a933b660c5c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 757 zcmeAS@N?(olHy`uVBq!ia0vp^DL^dE!3-q#dfX}kQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>Jijo6-LR?uhEPIaGAG~$Wr7!!#x6e&m=B&Ju|M=qt(L&cn z$G4ia#3e6mQK=4k_2tgPx6g}LO$eS|e(~|`MHiEQ{Q0u|cKgR4FD9SzzVd4OrVEE= zoee+xZ1w*8lW)I0vf)Pcq`fPTJ)Zyn|NpJ?RviXfr&to?7YyX$1q|~KUQlFUVEpar z;uunK>&?`g(+(-{v}MNyuEMxT#9--9kADpg`57M?|L}X1 z{`Tz%JhjIl`@^g63S16*TNqwE;uUDPw1<(Y@Dod>ep#W*>!j&(e*M-^dwKj_Rp#NY zC6`3^FWqDyAi8wjB8G`GXZWlvP2uBkSmif??QP9c8ENYUixU$rca*=n(a>w*;moFS zJ5FuYG<{GQlLn7%yO3p{_Qg^PE8BFW!d&cg%L)xyTmK9sbPXdDu;d2pt{yIT_3oa%OG#?`il> zOgmN;;D-)LP~|Y+3wGBd3JQ`rSH)mZ!f>hy=zx{$L+VIJ>PCad-k@Fqx0jx lF8%e#xK81HQw^s9!}Z@nt*#bs>cBL^;OXk;vd$@?2>_I5eH{P* diff --git a/src/main/resources/images/qrcode_generator/generated_code_section.png b/src/main/resources/images/qrcode_generator/generated_code_section.png deleted file mode 100644 index 95c15130641f48d411833c73343f723628988a43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 637 zcmV-@0)qXCP)9@@0tGC;SzTT7D?Zcy~td#%&0oqAKK~#9! z?3deeBOwe#=@sI-%)mcX8d#<-Y$R#jiKd z?~Cg@xPrtxh1YNi{GGzraK&|dDVK!lH@|E1Oh%+EW>RSH4|~ox_gy~c$#Dolp5odH zkRYzH^}!(}V4?R4)aX1G$O4nJA28FNIjRn>V6wWk4|2f+#RThbk8@>UJpjolZ6OdL zIb(Ab`_Ad<#Ya_1*u}$ZC}kV=q-Ag|sJcc)+7b;11p`(bEg?S4rC6O~yx5AMQpjAY zG8IA?uHJIDY3i=jH5?)pTt(pTo-TXCxx$d=eqiS=R5V#f;veEVusg0^^zTK`3uzzS zNX4+r$u)=d3L0fJtE|rl?ADrTjMFFL#bT;6UOaauSC5y75z|fTu8eCN_IQg|KI0WF zbbNmZh4B)}4|55toJGVOmbIyzT%llTx=pSsBVNhutJzsXXMK6rmvV2UmS*8ueX+mq z%X9m&GG2XOGN+TP?>iiB<`L#HbA)SVU%Kq)e)N{GaE$$E0`u;AAK|HUl|irxMBYsk zZ&{f4%D7*q{mosIyCu)@r|^N>=wDpbul1wn^DFP|qo6F|`p&tyKAG$KKlJ}|{SjaQ XpQ98jLxc6$00000NkvXXu0mjfc-cU^ diff --git a/src/main/resources/images/qrcode_generator/qr_code_details_header.png b/src/main/resources/images/qrcode_generator/qr_code_details_header.png deleted file mode 100644 index 104cf8fa652a2603f14cdaebeee8aed813917c4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 646 zcmV;10(t$3P)0`0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUyMNmvsMgRZ*jK)94+z#Lecb)atjl+lRs0&P0xDqQ|x2?dPq_ z{MrBj0oO@HK~#9!?3Y__!ypWWF)(w<64LDQ|9|R^O=#1L_AqVQLw%%>6bw>7oP*<> z$@E;xak}Z@7{7_mhU^ClKMFY zQ|LfBXx=+|HsL?NzYM)y&MR^XW*l*(cWu$A$<9hx6!qYXdisTZS((Uq9gdVY3~WaE zNO|P)pe(sO@41W&XUSzaM~gASF|y>cSGpBF8TSS5K~p_*& z;ma)U8-za`y8ALh<}f!o_yWR~a-du`^s-UD)EH7794K?uV^C|1tk6r?YYZx*#t5>U zgdndQ@ZLB^?jv^k9qVPj{*V}@Z?AZ#c=w$>YGGCj>1A`iu8;eO>H6c&irc@}5*CAC gGMP;OuP*@x0H3WDT}jJ!C;$Ke07*qoM6N<$g0!AK=l}o! diff --git a/src/main/resources/images/qrcode_generator/qr_constructor_header.png b/src/main/resources/images/qrcode_generator/qr_constructor_header.png deleted file mode 100644 index ee52843d45093a924f21393cfba02f5ca5b44758..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5976 zcmZ8lWl$7=v!~-okxoH64-O9x>5c?kOcXl^MPgk7+zzo2_!J*L9P%-$&F*rE5oFw@Fq@Glvq<@Ub zOZBCfp_{#zFWl1(N72^J+U}923*5oZzz%Nf=P_g_^Uvvv9@I$n{{B9`Uw-TNcK7_K z$~&j9x@(BX#WVmJFK>ftpf=xkq&3F%YfI)J58S+!2VY=_h z>FNH#A)SY6%CPp)#qW!o)1A}B&YvmMJB@`CHVgZG)w2PO3sEDR<(VTUi@U>@msi`{ zJ9l??=jVT~udi=zZVnIs{5d+>K3zCIKDoHK__~_6`e$rscW-ZRe__A(>iT;7bpFr9 z*5&2p#-AStXB$c{!&z`}=w&rk6pc{xdltm$j>Mt$Jb zT0J3mw$L9mG0H#i`^ z)pi*o~iptO4sGLx<1xk(Q8|-s>Tr-?F~ZZ&u9Y~y72jczQ8~+tOdcq8?e-J z*e61EoulwBSG~c{eCL%52;IO<)!LzK|GwN_i}bS5sZCc>LveiRMQ@nyO7J!W9fyzI z$MkMzE%kd!C+2OO?gKj06@azh!(5bAW?TqpaX{3Zr28@pAmLut{@a1)e-9U(b!E^G z(E4umJJr;%Y-eHY8Fw}q=uoYq8?Vx3y==S9yHt54oE=_H^784T8}*KyxkyXGX3F>1 zENbNJ!vCPAmlRUmI$J~9fh7~p^hteLVMbx)BxGD%&Zt=gQ`_553Izn@7br84!(I^@%7vc+k{_c47lCja`1B# z2j5)(yuZ3;>$=&pTDI~9W%bJ6?dIM4Q30*cdylaXHc61-ke)UgjIJ)b$JL7+bHls- z0-9SUVDoQUry=xn6N6l*oxC0m)v{`ir1Oq9zw)SRo5&4$#bEZ4wZbN|p+BxhfVCIJ z`O?IOE5E)JzR%Gywk0t9da5szq{8fx+mAINERm|gU%x2U*lri*qGO2NeyWBYrzUHz zlPm`9@e8@17i9K73H3pJwcgRcN(Mzwc#y#!0#Cq5Fw##WT`#(7&=K0Ys=06F%-~?O%ku8<^GXcXbDi}V4YaF}3DY!Q#JkG03)3vMNlvp5WPGvSX0cAgKEQ)tOpc>;UGbV< zK)X!JbnDZ}9plyIOQrleV%9~sVkCaDi> zS${Guk|mX&dmE`yZA$rm4ddo)FmptP?jN;R6H`AM_5rUjVYACU32L1+@-Wn|*9w2U zgh|&rBEa4UJ84UE&TxBy-BTU6jA=1AO<7-Ldh^>195~bJY1<${S4A0s)iL8KS|Knk zG}-*v2*FHWhBMnyphMAaFQGoa&UBnO%rd`DfqnVN<+v##V?gj5zyo0Dp&LjjGZ-_) zWl9+iN%b!V3L^V72ie4Lr(ltWxW+=BC7 z7tl^qy)J3uI{BjV!6+BFJjD89zF~>BTqGZR+VfEol}bu z(9a+{sK9r28Kx1I`0?EI8u^P;^bE^W`gSyRsp^_AVcvG|3!O+P&{xg4=7R z{Vp-*b^<4RKYDG4%(f)pdqhBWvTY=+r+-UH^|Hk!B*%hNo&@w>EGgsu>f#6PA9*4W zq;sMS6>>;-e+JYMNtP%>3+i+9v99}AkEGRrc}_sobJaDY$(jlutRc~_Bl9ZoCc>9L z5ZJXuQb1^pNn;P{v?Op{Rs`$c$pp`_`Wu(T0qP{Sp&3Gwa(h0x)0wtSq*AeFJP8e4 zf{?8Sajgx5x9lSN2N=TA7eE#LUK8dK0758!vl$QV!gm;%QNTwilK6H~*5_;JXH8v( z$KDL~A0`S*2qE=d{(Wxm{!ydAR^UQe2;(QaW%X9KNIxkVF--zVB6dgdTZrX>SF8;OKl*MCWeU{bJY zaj1Z`RBB{~!s?V#;XU(GpmBy$v!>xA`4=yJ!OlR5YRXSG=t5e7WyzejXUU4!g7f7o zlz>CZXZ4$JPMnVHK}31s4Yr6la4*u6p*Of14*5Qhr1JZOsriOx9KqmlDen8FLU)Iq1S+b4Z(^ z4V2jk3p22PX`6F*n%XgBV@qWg{rMGNTk$M@lD1TMDR&45G`4N1EgG5Fm#^<^OBr8V zLkgI$W_!qJRsDQ>;p*ogeX&xV4C+H;T)e)TC%3m!bjFb2r6`)#Pnm&sRwJLl!j^Jc zhlSP)-pY*ca9S6$+#KVW3Bx|WCPw#vEtlq0Dad}jw;%T|Ns3$E2|GKO9qH%tHcWSn zuX+63k`{A=1kW`gXYetc_PBB-&~nVU{{CEDT$%@k2>#c2PSFF=4wQ-$|MgE zDJQ<&#e*yowF%e%5XJb{pDQY|G}Jx_xSkH)<(l$2jBi9`XcC^k+I%YO3LeOzE)9dN2J?qhufX;aZ03etY%@cLF!Ih3_+AZSt6|~gR=-b$cMtO}8VSn^?leJr z!?bK9^k`v%2vc}!KMYkRAz;y+WpEg&MBM@L9`kX)YB9$SMFj{LFB7eMvT@;vbRzqvf-K3WBck4=qhG-YmFs4$#G96K8tuf}7 z9>o8q()#;u0(rsjAaoh!Tz*hU#!e<64yk-&isOP=r6DsW+%h*q`)x|J z>cU&J9N<2Ay-}S+wHgI-o<-j2>$aIja~rDam=WXA?!@nx51_}6bE>}K=JTpzO9^lN zP`W@<3fiDhQr?HJjJ)7*nyr`gtLvbm>84{YGWZ>H%PV9~W}S4HAB;0=y+5_=6@4L# zgEn}K4NKr^hK7=;9=Wx-3*iLK2Fk)3Se^YVGS?4jHSUOMqve=S4Swm-VJ;Hs{iU#6 zYic#1S1VH=Hd;qorCxOwMR?hut1xA)*#c&VXSeAc)@R0^{hU7Ro8_Yxe4ky~e`M^% zda0HtUbV2$LWOp(S*_X7Ip(J+lHO3)h`&$?2A;IjZVwCD)8_FMUQ)RkkAk5b!Zz0> zn~bLyJ?5T4i$powT>VCWm$R>2xr#oz;wr+bitF$zoxtJUpbW#G5pyG|@|uPw5Fu@-rFx!LCL659 zA64!?lF5w%+?bZoH(#wz+xts(RP#DnG)EkqE~Nh_NIevmg64&kM{ILUV1DV)1WFA% zax)F4wyp=lbJqPA+NRvBbb}b|r5J9xb=WYE2#bmlKVKCIee_5TJK- z{EHbbw!^5#%GY{oG1c1}&(KW$I0DphY+&M>Cf`eo76s~ zNLej@HxK(T+!PioP5I^%LAylF?=Gx3KC^`oD-o0|3lu^Qdf*L`W_0ME;GMNJ;~ zB}Mrr5&OWq`?15x01VFsWgsQjE(+bjakAegM596X2A*Cob?JR3Q22)RmnTmr#AKs# zV2|w9zDVmU6u_FAY0quY2EX3RwU)&`5K+W=s;_){+R=y^wpr3uX zDAfrM7TYT6ioGcew)=x5SZ=6Sxf~?p%pKvBJZeA zoKz3NB;$t)hybM;iPo|zsqZBjqsSnS(C4-W;prs3WN~f?pdX-)alm~zqEyxT#^@Ng zTgB2usgI~T4chIJJ0N)G$E3~Sc8LSq}ZGa=P?NJ0>wDViENLviO%Xjj((tkA{kcxU@Iu5d2%6=C9-O}23gUI|j3_)VXkpaExin=JH~ zJt1p&0ip5clbA6r#!027a}4-sgdqo)P|Mg@;sw8)6Yen$fgQzDq3SG!zy^8ZP63y~ zFWt>YIupOKG>Az-ZEk&zhwm;&AWPII#iSZsO`yL@u^4ED{d~d#ISsCH2jrWXcVlo%Rq&=lc zp|rngzLsd*$W*-ngzgLB?^(U*;Rs(OK+{DZ(XR8-gqG>Eze!*i_<$#1Cnz317ak!( z82vmYlwPS>RFCY7(lEB{d?C)a<~tx4Y&IN5K$9K))mxmLzNdLw7YsJjs*%faJTwb% zBms)Efg>)3yb6tM_zNy*OY@tUdMruSd6|3MS6j{}*nL=_{Lp5L0AzrjV{R2b1>_X-+kNCb)QAcq zp{LQoJotp@3wRUKHreA_-QW^3C2sd8j8?o--F@6>1PgL8ZJ-U031FrLJXR15GAawhd|U2yMLc(9(oJv`e}J=z7z{c^p?-^n1fp2!v4`y&&z0X^66b^j+-YuYIY{3I zqEPHKSb28#yR*|%H!Am=U5=mkT_=qtC43ima@^?7pa8^sw-DA!j$rb*sm^=Sl)tAJ z7dQBr(}lb-dG`Cz>z{eVLWv#nfq;d;=EXpNR0lD-h@ScXPNhp;^f#%!+7j&xbE%hB z^&6+Rz}`@iN^epX&V{NG)L#!h;*8UmFF|^stA`)Uo0;`G~ayA^IYdK^9mJW2gxGjt3`7IjLoW zhN-TLfQ3St_M{qqJfVDI>dagF@9Hzj+Gc?fnW4Us+GPFmMkC$&XM-u$9$;@T-HAH7 zeY)+J7vnJczzp~b(azzE_|Iu@T33gxeKVNS0?D9l03mj;mV^Y;DyyDEPuJtsIDSbP zNydhKVqr;vlr)BiLCjtZICyP6|wIT)+)d z#XY5Ii-?%X+V|>MQsYjvOro9oY7bfHu7IZ3J~GFSp3GBP`nSJf?)GXlZL&;vr*mmU zvJwR_)sO4IMteKfLUR4zaRfbK2st;lI5*xG+pD`e8Tg9?KCU{vSWq52nl%9h?vyj1 z{xiwE{=0v4E!#zqKjw>DyNhL!#Nv;_dvDH9L}79=OT^fIe25pi^CvMj>e-vi6FHdN zKXKq$1f-P;?d-_`l=_Q{4B`OJ-O0f!5Ak^ymWi>sZEcD@fsnl3@S&NM*3cpQ*6*@i zD#a7hhxi*(YRj;Q_>O22@@huJT9CdCRVaw0=FOI;5eG9x+;}Qu(1CE_X}}G diff --git a/src/main/resources/images/qrcode_generator/treeRenderer/separator.png b/src/main/resources/images/qrcode_generator/treeRenderer/separator.png deleted file mode 100644 index 26c21676d93d120a0e32f8b5b62107f9bec87ab1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 164 zcmeAS@N?(olHy`uVBq!ia0vp^Y(Ol|!3-qjXPk2ZQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiueP3LR=qzys+|0{*OOjUVXXq|Nnos2H!xS6l+P4UoepS zpW*j5zF?q$l&6bhNX4zB1V&~yF)_6?gQEv5Dl`NbI1Ct?ycuW7TI~D;RK?)w>gTe~ HDWM4f=e{+# From 7ccb21e388e40ae245444ddf152e9fe1d9053970 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Sun, 15 Sep 2013 23:55:21 +0100 Subject: [PATCH 021/111] Further cleanups. Removing loads more files. --- .../isacreator/spreadsheet/AddColumnGUI.java | 6 ---- .../spreadsheet/AddMultipleRowsGUI.java | 3 -- .../spreadsheet/MultipleSortGUI.java | 5 --- .../spreadsheet-package.properties | 31 ------------------ .../images/spreadsheet/addButton.png | Bin 321 -> 0 bytes .../images/spreadsheet/addButtonOver.png | Bin 496 -> 0 bytes .../spreadsheet/addCharacteristicHeader.png | Bin 1786 -> 0 bytes .../images/spreadsheet/addCommentHeader.png | Bin 1439 -> 0 bytes .../images/spreadsheet/addFactorHeader.png | Bin 1254 -> 0 bytes .../images/spreadsheet/addParameterHeader.png | Bin 1553 -> 0 bytes .../spreadsheet/addcharacteristicbutton.png | Bin 1617 -> 0 bytes .../addcharacteristicbutton_over.png | Bin 1490 -> 0 bytes .../images/spreadsheet/addcommentbutton.png | Bin 1310 -> 0 bytes .../spreadsheet/addcommentbutton_over.png | Bin 1216 -> 0 bytes .../images/spreadsheet/addfactorbutton.png | Bin 1230 -> 0 bytes .../spreadsheet/addfactorbutton_over.png | Bin 1143 -> 0 bytes .../images/spreadsheet/addparameterbutton.png | Bin 1407 -> 0 bytes .../spreadsheet/addparameterbutton_over.png | Bin 1310 -> 0 bytes .../images/spreadsheet/addprotocolbutton.png | Bin 1328 -> 0 bytes .../spreadsheet/addprotocolbutton_over.png | Bin 1267 -> 0 bytes .../images/spreadsheet/addrows_head.png | Bin 1134 -> 0 bytes .../images/spreadsheet/addrowsbutton.png | Bin 1228 -> 0 bytes .../images/spreadsheet/addrowsbutton_over.png | Bin 1137 -> 0 bytes .../images/spreadsheet/multipleSortHeader.png | Bin 1391 -> 0 bytes .../resources/images/spreadsheet/sort.png | Bin 436 -> 0 bytes .../images/spreadsheet/sort_over.png | Bin 602 -> 0 bytes 26 files changed, 45 deletions(-) delete mode 100644 src/main/resources/images/spreadsheet/addButton.png delete mode 100644 src/main/resources/images/spreadsheet/addButtonOver.png delete mode 100755 src/main/resources/images/spreadsheet/addCharacteristicHeader.png delete mode 100755 src/main/resources/images/spreadsheet/addCommentHeader.png delete mode 100755 src/main/resources/images/spreadsheet/addFactorHeader.png delete mode 100755 src/main/resources/images/spreadsheet/addParameterHeader.png delete mode 100755 src/main/resources/images/spreadsheet/addcharacteristicbutton.png delete mode 100755 src/main/resources/images/spreadsheet/addcharacteristicbutton_over.png delete mode 100755 src/main/resources/images/spreadsheet/addcommentbutton.png delete mode 100755 src/main/resources/images/spreadsheet/addcommentbutton_over.png delete mode 100755 src/main/resources/images/spreadsheet/addfactorbutton.png delete mode 100755 src/main/resources/images/spreadsheet/addfactorbutton_over.png delete mode 100755 src/main/resources/images/spreadsheet/addparameterbutton.png delete mode 100755 src/main/resources/images/spreadsheet/addparameterbutton_over.png delete mode 100755 src/main/resources/images/spreadsheet/addprotocolbutton.png delete mode 100755 src/main/resources/images/spreadsheet/addprotocolbutton_over.png delete mode 100755 src/main/resources/images/spreadsheet/addrows_head.png delete mode 100755 src/main/resources/images/spreadsheet/addrowsbutton.png delete mode 100755 src/main/resources/images/spreadsheet/addrowsbutton_over.png delete mode 100755 src/main/resources/images/spreadsheet/multipleSortHeader.png delete mode 100755 src/main/resources/images/spreadsheet/sort.png delete mode 100755 src/main/resources/images/spreadsheet/sort_over.png diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java index 00730850..8826b3f7 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java @@ -74,11 +74,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ public class AddColumnGUI extends JDialog { - @InjectedResource - private ImageIcon addCharacteristicButton, addCharacteristicButtonOver, addFactorButton, - addFactorButtonOver, addParameterButton, addParameterButtonOver, addCommentButton, addCommentButtonOver, - closeButton, closeButtonOver; - private final static String UNIT_ONTOLOGY = "UO"; final static int ADD_FACTOR_COLUMN = 1; @@ -103,7 +98,6 @@ public class AddColumnGUI extends JDialog { public AddColumnGUI(Spreadsheet st, int type) { this.type = type; this.st = st; - ResourceInjector.get("spreadsheet-package.style").inject(this); } /** diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java index 6e2bb608..e0ac038a 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddMultipleRowsGUI.java @@ -60,14 +60,11 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ public class AddMultipleRowsGUI extends JDialog { - @InjectedResource - private ImageIcon addRowButton, addRowButtonOver, closeButton, closeButtonOver; private JTextField numRowsTxt; private Spreadsheet st; public AddMultipleRowsGUI(Spreadsheet st) { this.st = st; - ResourceInjector.get("spreadsheet-package.style").inject(this); } private void addRows() { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java index cef07edc..c33f51bf 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java @@ -57,9 +57,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ public class MultipleSortGUI extends JDialog implements ActionListener { - @InjectedResource - private ImageIcon sortButton, sortButtonOver, closeButton, closeButtonOver; - private JCheckBox sort2Check = new JCheckBox("Sort on 2 columns?", false); private JComboBox sortOpt1; private JComboBox sortOpt1IsAscending; @@ -69,8 +66,6 @@ public class MultipleSortGUI extends JDialog implements ActionListener { public MultipleSortGUI(Spreadsheet st) { this.st = st; - - ResourceInjector.get("spreadsheet-package.style").inject(this); } /** diff --git a/src/main/resources/dependency-injections/spreadsheet-package.properties b/src/main/resources/dependency-injections/spreadsheet-package.properties index 2d45c21a..200ad72f 100644 --- a/src/main/resources/dependency-injections/spreadsheet-package.properties +++ b/src/main/resources/dependency-injections/spreadsheet-package.properties @@ -1,28 +1,3 @@ -AddColumnGUI.factorHeader=/images/spreadsheet/addFactorHeader.png -AddColumnGUI.characteristicHeader=/images/spreadsheet/addCharacteristicHeader.png -AddColumnGUI.parameterHeader=/images/spreadsheet/addParameterHeader.png -AddColumnGUI.commentHeader=/images/spreadsheet/addCommentHeader.png - -AddColumnGUI.addButton=/images/spreadsheet/addButton.png -AddColumnGUI.addButtonOver=/images/spreadsheet/addButtonOver.png -AddColumnGUI.addCharacteristicButton={AddColumnGUI.addButton} -AddColumnGUI.addCharacteristicButtonOver={AddColumnGUI.addButtonOver} -AddColumnGUI.addFactorButton={AddColumnGUI.addButton} -AddColumnGUI.addFactorButtonOver={AddColumnGUI.addButtonOver} -AddColumnGUI.addParameterButton={AddColumnGUI.addButton} -AddColumnGUI.addParameterButtonOver={AddColumnGUI.addButtonOver} -AddColumnGUI.addCommentButton={AddColumnGUI.addButton} -AddColumnGUI.addCommentButtonOver={AddColumnGUI.addButtonOver} - -AddColumnGUI.closeButton=/images/common/close.png -AddColumnGUI.closeButtonOver=/images/common/close_over.png - -AddMultipleRowsGUI.panelHeader=/images/spreadsheet/addrows_head.png -AddMultipleRowsGUI.addRowButton={AddColumnGUI.addButton} -AddMultipleRowsGUI.addRowButtonOver={AddColumnGUI.addButtonOver} -AddMultipleRowsGUI.closeButton={AddColumnGUI.closeButton} -AddMultipleRowsGUI.closeButtonOver={AddColumnGUI.closeButtonOver} - IncorrectColumnOrderGUI.titleIcon=/images/spreadsheet/incorrect_order_title.png IncorrectColumnOrderGUI.titleIconInactive=/images/spreadsheet/incorrect_order_title_inactive.png IncorrectColumnOrderGUI.incorrectInfo=/images/spreadsheet/incorrect_info.png @@ -30,12 +5,6 @@ IncorrectColumnOrderGUI.errorReportNode=/images/spreadsheet/error_report_item.pn IncorrectColumnOrderGUI.errorReportNodeOpen=/images/spreadsheet/error_report_node_open.png IncorrectColumnOrderGUI.errorReportNodeClosed=/images/spreadsheet/error_report_node_closed.png -MultipleSortGUI.titleIcon=/images/spreadsheet/multipleSortHeader.png -MultipleSortGUI.sortButton=/images/spreadsheet/sort.png -MultipleSortGUI.sortButtonOver=/images/spreadsheet/sort_over.png -MultipleSortGUI.closeButton={AddColumnGUI.closeButton} -MultipleSortGUI.closeButtonOver={AddColumnGUI.closeButtonOver} - SpreadsheetColumnRenderer.upArrow=/images/spreadsheet/upArrow.png SpreadsheetColumnRenderer.downArrow=/images/spreadsheet/downArrow.png SpreadsheetColumnRenderer.normal=/images/spreadsheet/normal_column_icon.png diff --git a/src/main/resources/images/spreadsheet/addButton.png b/src/main/resources/images/spreadsheet/addButton.png deleted file mode 100644 index 8dbc51ddc5a26d6eedb21d5fe3559989e73e6ed5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 321 zcmeAS@N?(olHy`uVBq!ia0vp^W8U}fi7AzZCsS>JiXMBqIEGZ*N=lGmb>=qUV{`u^vpIi3lOey?8a_RV9J$~A zs*BASY{fZ}40tz-NHFlIFbg!NYV5e?WyW}J-={40!^`LEf6x?{Fp}Fm#j)be$K%{B zHpdKPCO=wnyiF%T@(e4h*#g~X2Nh1|Hz>8Obw~t>g!Ok;C3GZe2e?gE+I!%!zqrAX zl%E2g@2_6B=CS`@=Qz>*Ilou`+Fel%ieWjG4Cm}VByfeD?-%>NSWa5kW<~IV1Z|DB zHODuIYB;NE`Yo7bDc&G^mbqE&SVNyCOPPQ@)68#ED!4kNCEKhSI1Cu}9rb#+PSIo^ P(7Oztu6{1-oD!Mrh1 diff --git a/src/main/resources/images/spreadsheet/addButtonOver.png b/src/main/resources/images/spreadsheet/addButtonOver.png deleted file mode 100644 index 6c89b7d39d4f9ad355b3db68290c89bfb791b325..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 496 zcmVAW|yv!&7S z@bLIcG|xT2hqrEwVW4hhcQ>o?q32pP5Wj<~_tS@3C967ynpwe`DTV;{unILUN>;VK zXH9U7@(ygPBvvIpjxI%%jmdzFIj#jtXshg!nV1<$_xOl8ot;HjL{RS}Wgz6Pg&YH3 zTVm!gC5Z~;e1H@6@%88DlxQ= z%1}fsgMzoXo=L=PenG^uWLI7+(YaDSV76zbLrNBlO13g$+&^nYXk{&FJ2GV31)rzv zFs|kiQ}I5OUXbX-YPW&hhusjobhP8H<47n3v)XhBomlTrzjGG4h?!sqEGs*}IbXDd z{gtF56`(X239^S#8pwt|PP@mrcODt+h^3e+dqR6hHxkQDUycanL-yK}{|GLj6zllq mk^k3Es*V4*=}{wm2`~V(Zj0IillGGU00002FThWZ2Q52!j#c0CJwy#~OCV4dd+dJOR%}U6B2mIe#=p-TNL?`)v9pn~X zO7_vQoTOw1Tpi#XYswTRJ4q+W8LgN}BFuvHYY>HqzYpM$33Ct^9qd7_Li2x+lR)Eq zNs2ehZ?QpxCVJ;se@fn-k@Dja z*N_}Hv=`T}#2Pf_&jQB>VHdrz4V0Pj!XbmtpWzca?i}YJX(>i)8`Md_aBo>^Yl$Ed zU&42VG-5JzlP=AklG0*5f{qaeg)8Cna-i;BTNJD4v&ymWj*N+~E#UK<8xj2d$x}Aq z`jTq?y=Yz)KNNOI33IZ@QZs%_ z3(Z<&6Q6@z3ca5ZPWFPH>r+^Li@wYe4wQ|z#6PgcqW&V}g6BJY%NB%f>A~C+c%#=IuPX9jXv=fq(a!jr$F2a($4I zVc$Ex?_GO5S?0w)s;3j-d{d_|ibX?TSyByT3m>$Ort*^Y5MzcCvt@M*ERGSrH~!#(F43MM0O z;+SsLvKizCKogr#5x1fyU#r7@yw@>(W^@;0?vk`;k~c-xM%L%B-dv=uSb6v8B=G%O zoHtIq&O-$px>u>y^E;In29D0jh6sv!mw%DB5$CxScpvV*nDZF9_930bG+YH3aBn6d ztbR^~!LRUw(I_6?SHz&%vvxRFLCV8>my~5LgKI4#4^5piflnV8<)!T0pi_3hhy19n z5>8f$pp;m$$y8Zu(K9CM=_2jn<{I#6hELl97*6%3HouPlQ^)!dC_#XJ~%0XvC%(tv&T{8h&hf=O+y{(q- zJ(po)8`E69ynHfIx}Vc90^Tp`>3<=(b1W@}Jxf+H?84{F1Nf9n=LclZ&hdF+`IU01 zW?nE-rp!G1oo99MKN(Sp)w_PL<=LZb_aB};rUz*Uh6FF79-kP6s;33+NjKXghXa#& zogyn6A$P8<@S3`_^d_mJAM>uCa984@Hw#CE2oWMgh!7z{ga{ELM2HX}LWBqrB1HHm c;C}%I070W%Xe#S(Z2$lO07*qoM6N<$f~J>CZ~y=R diff --git a/src/main/resources/images/spreadsheet/addCommentHeader.png b/src/main/resources/images/spreadsheet/addCommentHeader.png deleted file mode 100755 index 5b33e4abc4c34baad535f8a48f75143fd5f296ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1439 zcmV;Q1z`G#P))TJr=L zi3?ofc>=sou-+TD%}U(Yxg%}%#?kWz&J&Pa;DUtn29Cr7c+N(J44EAV z>XTYY++F=s{dHA!dFC>4IL;WCt^$V>*x_&jI~-16hZET0Z~{9VPGE<_3G8qJI~-2n zkAP3V|K{!G*PpMcB!B(($L1b#Ka)(uvLv^2TAUA_xe6TTj89wzjw#{CUuK`tN5SQX zZ#Qq;0z1x$yzl5^pwd#AdkEn;H{@p*LeK?@T}DYIgX`$2bX1x@fBN;tka-T70w;Fg z{)n-@6ml%n(HPf9SOzH9EM(QypSs}?<&%7rTUa}SVC4?wGKLJBXt8} z&uzrDTP~eR{K{BYf_cY`3zPVTA)~qHo-Kl9MYtfzzTX^{6YXyVL9IiQfb?4- zw;Lfxtu~ntNJgZ+;1UiC++VFM9Jjj?F7p_|4d}B}>qtdiAw0&u4%W*;XB>`H)Rk(E zrE=|ZZ6&V@Ym=m&vq*B&`{3?GY^UdRyP3fI%3{fQ2Y)YqEE>u?dgo+5!8SjHuhE2MTxkSdlLn1@so{|O}I zdm+;pZmxoIc${2V{3>jK&L-f^n7+AZ#s#EA|EXbh_nToQane0jNF-93|2Z8x9JlcQiE}uC9S$e3!{G#WIDs7wC$Pie t1a>%_zz!#{!{G#WIGn%^hr-_i3;_9zYUzUW$VUJG002ovPDHLkV1i*#r@H_E diff --git a/src/main/resources/images/spreadsheet/addFactorHeader.png b/src/main/resources/images/spreadsheet/addFactorHeader.png deleted file mode 100755 index 4fe5d2638f67b3ee06fce3e72b1f3f139b03cc63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1254 zcmVZ@;_b^DI>qkz@#)*N zqmLtS=??NaRS14Tr;Lt}-HwUu)2H-opBud%brg3b&y}M3sXYrL`r{?}J|a1Xi~PYh zr3>}r2(#3j+MO8D4SgdPawQ|8jkZkiF&&X_pN^do{h9IM(PE%Q^DQD|Bsb~u2o{is zbQ{ECKXdI>v@gzme0rC*356BDD~KKi?Q$8C#M z$RghtPv$xNCRBc=v>(&`0Mcos)R)L-i2Ck??ICOzYYi&D!tAkFaMR~gBYOWN-^UB~ z1gY^7LMls^#aKna0?gVYcO1=KxNDRtMv0cAeV~ z956zA!d~E>8yo}p9J8o6Xc$bMz^kX0fUEcBvA~wiM z)9BlgF#|DWN38tBYimw&M%o$KR7zAIE{R-)lps!DLyvP*TzAv88(g>0w|g#}i&IUr{))Niuh8hEQW{c7POYkE^oOp?8%pz$M z>Lx!L2$L0jy2ysE{nkhy2;IC6WPQ^mGRWC$L@&DR3mDNiCwa+a$=FA0D*O3R`wiJp ziU>Vsi(`%aVb9&@tG-SH-8A}U$ne4vBKSy?B+3g3*LjhUMtva({{8LC8>Ic3bZ#XE z%gKg)sFcB{Y45cbx<>SVG1O#511ZY}Z7MbXN`5OykFK&I>OxE>dyxO`ie(#E$&$~N z5q)>?(N;#ITw81gztf5l(u{$U715%-*YuejK=_=l(eJs4rk`DeM!HYU{y>w@1#w-T z`v%8%o(5Dj_YgKWD4&S>GW6pTHheHb&I?jD%w64s4r@$Z;nWQ+Q*BsKVI~ceOc)1u78#gn!J)f6X=lX36?B;SINM* z`oeYoh#?lFRg=8HU>P(>8m+!L^85ya!C){L3<{907*qoM6N<$g85roZ2$lO diff --git a/src/main/resources/images/spreadsheet/addParameterHeader.png b/src/main/resources/images/spreadsheet/addParameterHeader.png deleted file mode 100755 index 5023355abcc8d457aab996be89888d2613f13613..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1553 zcmV+s2JZQZP)!ZHE)%9#rUex)J1WONQmU`H+3!=o8t4;K~-HqzK$lGJjw~P9`D;ao1~A7dS?ZMeNYl^)thwtyNu&;qJ+p6_HG$-~}^spU^&pr+FEf zRiLjD*Z+SuZEsAQe+D9>9LI#xga+g-giMEirk;B*bOut9;M`2xFFoV6PJcm;Q+u2u zG`DNm$<3|d&ra{bq%I(_HE?XM&q1^VlTL}yj zZm-F~ndBXGv|?_TJ*iQ7@Hx6oIXG(LdP{%?g9oMGamFW8xMjiue z_}D~?6X}3#XrwYW0-e~%g4a(XO)3U*S|;?8NS9b$PA|0`qqjp^kPF9)>0TxX77Hil zIoOoq9OGceOo^14Cq10fF5-3wCV7haor|?82khl@ki)CGAo9xmGokwvm(noFiL?)< zP3wugxo43gv3U82A?9vNHt)A)fePwtEdnDSmS>MxM#oSNjQsec(7AxzCG@34(wN3^ z6WWz*E(;y8um|6hj$m~zKzMenS~x)~>~V*4joh7DG4Db|_Qc2}w2S5BK&PDY^`(P{ zco;pS9Jmh|8KW<1dF6~F+-)H90`fpa>D3x>k#ANbQ=-09Nge<%T~vRi&Sl_w?X#Vy z>8sEF(TFl(y1}?ILHc4quP->1LnPlT(LwTtwx-%eYjf|*H(E|>#6q`pMkq!))yhNi zS~zD-2h1dT-xw9F_8HMjY`b|+#FdkYUtxsUrbe=Yvn3?CT5RR1h%`5%e79|c?~tpz z%0{*$qAxuuVK=hvkluuL$*Ly+EVh}zK8c?D(hB73p{j$Gx$4RBeRA#)HXpGidtnbv zuEd4(g!6h^6JB}p(Wb{SHbEwG+|^goyXj7~Hl|R$dH^#0;HpoC^TOj>OkkfxchU9( zDkt8u79BR9yx*1?Q8AHGFAkKhEGbJPS94T{b4*8$wK7CbG3G+_RR$uNm6?K!)t1rJ z5jsPyzQx#gLUiQr4LRKuj$I29cj6%3cx;kK&kuHHMD!RtV@7Ri=GPMs_l_tf1KPrD^N#x9G=J2ujF|Nh#uhQ}ENyT8x|P%H0-r zs)VCdGFa?z2j(+K>e)q?GTku5m1~)a`vp~j;=p>?ezqd|KI`ZuRWD|^j)~~*CjySN zi|F|&Xo2=DaWA4H@kB~00000NkvXXu0mjf D%u@3j diff --git a/src/main/resources/images/spreadsheet/addcharacteristicbutton.png b/src/main/resources/images/spreadsheet/addcharacteristicbutton.png deleted file mode 100755 index 2b91f8cca520d74a10f9a5ab36f0e327e9d26884..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1617 zcmV-X2Cn&uP)Y6OyC@13q~|-iXL@&bW_CBNvP16&mz}vk=bn4MbI!dpvr1W5ScDf( zSQAt)p6c4zN-@)rqTAw!72zihwlHtI4$p2M~bYQhC{|tnne2y}{Znbcofo zG^&SF3lmcDq)(_fTU&(|y?SdcCYTyNu7up4EuAX5x}m5Zb!hX0wC~#RMrf?|!gFyh zl^_{k>uI0IL2?nn#__yt^t?#~*RLrikm}IpOR#Ql-}v|mUarxnjtp@LA{lZaU*;J< z^p(0y<=^7+!7rUsCOR~q1&6Hd%Q&8g3NTP>(>nF)srS_U?Zt}5p80W@9rO2vSzpHi zp%XLL)N7ybRaxpcI-T+DUkRY|G7nv&D_j+hvJ!#0dw12Ibf3!Kzsuf>)EaqqrJDcq zW`VS=iA`$X=AF(McPigS(HbKIWpB)=_b;AyBKfzE234Z5i4AyoVQd%y3m@q^q4H#OC~u}$IK)WTXKX}xuq;-{6=y-4=@?8n z$piMkvXc#tc903eTbtI>JX=@~w3(g^S<%&N$iRzqeVxY-kggf3Pf|ZzOTVBq1jZrK zV)YGtJ%9VAiqx*+xy<>@Yav(0<@Fj&M2Jvx%s7!Q4v{Sp)o^mG+fQdfdUC8}Ch~j^ z&dgqCFNU|VSCaRFL=Y0!=?#5E2`mJWd2DQe@9_)5fqfK3KwIhqBI#$xApne7|7nMl zI#Dq8JVjEH$gLw!m-#`kpyl{(PJM`^r6`Sav?DU$9O8U%IME3}J?4OeLjV5$AGjW} z^7rpB0a$Z}90mXx>uD}zFB75{A{3bb_JB;JXpn~#Eo+qZLN;{tl2^$Y#;oUnSq{N4 zI6N?|)17&c@)MXdlr~dzL>mK<<~Ifg6>mS;c7P)Z#zi#7JUm(UHADsE!;_(-%q7S! z%mgl8`uiCZj^;%MQZllc8RhOR%M0jJiroJiCc!x~9ZAGpeCI^L0uYhdJ4_GF!TTwi zu+LxtW@ zK|eT^UwU+Oq`CJD^|737%}JIaYvSmmdCjds+F%E?!SSFYvWTA}Kqs%LHS0?_RnATD zw7k6nDJOSyvocUhQUM~RpX!muu#h=D0St`8&TQW|&K@f0OdoglAEa%JfpPpG(H!)c zB~dKSGj2SJAZ@~t;3zWZ(wX9dvyX!mj6X~VopbF+d9EI{G+$?cZq6R8_jfZ@A~hog z$8>s~ICZTc>wy@aN3RR_z67KHm=D25eHrhj|M}QJ&rJzUGDo7EI6)Zp97&5DIkhXD zdK@sIkb4YAgI<8yhO~@!+~XQ@aj1yuD1a<;4%C}tWk!(f;YK3ZW0X-75GCAO4;*NW_i?$+84jKiN@N=FIs;tHu8ie+w`GdNe5_6p*+s P00000NkvXXu0mjf?)C)O diff --git a/src/main/resources/images/spreadsheet/addcharacteristicbutton_over.png b/src/main/resources/images/spreadsheet/addcharacteristicbutton_over.png deleted file mode 100755 index c86646156f743dedf5e8452a97cae310483127f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1490 zcmV;@1ugoCP)RTPG=T1aRm6NQ8b z4NYl4F=9hpB@~+MvTGJa-6&bam0b+jMHdBI=%NdSEV{FcwB5AQMFTFf%M?nxGEBsX z!W1hB7&4$ULn{eX@P0S+!71 z;F*0K&r?M>2&eA{;O~FGZAyRKGv&WZv4Qj1*iAFxD_8kR$&FttFFmu}gSpY5wRz~O zJ4H`wW5v*&zaN{W(q(rgdda-5*IqZ(oy|IJ$KE($K6vYNAQLX-WNWT_z--xtFF(2x zMEoc3Up4)QhMfZowx7P~W9Qsrwx2$BPLlqqp)*c5^F#1P`lp?Ib$io1*jNZ0%6wzi z9?k1Jw3~hCS@D34t4e|_bMZ{uvS4yu{N=pqSDA|+riaf3y5XbK@oXP~#2T@)>%gw9 z+)vsu!*8B2-L`M}*DGda^Y)93XQE+I13VOtSe%KoaRLiJ_4Xy#x9pvu17hZ#OXmLi zf?2N>gT)HCQm)sl#k#-{z#)PIhu170FqwbQ>V3}w$ei$W1f#3R$}^rhk;m!WBgegr zi#R~H~1Vs5sDG?cT#%*8vY(qfSLWvfp z$oJq4>m(*1+90AA5CPjjaxa<6{5VtS`s$o3m1L63QhO!a$qelr>=2tItC@!Y#s1HSz6`5=_JsiyySP#b@CQ06|A6=HPx)YtvR-sEN0h#H&M>+kJNE@J4krTFwsy;1PVHH7 z3U{9F8Lb!4?MqaYoXEJW^U+QjBa?70{kiVONS1w&tU&*d)=r!va|vxV$rKqM=S%`E z3Jgjz)l6r3wTYv}2hG5J-lPGp=yD_($3iqfV*{t%-k~EDpxAqeXcjQ2csQBprL2)r zI5o)`ve)6sd{ z0i_CP-ysJNpJ3xgtr!~!*c6quy1z;GR>A-m{Ylyxz&?s%jA9={8JRM5^vvF(wl@O@ zbJ&@)r%2gDg*c$e{zKVD2Is_)WOLGMmSnL652aC;PnTB zDBsdgB+9*(0c2T#=8^62dFCFyjHS`(D$cBb6sb7n>_gz)if8{>-}+|?*%_NTiJB>&2qZ&E$^d(J|* sBxeAp59}kM%2|oa){I_4`bU5P04QDs#@}qt!vFvP07*qoM6N<$f&dHLn*aa+ diff --git a/src/main/resources/images/spreadsheet/addcommentbutton.png b/src/main/resources/images/spreadsheet/addcommentbutton.png deleted file mode 100755 index a9c89ce66e52057090d598d3fb0505c34fe2b720..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1310 zcmV+(1>yRMP)%7e!f?E}{n&Js`-+9#oKIwklg>WScB>f)tW$T$OHSP{>U( zk|Y#F|99s6w=;L{9cOZ8C^#P+X6`xvdHvu2IOom?VPIh3jyXmJsl&YeWnTK&K*eKg z>iK!Muh$Tg84~j7qk)Q#N?{z)FqLOi&JsDHSrbANR~Yrj00dlj@Q9fJQqCn!h#~>( z?=ZSgIp8fmB4$#r%!)(CHN-wcM%nR1~jvCS)5C zvUur#t0fo{3@%xt`f=x-RT6|x9iL+eF$rA5{n}Hal}d(;3KvQ-*A}j<^EAQ`7F0-! z34i}4>e?@e=Yh9k<+38tTy;cxMeyqvB|T_`FSL0UEEK)NA7a8+edTW11{9s#DavUK zmIrRUek_`vwn$lc7sg=kYwzol@>mb%-F)?+R8;q|+afSJEWcwM$a!gv-uz;@?oHPY ziJ`F(vE92~T&Zf1{ei}g>*D5{C*sx7TXGJb3w;_pTBID$jXBW1nZ`;ZR#EBHJtXRK z6QWJmJ-i_1A6Q3=8I(!_qylqtr9#op8-!cKnw|&zvQNk&D?$_$4241Ioge*Dfsp4q zDB|$OYDpRc3W2gCp>b>Ex=V7Hlb-=7KR`-nxjY&Z{V+Dxok#1vUvo;X8$^K6W+F!q zMFomz*+&@z8yrY(?|bR0Nf;@J<)TBchulnXy@!OSr)Z;*i3%4lk(*{Eo$qQDp^0(f z9~rbf0kS|{`$c7eEm3&}IRBzmdO+2^<58B6I#?^P-CJ(;L)+R*KI<7?!E!pFd{{59 zrHPcz^LrNLN{?YL)WsNbCs5RLtC(V^EvZYIoiYk((U zBTzo9r&$pavC^s71Za!1lhd&>LCtFtLFnsv^z+2HtMNoVJFL&{{ao}uZsUX0OhG3k zXjd>o74pWFT}PsnT3=Z$EeI|M()`1NQWikSffeha2kjLqUqq}m*OG_D)>n>*y~>La z@;o^UQ@TlA@qy71X)Fk1*h4%pu?Tzk?k10Lxk-5!=NyJ!&tWyr%f~+u+zC7Z8BV_@W5l~b?E}n#fnPwE`l{X?KR##gn3yk4y6)5~vfU)fQ$CZY+@-IdR8A>0`b#Mqh>XkjO7ka&SwJ0v z+L8?KNC!T*f1wycQbP>>d*D;VxSde(8~QVq4qRafNj*7UJ1L3&C(Ga;#BTux00n(E U$&%8y&_Pf)2gM3*3Ravf9onr%QngoUW!;$3f-Mzc_zxUqV_eCiO2ZwO%aVDrA?ko?S(I11l9P%}# zuk|f1IzpO5LR^20>ypx?D?;>(F0;Da)Z~2lYeKZ*0cZX)K)_^xM^pl&+^U%nLjvrN zINR49cuPtXlea5dBFMN$>~mx^4A^zbU)d5u#$)3d4h<$n+xkXi$TFVc$Y^pdl0@GU zaBQoIjPAs+I(G1EU|a98lsXveaOSQe$%loknmq$TIztHQ>-@h7VeYK2)-_!1O&3d* zNSWhv86hr#TNpkup@x$a&DvC4C{?R3ToupLgdrvr-`AnO|M;rr*KezLpO;i(e^L!~ zT~VF!vnu~RTjni;x@});o7%{)mW8jLqoZCMc(`)G^DL1EFF($xbmoC4i+3>wdcfpdFnJ1j^=Y4=K6a6n3&|{@rbL_r;*vEUbD40xT+~7mh(`mj$u_ zcGLQ&C9h9@CtE@k{V^CuM@HnO4nv&Ng!Occ7W-ikj15k;4||`;p_4HM7(Zvp#rC#& z{TLg){6-h^h6o59I)0^O=kuL<`miB3^qOVELGoH|KGc$IQizpe!>&iJ5<>4GJ9^>m zMiG-`(PE_KjVX^Xh!Rf_WzRK9-oqQc%WOgb{ivUNd%c)_@2DbKKfjjA$9-`&NT#rpt;vV|@?rhiJe73&$D!C>OrNmvA+=es z3CZ{kjN6hoAV+{36I$3ocm=x;ISL@;5S#7LLmNAUagb+$n?{};o7)~OdJ*BQnw|8g z#BS+)0)gm|IfOu%reLzp3)5H=W-IM4Xx4(jMbn4mvo)*D_v)Q1w$kAeBD z1m+_-D(q-4#6gx68+LsK&rO%z)Xg>irk$+B*nSsIm_+JVLcXB{?IvlHkYSHy*EI^F zOAJ-*U4#;})~I`kfCEky$Y_T+9z;moc*!B<@W)hg%eoZw6w;w# z_+p-AM=BcWB&0MQ!UjyQ0z?!?+V|Pm z#(jUK`;)_8z--v58XwALOqdG%7m6dKKEw=|C^8apLggL$tVsu#KoHKq>s{K!v e!#{{$0t^5EdnW!X-kI0{0000PxrN{>bwI?ruN(z>W8f1Z_+f%s@xg;co zp(q&z(f=LiY_sE;-F0)RbUqkn=G^9-@BjY)KQqIa0RskhIQAG6Ft)ESA%ae3I+E!K z)l`qu(f6Ze%4(45nnV+w8Wa-UVV;f(BDLd>$fSoR(J5A9wf`Adi^Yq6P^y_oUGbPq zA}~aGm}Q5NxE+{P2(`N%ol}FXptG7^x8{_R>e4oLv*gACF-M|UZ($AZv;1|Hmrc&iaQ6uf4CeQ}g?Cv> z{T0@lTjm%WZHs#v*`t?3d<>{qsAFR8wbPuwKYYRahXw|*+AND>47AH^xy?+}AH?Gx z*VYA_uFJv@VjWtjy#Q;se_3>ujQagG1)EUP)4&F-&$)|Xf=y%Hw8%KFGAsxa9YLH? z76cMjh?qmwxsF9`OlHVI4xbp}C@r>``iBMtbH$-A$ZR7+nZlzfuFmmiFR!l>*=vse zl~3BJY>gWY25K7Z;&VcMYfc$!9_wL#9^OEp{t zyb-w!h#as^@}vS_!C1Ul0NfZc5%oe*fzhH=X$X zHGuB3AQ4LaT>sRm4-xMN0`AOSL7KYvR_-V+kdFtVO#qxgYajO{r}nZ sWU4+rnwjfgy*S#n|9lMi5WfT%07BjX1np-43IG5A07*qoM6N<$f(5-p(EtDd diff --git a/src/main/resources/images/spreadsheet/addfactorbutton_over.png b/src/main/resources/images/spreadsheet/addfactorbutton_over.png deleted file mode 100755 index 72162a3117db13ed8c41004644206f9b1267a96c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1143 zcmV--1c>{IP)onPP|*Ed-<{q(@0%GX2TR|9%X{yBoOjRv{LeY>LkLei@#KI@g$IEUPv<($$U|7R zpll}`!!g;$AGgoE^T5mxVzWF9Ss)gYCE5BVsL%fjOnK7|d1x_s?SB?*=_z3yObts= z(?x?R0j#xd)^or>+zUxqfPO9rrbYjl2Vy}$gLZ~ix`cGX1G1oy_M)!Lw5pm1Nx(fFNei7Ri|9n*vIZP4H=!5Z#_aplsnX&Vcuw(^`P~I zsIA`K?EAGT@oHgEo!>myD=yWC)OmVqH9NmfhH&Tk0kvk!VqZ#zIN?+6+cqkEVL-f` z?-3!XL+fTPVL!hj8;*S_ktcKJ|&ZV*v#`*PO3^Pr8OI zjv#tWVvhp$wUJrPSBxfnj*cBNEe%}wI;%pA4aQf-RM^5Y3}T~QO@HzX#$|qOis3i6 zvPS96XmD@}8w2F{N>WrwkYOBYfO(-nuc()6*QD;`msyn((5ctYrJ|}2r{SQt)}9z= zE!R3^aT57CAM@Q(l)az5<^fYUndw@1*t8B63<4;XG9MK}5Y1D0;t z9+l7mpp0RhE)Y6=dAvfVl7ng;*UTlQ(6K0XpgQ^o|r#yIR6Xf{cT~rz=y5Y==PR$2pJjHpWTWE z^Pr0)%M-D?-!f5)k!jQ5q5swEh`yjO|LUbho&S71DWm)rU;w*E>@<={8V>*f002ov JPDHLkV1i+M6GQ+2 diff --git a/src/main/resources/images/spreadsheet/addparameterbutton.png b/src/main/resources/images/spreadsheet/addparameterbutton.png deleted file mode 100755 index 2536c9a3f3ef089953a70ae43628d945a8fff04f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1407 zcmV-_1%UdAP)_k`hRv zGH!I4F(HB4g^|>D5ld@A8duSQERv8kCRS*v3W8cvXj9X))I}vfuB;}Q5VOdC3`8NN z&g;_II2foubKW>J)rm>(2bXu>{W*!KJsmQ%rEI;BPmx#KM5lJpNo#IO^a)PjzsJs*eopb%EMeb2*o>TdjpjC+h z^CmwDLG|epR9?JQwNxEUT6f^R-CS>x6^h)WW-&=_WRiANva@8HYWX-hNwsCWx&BoF z6l#?zRjZ#RRsSD@1bBm64L`4_Qa%6Wp-vfC6CQxo8=eXsUiTe3r9Le!=lqYidsSoq z8P0#VuU;Mhphm@Ko~YQ=U%F#p-3HZv_!KX6T$hik;Kt1=+HqNz6}|lq=l6AerT%;z zT`&%0e$jVE^^9CsH&6b=vaUpixPE&_9m_|5;QrVjEF<)8F>f&LkuO;Pmby4RsDjiE z{UNjRhhsd}7OEE+C_j7WH|{6i0N3)8t?EN+k9EQuK%UIEfYykyFsGf=&LNp-yMh28 zj@OckB-1l8s5UixM3eiHNx=ef&LDsALc7}0QMaJuueHs*2yA9!U#H&8*gun+9DdBE z1tX8m0uoQ3uo56)L%#p4et}#eFySgi+qG`xOpMLBTH`##y(mp>Srrq8u}qml5XOo> zon}&kuF}ZdoQbGjC*+|m`k3>=oFF#`C`e{W^G{YY(>$@DySX6XlTbNp5i}jR>O4@P z!V*1kkOz%Lf`)n_#QuHyh9>Q*GsK%Ma=eQNDQ$z@Y^m6^&v)(DZ9;{`++VD4$2VbZ zfv`xlhvv(fBNl{yS}UonXZSi3hAYN`41u(T%r@1n%b~ytBH9m7YOlfxO!=56_A3?g z{SHwqE;cpEo1|%7zkxO152pJ|1}w^4*qrEpMQeOv5A2s+J((Z74k1h5}l23$K7?!eBL0<$sObbH;Q>6SU`|~ zb;1RsJpeZkV$%gIyYlo=eJ^eoFw33Pt}e3ZwU8U~MZ_AQy%2&cG*L_(?hquQ3>GsK z9n}#Y?oC&N&5^LPxM{DJDYDEyPzad6j463(3(J)<^fBjvyhL!)hR+nE&KysyO9C4y zH`|IV0Bbb+%9=9?!3A#~c|YyIVYX{Hk(cC+!(Fw^Z@OiI8BFfALlz_r5J7wVqC0#G zxwo7TwJ+13uNGvn2c441^LfFFSoyqth4#{bueB#rMtAP_47j|w-LIS@;(dR*#;@gz z-yg@;Y%lDh>@)XGg#GZB8-gkjESQC9|Ks3Bex>HCBMaYGIpHjn8sCt@UV<_r$s&EY ze+sp#^uEg>NNY{?o0lbNWy!+#xoXz~nZI?7yRL1(?++o1R}B9OFaXcrjW{nl$3*}D N002ovPDHLkV1nh)nrQ$4 diff --git a/src/main/resources/images/spreadsheet/addparameterbutton_over.png b/src/main/resources/images/spreadsheet/addparameterbutton_over.png deleted file mode 100755 index b48b31fa5214603cbf831afdc5185edda3b0099a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1310 zcmV+(1>yRMP)6Jz<{I_CF>G zM1uQ(Zaw$bVL`b*HI6ec!F-zfP|h2bqjBH9xG*ALui( zra!+h?;lLIo3``^v#ErUQMJ9^D42WdTT9B+o8+*n(Bsk{nS)cEW~{1h^}YQdl69 zranAu~DF#Y3~QM{ZTP)V&E z2xzoIE%!3k!Rl5+7-J!`#gi!nF;-fS3n`E(2E;X~$&_^>kGAw_vF62`kXry$X7VH- zC z%UqCyAuX=aPC{$Y=&}(cMh&r2RwP{3^U??&Ssa$N;rdur+9HKefX6_Vv9j&U7D;l^-geV?+ri9(Ox!c#z=q9zG(4i@tj;CWZ;FYW8B-1Bq~ToN=aIl&3neQjkVAS zhC9rqSwhgILw8qr&zQD$6x*&70i#&Uns8h8rS>C_Ojt=St#)BNK|+(bIs1x<`FlFd zbCf7XU;|}gd0{Dk6p{$X%n@S}gF-HaFv>h2i6nt_VuZ980Hpcmo9?Tv?=$LO4u&*&QA;=Y=Gc%e@^!s7u;;XX2tSQ)JnFsN?=J zrqrb^;ZdH^$DRXq$>5}o>0`aK$CJ6qT;;jlR%8LzX!n&h=aPa8ZjVJiqps{~8ch{t zIB|Hc*7>AcCYZzI{yF49(vT+TY*==OFOIC|kJ_-L;D16MI`HFTQOE%+=SEJme-3=D zy_Pk*^S)=`lM7B?1xF%ye!A92Klv0Kw@)J+Hk6=dl7+}5Wyt(uj;u&WIq^L9biN_Q zg9PP7l0$TO{}k#`(Z0)(r1fO`o0lVLW65H>X!9bFeKs`Xg|?xve+W7JW%wz;07g@O U&P$jRX8-^I07*qoM6N<$g1n1k5C8xG diff --git a/src/main/resources/images/spreadsheet/addprotocolbutton.png b/src/main/resources/images/spreadsheet/addprotocolbutton.png deleted file mode 100755 index 9fe68d7806496c05c9f061e26ab73eb56629b478..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1328 zcmV-01<(44P)F+_KB&?pyz?Y&@`*{dV5-jK;vtR0=NbAWmNXa1jq4uGKB3B>Xmz9Jf zD0XQnD2UE?cIGmBy?33hUCX*34EOGxxie?JbIv#S&Rroqc<|sM=a}J9V2)XP*ZAmA zL#0d>g&37*DBrKX9QKIM9^u7wXrr>npgA1SMhE$7FgsD_Ikv}6%YIWfzkGtHEKhuHqARPv&Eb}BaLGiPq`{$GY;;6{2o+)wE#*_F^tMwmD^i&a*9~#+qKd zV6kZ3;!J!+V5Qi-rYa`{<$@g8i@9WC^S3K6tYU~7`5rJK;%ol)sC<0*a!wpNm2#s_ z^0kZBo7lD8Ei}PuK7T&?Mr`Ulz~_jzjvYo6m`-ekp z=&DooJkhPebsTZm>yPuqP#61>ux@Nzze@y{l!}dK_lu3>B*>7C68i0v&cdWIc{po$ zJi_(LAs`B*;~b=*EyfHMm9le`GtdugQc~A`Uy{8gsnaMp$Ne{74v4;Ri0wmPxQ4#b z55_W;uH|(9qeGXhqC>xqb|%QTy`eFpAKx=MAP@!ymjw7aCXc8BEjs%evWQ%e<9HM7Hvi$%@d7Ls*>3V2%X!6%r>K{SqwnpgfOps@L(C4R>$3y@k z8ipgyt(~B+3D=I|T3tL%J16L4B%?YZ`}yp8kFTIGWh|#LqqctazW+4xZ98lnEl5Wd zDJps}iPk^^rxGGpU*s^EI{JNqvVhkDI=7RFh{LrK*`Jab9f&+cPa|vdJl15j&L|*L z&{rt(hO+_k1lw>-wjH823GN43%QC0Q8tle-owOga>X%MT2iyZGRZwdVpkH^Imz`rf z@z~U<#Ep=bS1sKsX#**M(XZ*ck{ty&30V>$8G+NBA`KGYpIdH8i&KQcagZ%0ttenE zfRHed2fNTeBm#>ooPdV_Xt!z$JNv0Eq)t610;Mh6xgK()+C%#xX>RW$_Ka3iIw4>p zL#BcLY{HwXe8!AIrZ7oN3K2T?>HUO71{iVhEEZt)un5n3H0Z81c3pf^ya$MZOfpE4(GC|Wy(N9 m@!4?%5M{-Bxe)W28Xd+)32>KKzEMT!(n$EuWqa9kff zoRyzmxw_q@n3ZdU>(ap|f271Wj_@t=b49Mx0o8H96>-3mh7d1qBzHyGSoN zT}#ne6ru}mJmLpKNne-gFb6jK7x~TWy3MZKu@%Dz_A-|y+g$WYjax{A3aU(DamVs~=J8)k zq;aocf;l1Xx93Gm_(>sY=Ho=AJiEHXl8>_>j>$8|j1bPVI;5xLge9GO#^7GZROe7e zJ8VK8cpjY^v^MaJ(}Bw1pKpdO(b%UpLpVW1|MV4t+?u>OB6j<5a%X?#{;}{j^S*YU zt+6*W3yg=HtPsz{m@r`S7Se;+POo4^d<)S+#mTlp|x<_KWissY!y$g^uML zb1v3zwC`_?*4PP~C7wwUb^5H6z_X+rksDp)m<-QotgZ#|NfTWVOtb@EiW7N^fo!mD zXhuaNl1w3bkuA!p%UC^bT_Ecgq>f4&_7jCV9=36>_9J;AQA!)6RH17Qi2l8Xbj|vR z=TN6WLn7_xJp;=OBBe1F%~#n`kkVwynVx&rY3R9cSCV)AAuYbh!*R%#)%|VfDv}17 zI0C!qA1AW7;siDUQSHXg%-c3Ab@ZcJe|!9tE!TBJNk`I>-bdn@GMykv(*aTyIk{Z^ z=IZvClW0AYWKu*@JaThRyL}4?w@>e{MtDkmV;q6}&W8Rk dO%$I57yxZ5OJn5aw4ML}002ovPDHLkV1fs9YtaAz diff --git a/src/main/resources/images/spreadsheet/addrows_head.png b/src/main/resources/images/spreadsheet/addrows_head.png deleted file mode 100755 index cb8486d974fa60901ee127110eaf2d9d50a426c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1134 zcmV-!1d;oRP)X1^@s6=^Luq0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU$5J^NqRCwC#Sg~%@KoE6EsAE0=#eBiJ zpn)d-1CB3<>FBsf^l^F$)6wB{bn%r`*bOukmp|}H^zqe5gxS-ZXqb%c%Sm@i!j81E zZ@qIfJ8x!oW`n?!Cr_R{tx3E0MbXD^UyOF2Km9@@{`2$K*IV!%5l>DdAij%-2H@U3 z(lw-!ticz7uX>0P_{b+A51=Oxpr<=~22v5RPmdVG(d_r9AN2sw0nV*(mG!dF0bdI~ zvuOG7{cvCC)4qRMUtlhEGU@ke$NK9%(3;x#-$U_p`M=`Z0nTGb4Sk!7ZzJs0;u{HD zv|9GwhQWJBkKCAV=rPs?2H1uBW~|Q#fGdQ7dEON+GlM0TMGYA#!f!V4sQ@lxU=>)- zn7INw6NQ%3`I-2Zi+#EGWASaK{^J6`-PjXkJGsZ(NTCfBiV3V87$Jk9N@IPAO;&;@ z#s>4A2(Pftt%<-lhP=rNdKLmaNfr3Rj;c5#V}4fpUsu0y0H(xxS5dqC5Ac;1cpC7H z0!W6O(m3Tvqvyi?W^X6szmokLHa3&d>7F!RcSI6yBy6SvEjyS5P%Ey!=EN zuz;LM>5>W%DkIW$id@bMaHWg}>2s_cDxvuu%%xKPR{KDlZ4n}qm7n7MI=wicJAf*T z`LRen+JWXIv&5!{XhKH%D1lLieS`M}8GkJH5FkoxoTZI0zH^LPI7lmiOtAOFh~UU@ zgc|4O*;cDiGTtU4mN)DbA0 z%;Jd+Iobv}>2&GRHFVn!fJloKl;z?i>4>C|)9fv8XMz>eruR z5lScPY_AN*Xc4)xwMcO`*L_)HlM%=YryNx%I;xJ8R6wZ&MbC(NXngBA=h&DTtvdl| z9LZHr`!Phh;^qES_h*^BIWeLsl)%y2#X!U|=nlY&z`SxpIZeekIU55IeO!hOlw{B= zDBg;w2*vt^>;v6X@R+@tki*w!PF@4P5@WKC{xEdXa|5*8hrV{}0jcasm*p+e{y#TW zJ6mWYZro3b`_b0AuM|8>Z{sztCF$Z3-xF?E&l1|2g+uAyP;og&BldW^r_GdHy20 ztfP{vTqRso266p%#Tzs|VMLUTE+?pzCGdC~m5W52`?m?Bjtl-lzH$|^EJ?NlX-AVL zOd;tAmF*@>R|5!LB5q7uIVVoMH=2|vtvV5+>$R1$4ajoo5~EpRpS>zW{OAp-IW5f~ z@#UttQgK3AIHE(6ZtO``S&qy+5gd6hf**$>>KCOi5IM^-g(uKI;~2Pm^pg5}^MykR zkw#^2EQK9Ow)1<(E(>RVQB*z1!o8V@f~=KlNf6tkLQ;`kDimYGBDYm@bgP02+hVJ# zoY61iqV7Sfdaq(biLj(E6oV9sMs2j%y{1sumn;>&ke_}RiIbfT9LCQ4La{Z+A$)HG zqWMvmcoqtXnxcK&2G1bep@Mdwho7(9P|EjeAKZ-D)(A%90%U(cv$r!UwP=7;d|K$ z!i@J}VW+x;hYX-I5a-Cs6E<&nruH?R;`?yq!}&Y>Je&hIQ4$^dGQsL=*i#*0)A!cT zq{Aji!82LaJ9!ddw}KSp_V@F>oQzDKv@j`oY!d)Evaj0vH>XwCpN1h}2qQQQ*0nPw z2MtIkILJwXJ{q{J3+lo(+^&a<3K7A>^((}d%oUSR`~PED{Qm}Ois zNEn3Tt~;xF5kS7tCQRh5Tji%oIsFkiOb;juDueB*`iBZxPewzx187XCd^C{sUe#8HVKaKG7SR9^(Ua=yd zynZfPd+(_s|CQRl914oF-7Vr;Pg_!+BOmi-n@Wo^3DdoZ(@Xf7sM88%ui;8us`OCpjfzR zv`}coVh|{SdMR&tkn$3(boH>22M<9WIv8}=a~Z6cpzt8l!8*h)iGh%9(n`S!>KfWg z>dIQKY4!bPXP)DG`}Pk-DDVAXc)K%izHjFD{l1xb?=fb>hK)Uh16G;n!?7j@U7D%5 z#Z@9eWd_&o#^9{w2_vGa>C#KZlf&&pRD48S@UICY$4&c?FSj78G|zq@?RMUT36i{2 z+AO$Sg^;>LTwJXz%#iPXixQ=(6DiuFRvt7VD`0W5B$|njdl?B6th#NkH1vv%!>Ri8Lym=@jP8*ZK82AFC^G zHPnMFwCzPW9d51Uh&Dq?3fbAIm>#9_SXHRo6*QC-RcgvfZY9{n;-J=6U)j!z3X2VC zsP<8TI<&>sBkWv7D;taYd0*7K$}X|k_XrEeM%WTv8>&+0%eV7>p6*U6k>yc-fBo@x z-Zrr?n6|GO%*F*se?WL?#4smy1E3N#B@6?FBN%9KdN@It#Ff)Me4sF1U)H{B&AM^E zpWlxO%E`$AH#&C)_K_yo>gr(?l(sTOF3|nY!d`A0^-)^;Fi8*$-_dx8+koxnnl4^1 z`=Txr^!`<-_3)X2F!OVmWE%$H3574lMEZC;Nb0)yLQ@f6L}}8=?F4rWQdB@; zP?v-3fRy;gBI|$O!Gi$1APqjzR&m6|eahfL?n*>utbE&x_FvMq2Kh%sFns%v4etqt|STo?g4R7n&VIjIvJOrb4PkDo9%^iEJE0 zHmF_hU|6pJkQNgG!S(S(hejUA%>;}a%ZV&1)cP!h&FB>t(oae**0@4FFbKs#d6Hx>mn3%ry&(5kR+oG(qJ3v!o4l0x>Efp{Q&qtUkQxuKY$Ok zK>mC6WHx#ERt>^>R;EkY;gdYoCch5zbpi!Z1(_#~)$+;Ue@wK^td47a-poDX1j~af zCtED4+rKxt&8=UXsWhW>dO6+4RyOAN|Mj2C{65%+UHDr_OtH`3UTY~28_PfD*!Y*H zY%(^S-#JVG3PQ~DdeBQWL3x?Y)_M8c!c-2(QiLm_+@iNrMa{B5r)TIkER00000000000000000000000000NgQ8XaWHE-uUH@-=6wY=8wh4 zHyJ^VOiO1T|g#`dV5+j=6?jQmIfKA`>!yt6wkEt$|=FN2$uKPFrD@6lS z-5cv(na-Lr`PKg3yN>6*cAp2$r$aNYyxo}*kW7CE=04qDLwU*e+RlGIQh74v7owS} zr%P;|cCu{~>iE9n?f=NwhG#AmNmVbOpTAFR_l#{8>lpL*_E(AhYhzc*wpRL5=_+Gm zBNC@P-w}ZTz%Cfe`4n}RsC%%+JzJI zEQwBHo~8fXtcpYwhmNWMEBQME;L6# z0AOnY>A2P=XX`*OyaRPZT_O*Fy65`L-5l!~iej##07WiCcBdWfH201?2*J!d@XI8M zuwqk3@sP7W_35UjZ6`efaveDa`&~2^V;}$kCQ9hJ9-Z|n@ym<@Z#s@Di3EZ$*)=I+ zw;aoO8zT^ZKIjqZzH3=u0e2-HL?8eF-!77=2ktNA%&)vSEaLr%%05UC2d(RH8uK{qh(w~8%xrn=bY1^B?CoV|SIur4 zwP?yP0s;UJ8tZh^H4K&8Y})B!;0=8p>a+|R3@?@U;O@WL);*TF=@OCTTJAoNcbxg- zRXAKSRadj5T*tHLO7~xKZ@%R?M=FlB&-;_g)CpZ!0C2Aar>p6$Q#sw4oON7SSGzU0 zOxH}W5Yddax;!|=dDrUifoN#%)7JW&ndoD>=KuXD-E#3>tNOI6OQwk8S0fCp{r2*;%D%Q>6M+E0rnGX*ZBGQyxc)x)rsGZ5X{(V^c@}bvGdbIs zX0hgTCQ6&TK81sp*bE{N002Nh x000010RVsp4zsWT0KVR+5C8xGz7_uqFaVF6%127II$MhVtcK}ij z6dLmZh&Pm29eglYJ=p-H>ZxE9$fJ%xk6r+An1*Qz6+jNGA>&C8l?sMfy*Ui*EIg!m zbm({zb1BJYl6NENMRecmc(OpcuxMT!&1v4(3thJV=ZOhg<_4 z-J`^Ka7gw-&^=1XgM%?oejvr8ppy2^yCXxcF|dIYj}q|U!9h7PfHVX`>FB`0603s^ e3?m5u1Q-Cs8N(I}N^;x)0000N^<$HVChM z0XBdMAR7>=@6h*3p%Wx*Kqm-&=_}cw8R15#UHwmTuDNhYTcn^^vM$8;;h%jrh{2$j zUV8a!dHI;dq(PgtUPk~E8aAYgbn*1~p5GOu0MybL)aw{vD^Tx-4*N7L*+Fvd)B>;| z9k&4;-Y_xTG!l$W0U2aU8j5!uw9KU$c{K-d)OLs-N9|chjcjuo*06DeUxkeijY%V9 zZbW(%fCV(F%7O)uGp1nQU@zy4)@3q-lLNr`;t;mYVOtsz^Cx3t*>+0*bo991}w=bc5?wH!5IQ(;gOkbTg8h>T7oAU8MCy%QuhU!blSDydrh zpJD={4if`Z8Qq(2$_{m156KI71JVP!8q176pHb**Y^oa#XZYmk|ER@RPb^-QKn*}$ z|D~+ku4_P(K1nkyW_iOHq24aS{@r~YnuvBFbNwAEZk4J6tpH?6ah+=+73xeshsdg~ zg@tfBMH9-6wMB)qE3r;BxVpIobZY?&JNE-!T+0AZzGcb}z|KKl0j&h=B%}q@3fNgl o1N2k}cn|*;jQjsgAYTFu0QZ{~OhIz;*Z=?k07*qoM6N<$f*!g5>i_@% From 0d2a9be56301c740e02eca2aaa2b2c67f1cf564c Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Mon, 16 Sep 2013 10:23:30 +0100 Subject: [PATCH 022/111] Added rename functionality for comments, characteristics, and parameter values. --- .../isacreator/effects/AnimatableJFrame.java | 1 + .../isacreator/spreadsheet/AddColumnGUI.java | 20 +-- .../spreadsheet/RenameColumnGUI.java | 149 ++++++++++++++++++ .../isacreator/spreadsheet/Spreadsheet.java | 42 +++++ .../spreadsheet/SpreadsheetPopupMenus.java | 5 +- 5 files changed, 205 insertions(+), 12 deletions(-) create mode 100644 src/main/java/org/isatools/isacreator/spreadsheet/RenameColumnGUI.java diff --git a/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java b/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java index 6949d17f..f4894e05 100755 --- a/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java +++ b/src/main/java/org/isatools/isacreator/effects/AnimatableJFrame.java @@ -139,6 +139,7 @@ public void run() { } public void hideSheet() { + if (sheetInView) { glass.removeMouseListener(this); glass.setOpaque(false); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java index 8826b3f7..8409d71f 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java @@ -85,14 +85,14 @@ public class AddColumnGUI extends JDialog { private JLabel status; private JRadioButton qualitativeOp; private JRadioButton quantativeOp; - private JTextField stdTextField; + protected JTextField stdTextField; private JTextField unitField; - private JTextField varSelectOntologyField; + protected JTextField varSelectOntologyField; private OntologyTerm selectedOntologyTerm; - private Spreadsheet st; - private int type; + protected Spreadsheet st; + protected int type; private DropDownComponent dropdown; - private static OntologySelectionTool ontologySelectionTool; + protected static OntologySelectionTool ontologySelectionTool; public AddColumnGUI(Spreadsheet st, int type) { @@ -179,7 +179,7 @@ private void changePanels(int panelType) { * @param data - e.g. new String[]{"dose","compound"}; * @return JPanel containing drop down field and its associated label. */ - private JPanel createDropDownField(String typeToAdd, String[] data) { + JPanel createDropDownField(String typeToAdd, String[] data) { JPanel olsFieldCont = new JPanel(new GridLayout(1, 2)); olsFieldCont.setBackground(UIHelper.BG_COLOR); @@ -256,7 +256,7 @@ public void propertyChange(PropertyChangeEvent evt) { private String getStringForHeaderFromOntologyTerm(OntologyTerm ontologyTerm) { // we just need the one term. - return ontologyTerm.getOntologySource() +"-" + ontologyTerm.getOntologyTermName() + "-" + ontologyTerm.getOntologyTermAccession(); + return ontologyTerm.getOntologySource() + "-" + ontologyTerm.getOntologyTermName() + "-" + ontologyTerm.getOntologyTermAccession(); } /** @@ -265,7 +265,7 @@ private String getStringForHeaderFromOntologyTerm(OntologyTerm ontologyTerm) { * @param typeToAdd - Type of field to add, just for definition of label. e.g. characteristic, parameter. * @return JPanel containing the label and the Ontology field. */ - private JPanel createStdOntologyField(String typeToAdd) { + JPanel createStdOntologyField(String typeToAdd) { JPanel ontologyFieldCont = new JPanel(new GridLayout(1, 2)); ontologyFieldCont.setBackground(UIHelper.BG_COLOR); @@ -286,7 +286,7 @@ private JPanel createStdOntologyField(String typeToAdd) { * * @return - JPanel containing the elements. */ - private JPanel createUnitField() { + JPanel createUnitField() { JPanel unitContainer = new JPanel(); unitContainer.setLayout(new BoxLayout(unitContainer, BoxLayout.PAGE_AXIS)); unitContainer.setOpaque(false); @@ -509,7 +509,7 @@ public void run() { southPanel.setBackground(UIHelper.BG_COLOR); JPanel buttonCont = new JPanel(new BorderLayout()); - buttonCont.setBorder(UIHelper.EMPTY_BORDER); + buttonCont.setBorder(UIHelper.EMPTY_BORDER); buttonCont.setBackground(UIHelper.BG_COLOR); buttonCont.add(close, BorderLayout.WEST); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/RenameColumnGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/RenameColumnGUI.java new file mode 100644 index 00000000..1837d812 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/spreadsheet/RenameColumnGUI.java @@ -0,0 +1,149 @@ +package org.isatools.isacreator.spreadsheet; + +import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; +import org.isatools.isacreator.effects.components.RoundedJTextField; + +import javax.swing.*; +import javax.swing.table.TableColumn; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +public class RenameColumnGUI extends AddColumnGUI { + + private TableColumn column; + + public RenameColumnGUI(Spreadsheet st, int type, TableColumn column) { + super(st, type); + this.column = column; + } + + public void createGUI() { + createMainPanel(); + createSouthPanel(); + } + + private String getHeaderValue() { + String currentHeader = column.getHeaderValue().toString(); + currentHeader = currentHeader.substring(currentHeader.indexOf("[") + 1, currentHeader.indexOf("]")); + return currentHeader; + } + + private void createMainPanel() { + JPanel containingPanel = new JPanel(); + containingPanel.setBackground(UIHelper.BG_COLOR); + + JPanel headerCont = new JPanel(new GridLayout(1, 1)); + headerCont.setSize(new Dimension(300, 25)); + headerCont.setOpaque(false); + + Box container = Box.createVerticalBox(); + container.setBackground(UIHelper.BG_COLOR); + + + if (type == ADD_CHARACTERISTIC_COLUMN) { + headerCont.add(UIHelper.createLabel("Rename Characteristic", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); + container.add(headerCont); + container.add(createStdOntologyField("characteristic")); + varSelectOntologyField.setText(getHeaderValue()); + } + + if (type == ADD_PARAMETER_COLUMN) { + headerCont.add(UIHelper.createLabel("Rename Parameter Value", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); + container.add(headerCont); + container.add(createStdOntologyField("parameter")); + varSelectOntologyField.setText(getHeaderValue()); + } + + if (type == ADD_COMMENT_COLUMN) { + headerCont.add(UIHelper.createLabel("Rename Comment", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); + container.add(headerCont); + + JLabel lab = new JLabel("Enter comment qualifier"); + UIHelper.createLabel("Enter comment qualifier", UIHelper.VER_12_PLAIN, UIHelper.DARK_GREEN_COLOR); + + stdTextField = new RoundedJTextField(10); + stdTextField.setText(getHeaderValue()); + + JPanel commentFieldcont = new JPanel(new GridLayout(1, 2)); + commentFieldcont.setOpaque(false); + + commentFieldcont.add(lab); + commentFieldcont.add(stdTextField); + + container.add(commentFieldcont); + } + + containingPanel.add(container, BorderLayout.NORTH); + add(containingPanel, BorderLayout.CENTER); + } + + private void createSouthPanel() { + JButton close = new FlatButton(ButtonType.RED, "Cancel"); + close.addActionListener(new ActionListener() { + + public void actionPerformed(ActionEvent event) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + st.getParentFrame().hideSheet(); + ontologySelectionTool = null; + } + }); + } + }); + + JButton renameButton = new FlatButton(ButtonType.GREEN, "Rename"); + renameButton.addActionListener(new ActionListener() { + + public void actionPerformed(ActionEvent event) { + if (type == ADD_COMMENT_COLUMN) { + if (!stdTextField.getText().isEmpty()) { + setColumnHeaderValue("Comment[" + stdTextField.getText() + "]"); + } else { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + UIHelper.renderComponent(stdTextField, UIHelper.VER_12_PLAIN, UIHelper.RED_COLOR, UIHelper.TRANSPARENT_RED_COLOR); + } + }); + } + } else if (!varSelectOntologyField.getText().isEmpty()) { + if (type == ADD_CHARACTERISTIC_COLUMN) { + setColumnHeaderValue("Characteristics[" + varSelectOntologyField.getText() + "]"); + } + if (type == ADD_PARAMETER_COLUMN) { + setColumnHeaderValue("Parameter Value[" + varSelectOntologyField.getText() + "]"); + } + } else { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + UIHelper.renderComponent(varSelectOntologyField, UIHelper.VER_12_PLAIN, UIHelper.RED_COLOR, UIHelper.TRANSPARENT_RED_COLOR); + } + }); + } + } + }); + + JPanel buttonCont = new JPanel(new BorderLayout()); + buttonCont.setBorder(UIHelper.EMPTY_BORDER); + buttonCont.setBackground(UIHelper.BG_COLOR); + buttonCont.add(close, BorderLayout.WEST); + buttonCont.add(renameButton, BorderLayout.EAST); + + add(buttonCont, BorderLayout.SOUTH); + } + + private void setColumnHeaderValue(final String header) { + + SwingUtilities.invokeLater(new Runnable() { + public void run() { + column.setHeaderValue(header); + st.getParentFrame().hideSheet(); + st.getTable().addNotify(); + ontologySelectionTool = null; + } + }); + } + +} diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java index 1a2e0201..8024f918 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java @@ -1467,6 +1467,48 @@ public void run() { }); } + protected void showRenameColumnsGUI(final int toShow, final TableColumn column) { + + EventQueue.invokeLater(new Runnable() { + public void run() { + RenameColumnGUI goingToDisplay; + + switch (toShow) { + case AddColumnGUI.ADD_FACTOR_COLUMN: + goingToDisplay = new RenameColumnGUI(Spreadsheet.this, + AddColumnGUI.ADD_FACTOR_COLUMN, column); + break; + + case AddColumnGUI.ADD_CHARACTERISTIC_COLUMN: + goingToDisplay = new RenameColumnGUI(Spreadsheet.this, + AddColumnGUI.ADD_CHARACTERISTIC_COLUMN, column); + break; + + case AddColumnGUI.ADD_PARAMETER_COLUMN: + goingToDisplay = new RenameColumnGUI(Spreadsheet.this, + AddColumnGUI.ADD_PARAMETER_COLUMN, column); + + break; + + case AddColumnGUI.ADD_COMMENT_COLUMN: + goingToDisplay = new RenameColumnGUI(Spreadsheet.this, + AddColumnGUI.ADD_COMMENT_COLUMN, column); + + break; + + default: + goingToDisplay = null; + } + + if (goingToDisplay != null) { + goingToDisplay.createGUI(); + // do this to ensure that the gui is fully created before displaying it. + parentFrame.showJDialogAsSheet(goingToDisplay); + } + } + }); + } + /** * Displays an error message when a user tries to delete more than one column at a time. */ diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java index 93314c79..4098b2b2 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java @@ -75,7 +75,7 @@ public SpreadsheetPopupMenus(Spreadsheet spreadsheet) { * @param y vertical position for the location of the popup menu. * @param columnName -> name of column where the popup was called. */ - public void popupMenu(JComponent jc, final int x, final int y, String columnName) { + public void popupMenu(JComponent jc, final int x, final int y, final String columnName) { final JPopupMenu popup = new JPopupMenu("Utilities"); popup.setLightWeightPopupEnabled(false); popup.setBackground(new Color(0, 104, 56, 50)); @@ -83,7 +83,8 @@ public void popupMenu(JComponent jc, final int x, final int y, String columnName JMenuItem rename = new JMenuItem("Rename"); rename.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - System.out.println("Hi!"); + popup.setVisible(false); + spreadsheet.showRenameColumnsGUI(RenameColumnGUI.ADD_CHARACTERISTIC_COLUMN, spreadsheet.getTable().getColumn(columnName)); } }); From 395e616beb31e424c704f29e4dbf9eaae13f6351 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Mon, 16 Sep 2013 10:36:22 +0100 Subject: [PATCH 023/111] Final additions. All works now. --- .../api/utils/SpreadsheetUtils.java | 8 ++- .../isacreator/spreadsheet/AddColumnGUI.java | 1 - .../isacreator/spreadsheet/Spreadsheet.java | 49 +++++++------------ .../spreadsheet/SpreadsheetPopupMenus.java | 4 +- 4 files changed, 27 insertions(+), 35 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/api/utils/SpreadsheetUtils.java b/src/main/java/org/isatools/isacreator/api/utils/SpreadsheetUtils.java index c02b4437..8b41abea 100644 --- a/src/main/java/org/isatools/isacreator/api/utils/SpreadsheetUtils.java +++ b/src/main/java/org/isatools/isacreator/api/utils/SpreadsheetUtils.java @@ -311,10 +311,16 @@ public static void stopCellEditingInTable(JTable table) { } } + public static boolean isCommentParameterOrCharacteristic(String columnName) { + return (columnName.contains("Characteristics") || + columnName.contains("Comment") || + columnName.contains("Parameter Value")); + } + public static boolean isFactorParameterOrCharacteristic(String columnName) { return (columnName.contains("Characteristics") || columnName.contains("Factor") || - columnName.equals("Parameter Value")); + columnName.contains("Parameter Value")); } /** diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java index 8409d71f..429f0ac4 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java @@ -418,7 +418,6 @@ public void actionPerformed(ActionEvent actionEvent) { String colName = typeAsText + "[" + toAdd + "]"; - doAddColumn(typeAsText, toAdd, colName); FieldObject newFieldObject = st.getTableReferenceObject().getFieldByName(colName); if (newFieldObject == null) { newFieldObject = new FieldObject(st.getColumnCount(), diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java index 8024f918..4c21e2c4 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java @@ -213,6 +213,7 @@ public Spreadsheet(AnimatableJFrame parentFrame, TableReferenceObject tableRefer /** * Spreadsheet Constructor. + * * @param spreadsheetTitle - name to display on the spreadsheet... * @param assayDataEntryEnvironment - The assay data entry object :o) */ @@ -273,7 +274,7 @@ private void addOntologyTermsToUserHistory() { Map ontoHistory = OntologyManager.getOntologySelectionHistory(); for (OntologyTerm oo : referencedOntologyTerms.values()) { - ontoHistory.put(oo.getUniqueId(), oo); + ontoHistory.put(oo.getUniqueId(), oo); } } @@ -931,9 +932,9 @@ public void addButtons() { /** * Helper method that adds a number of buttons to a panel. * - * @param container - Container to add the components to + * @param container - Container to add the components to * @param addSpaceOnLastElement - do you wish to add a space after the last component? If false, there will be no padding added after the last component. - * @param components - Components to add. Added in the order they are passed in to the method. + * @param components - Components to add. Added in the order they are passed in to the method. */ public void addComponentsToContainer(Container container, boolean addSpaceOnLastElement, JComponent... components) { int count = 0; @@ -1467,37 +1468,23 @@ public void run() { }); } - protected void showRenameColumnsGUI(final int toShow, final TableColumn column) { + protected void showRenameColumnsGUI(final TableColumn column) { EventQueue.invokeLater(new Runnable() { public void run() { - RenameColumnGUI goingToDisplay; - - switch (toShow) { - case AddColumnGUI.ADD_FACTOR_COLUMN: - goingToDisplay = new RenameColumnGUI(Spreadsheet.this, - AddColumnGUI.ADD_FACTOR_COLUMN, column); - break; - - case AddColumnGUI.ADD_CHARACTERISTIC_COLUMN: - goingToDisplay = new RenameColumnGUI(Spreadsheet.this, - AddColumnGUI.ADD_CHARACTERISTIC_COLUMN, column); - break; - - case AddColumnGUI.ADD_PARAMETER_COLUMN: - goingToDisplay = new RenameColumnGUI(Spreadsheet.this, - AddColumnGUI.ADD_PARAMETER_COLUMN, column); - - break; - - case AddColumnGUI.ADD_COMMENT_COLUMN: - goingToDisplay = new RenameColumnGUI(Spreadsheet.this, - AddColumnGUI.ADD_COMMENT_COLUMN, column); - - break; - - default: - goingToDisplay = null; + RenameColumnGUI goingToDisplay = null; + String toShow = column.getHeaderValue().toString().substring(0, column.getHeaderValue().toString().indexOf("[")); + if (toShow.contains("Characteristics")) { + goingToDisplay = new RenameColumnGUI(Spreadsheet.this, + AddColumnGUI.ADD_CHARACTERISTIC_COLUMN, column); + + } else if (toShow.contains("Parameter Value")) { + goingToDisplay = new RenameColumnGUI(Spreadsheet.this, + AddColumnGUI.ADD_PARAMETER_COLUMN, column); + + } else if (toShow.contains("Comment")) { + goingToDisplay = new RenameColumnGUI(Spreadsheet.this, + AddColumnGUI.ADD_COMMENT_COLUMN, column); } if (goingToDisplay != null) { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java index 4098b2b2..5704f25a 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetPopupMenus.java @@ -84,7 +84,7 @@ public void popupMenu(JComponent jc, final int x, final int y, final String colu rename.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { popup.setVisible(false); - spreadsheet.showRenameColumnsGUI(RenameColumnGUI.ADD_CHARACTERISTIC_COLUMN, spreadsheet.getTable().getColumn(columnName)); + spreadsheet.showRenameColumnsGUI(spreadsheet.getTable().getColumn(columnName)); } }); @@ -411,7 +411,7 @@ public void actionPerformed(ActionEvent actionEvent) { popup.add(redo); popup.add(new JSeparator()); - if (SpreadsheetUtils.isFactorParameterOrCharacteristic(columnName)) { + if (SpreadsheetUtils.isCommentParameterOrCharacteristic(columnName)) { popup.add(rename); } popup.add(new JSeparator()); From 06d5ff09b2ed1c6252ab0ca7c553cc56a74538f3 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Mon, 16 Sep 2013 10:43:41 +0100 Subject: [PATCH 024/111] Loads in file with comments and ignores them. Closes #224 --- .../io/importisa/InvestigationImport.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java index 2d6abfc8..d6525c45 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java @@ -212,10 +212,20 @@ private boolean isValidInvestigationSections(OrderedMap loadFile(File investigationFile) throws IOException { - + List fileContents = new ArrayList(); if (investigationFile.exists()) { CSVReader csvReader = new CSVReader(new FileReader(investigationFile), TAB_DELIM); - return csvReader.readAll(); + + String[] line = null; + while((line = csvReader.readNext()) != null) { + if(line.length > 0) { + if(!line[0].startsWith("#")) { + fileContents.add(line); + } + } + } + + return fileContents; } else { throw new FileNotFoundException("The specified file " + investigationFile.getName() + "does not exist in " + investigationFile.getAbsolutePath()); } From 717ac66d19fa8e2d8ea35593523f6fa3ed668d29 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 16 Sep 2013 10:52:04 +0100 Subject: [PATCH 025/111] Fixes for columns annotated with ontology terms --- .../io/importisa/SpreadsheetImport.java | 8 ------ .../ontologymanager/common/OntologyTerm.java | 3 ++- .../utils/OntologyTermUtils.java | 26 ++++++++++++++----- .../SpreadsheetColumnRenderer.java | 15 +++++++---- .../spreadsheet/SpreadsheetFunctions.java | 7 +---- .../model/TableReferenceObject.java | 9 ++++++- 6 files changed, 41 insertions(+), 27 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java index f12154c8..a4bb6b38 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java @@ -5,7 +5,6 @@ import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; import org.isatools.isacreator.io.importisa.errorhandling.exceptions.MalformedInvestigationException; -import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; import org.isatools.isacreator.utils.GeneralUtils; @@ -112,17 +111,10 @@ private TableReferenceObject reformTableDefinition(String tableName, for (String columnHeader : headers) { positionInheaders++; - if (columnHeader.contains(":")) { - columnHeader = OntologyTermUtils.fullAnnotatedHeaderToUniqueId(columnHeader); - headers[count] = columnHeader; - } - String fieldAsLowercase = columnHeader.toLowerCase(); System.out.println("Column header is " + columnHeader); - - if (expectedNextUnitLocation == positionInheaders) { System.out.println("Expected a unit here, got a " + columnHeader); if (fieldAsLowercase.contains("unit")) { diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java index df64efc1..91a999df 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java @@ -146,7 +146,8 @@ public Map getComments() { @Override public String toString() { - return getOntologyTermName() + "(" + getOntologyTermAccession() + ")"; + //return getOntologyTermName() + "(" + getOntologyTermAccession() + ")"; + return getUniqueId(); } /*** diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java index 024aa989..d8498a9d 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java @@ -1,9 +1,11 @@ package org.isatools.isacreator.ontologymanager.utils; import org.isatools.isacreator.ontologymanager.OntologyManager; +import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.settings.ISAcreatorProperties; +import java.util.HashMap; import java.util.Map; /** @@ -59,7 +61,7 @@ public static OntologyTerm stringToOntologyTerm(String header){ ontologyTerm = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); - } else if (prevVal.contains(":")) { + } else if (prevVal.contains(":")) { //this is the part for the currently accepted syntax //this should be the currently accepted string //such as "Characteristics[dose,efo:EFO_0000428,EFO]" or "Characteristics[dose,http://www.ebi.ac.uk/efo/EFO_0000428,EFO]" @@ -69,10 +71,12 @@ public static OntologyTerm stringToOntologyTerm(String header){ accession = parts[1]; source = parts[2]; + OntologySourceRefObject ontologySource = OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source); + if (accession.contains("http://")) - ontologyTerm = new OntologyTerm(term, null, accession, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + ontologyTerm = new OntologyTerm(term, null, accession, ontologySource); else - ontologyTerm = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + ontologyTerm = new OntologyTerm(term, accession, null, ontologySource); }else if (prevVal.startsWith("http://")) { // we have a PURL. So we'll use this directly @@ -140,10 +144,20 @@ public static String headerToString(String header){ */ public static String fullAnnotatedHeaderToUniqueId(String fullAnnotatedHeader){ OntologyTerm ontologyTerm = stringToOntologyTerm(fullAnnotatedHeader); - String headerName = fullAnnotatedHeader.substring(0,fullAnnotatedHeader.indexOf('[')); - if (ontologyTerm != null) - return headerName +"["+ ontologyTerm.getUniqueId() + "]"; + String headerName = fullAnnotatedHeader.substring(0,fullAnnotatedHeader.indexOf('[')); + String uniqueId = null; + if (ontologyTerm != null) { + uniqueId = headerName +"["+ ontologyTerm.getUniqueId() + "]"; + + Map history = OntologyManager.getOntologySelectionHistory(); + if (history.get(ontologyTerm.getUniqueId())==null) { + Map map = new HashMap(); + map.put(uniqueId, ontologyTerm); + OntologyManager.addToOntologySelectionHistory(map); + } + return uniqueId; + } return null; } diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetColumnRenderer.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetColumnRenderer.java index 925f5d38..6250d87c 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetColumnRenderer.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetColumnRenderer.java @@ -38,6 +38,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.spreadsheet; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; import org.isatools.isacreator.settings.ISAcreatorProperties; import org.isatools.isacreator.utils.GeneralUtils; import org.jdesktop.fuse.InjectedResource; @@ -52,10 +53,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.util.Set; /** - * SpreadsheetColumnRenderer + * SpreadsheetColumnRenderer - GUI component for the Spreadsheet table. */ - - public class SpreadsheetColumnRenderer extends JPanel implements TableCellRenderer { @InjectedResource @@ -129,11 +128,17 @@ public Component getTableCellRendererComponent(JTable table, Object value, boole boolean shortNames = Boolean.parseBoolean(ISAcreatorProperties.getProperty("useShortNames")); + String valueString = value.toString(); + if (shortNames) { - String shortHeader = GeneralUtils.getShortString(value.toString()); + String shortHeader = GeneralUtils.getShortString(valueString); text.setText(shortHeader); } else { - text.setText(value.toString()); + if (valueString.contains(":")){ + text.setText(OntologyTermUtils.fullAnnotatedHeaderToUniqueId(valueString)); + }else{ + text.setText(valueString); + } } return this; diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java index 54b1d44f..cdf0a672 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java @@ -46,7 +46,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; -import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; import org.isatools.isacreator.ontologyselectiontool.OntologyCellEditor; import org.isatools.isacreator.plugins.host.service.PluginSpreadsheetWidget; import org.isatools.isacreator.plugins.registries.SpreadsheetPluginRegistry; @@ -247,17 +246,13 @@ public boolean exportTable(File f, String separator, boolean removeEmptyColumns) String header = tc.getHeaderValue().toString(); - if (header.contains(":")) - toPrint = "\"" + OntologyTermUtils.headerToString(header) + "\""; - else - toPrint = "\"" + header + "\""; + toPrint = "\"" + header + "\""; if (col == 1) { ps.print(toPrint); } else { ps.print( separator + toPrint); } - if (tc.getCellEditor() instanceof OntologyCellEditor || tc.getHeaderValue().toString().equalsIgnoreCase("unit")) { ps.print(separator + "\"Term Source REF\""); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java index a05b37d2..7cf0cd39 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java @@ -294,6 +294,13 @@ public void addField(FieldObject fo) { fieldIndexLookup.put(fo.getColNo(), fo); } + /** + * + * Adds the row data. + * + * @param headers free text or full annotated headers (e.g. Characteristics[

+ * studyDesignSubform = new StudyDesignSubForm(InvestigationFileSection.STUDY_DESIGN_SECTION.toString(), FieldTypes.DESIGN, + * updatedFields, (study.getStudyDesigns().size() == 0) ? 2 + * : study.getStudyDesigns().size(), 300, 60, StudyDataEntry.this); + * studyDesignSubform.createGUI(); + *

+ * studyDesignContainer.add(studyDesignSubform); + * studyDesignContainer.repaint(); + * studyDesignContainer.revalidate(); + */ + @Override public boolean okToAddField(String fieldName) { return true; diff --git a/src/main/java/org/isatools/isacreator/gui/formelements/ContactSubForm.java b/src/main/java/org/isatools/isacreator/gui/formelements/ContactSubForm.java index 2434373d..d76fc34b 100644 --- a/src/main/java/org/isatools/isacreator/gui/formelements/ContactSubForm.java +++ b/src/main/java/org/isatools/isacreator/gui/formelements/ContactSubForm.java @@ -37,6 +37,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.gui.formelements; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.gui.DataEntryForm; import org.isatools.isacreator.gui.InvestigationDataEntry; import org.isatools.isacreator.gui.StudyDataEntry; @@ -44,7 +46,10 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.model.InvestigationContact; import org.isatools.isacreator.model.StudyContact; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Map; diff --git a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java index 44bb6eb6..b5ad8ae2 100644 --- a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java +++ b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java @@ -47,12 +47,15 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.calendar.DateCellEditor; import org.isatools.isacreator.common.ExcelAdaptor; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.factorlevelentry.FactorLevelEntryCellEditor; import org.isatools.isacreator.filechooser.FileSelectCellEditor; import org.isatools.isacreator.gui.*; import org.isatools.isacreator.io.UserProfileManager; import org.isatools.isacreator.longtexteditor.TextCellEditor; import org.isatools.isacreator.managers.ApplicationManager; +import org.isatools.isacreator.model.Contact; import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; @@ -167,7 +170,7 @@ public SubForm(String title, FieldTypes fieldType, if (dataEntryForm instanceof DataEntryEnvironment) { this.dataEntryEnvironment = (DataEntryEnvironment) dataEntryForm; - } else if (dataEntryForm instanceof DataEntryForm) { + } else if (dataEntryForm != null) { this.dataEntryEnvironment = dataEntryForm.getDataEntryEnvironment(); } else { dataEntryEnvironment = null; @@ -198,8 +201,6 @@ private void generateAliases() { if (fieldName.toLowerCase().startsWith("comment")) { String alias = StringProcessing.extractQualifierFromField(fieldName) + " [c]"; - - System.out.println("Alias for " + fieldName + " is " + alias); aliasesToRealNames.put(alias, fieldName); realNamesToAliases.put(fieldName, alias); } @@ -794,6 +795,7 @@ public Map getRecord(int recordNumber) { int index = 0; for (SubFormField field : fields) { + Object value = defaultTableModel.getValueAt(index, recordNumber); String fieldName = field.getFieldName(); @@ -992,4 +994,9 @@ public void cleanupReferences() { removeAll(); } + public List getSubFormFields() { + return fields; + } + + } diff --git a/src/main/java/org/isatools/isacreator/gui/reference/DataEntryReferenceObject.java b/src/main/java/org/isatools/isacreator/gui/reference/DataEntryReferenceObject.java index 0933574c..cbf2e329 100644 --- a/src/main/java/org/isatools/isacreator/gui/reference/DataEntryReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/gui/reference/DataEntryReferenceObject.java @@ -74,7 +74,6 @@ private void createSectionDefinitionsFromField() { if (!sectionDefinition.containsKey(section)) { sectionDefinition.put(section, new ListOrderedSet()); } - sectionDefinition.get(section).add(fieldName); } } @@ -117,24 +116,30 @@ public FieldObject getFieldDefinition(String fieldName) { public Set getOntologyTerms(InvestigationFileSection section) { Set ontologyFields = new HashSet(); - if (sectionDefinition != null) { if (sectionDefinition.get(section) != null) { + ontologyFields = getOntologyTerms(sectionDefinition.get(section)); + } + } + + return ontologyFields; + } - fieldsToIgnore = filterFields(sectionDefinition.get(section), "term accession", "term source"); + public Set getOntologyTerms(Set fields) { + Set ontologyFields = new HashSet(); - for (String ontologyTerm : fieldsToIgnore) { + fieldsToIgnore = filterFields(fields, "term accession", "term source"); - String toAdd = ontologyTerm.substring(0, ontologyTerm.toLowerCase().indexOf("term")).trim(); + for (String ontologyTerm : fieldsToIgnore) { - // if the field edited was a comment, it will include an unclosed square bracket after running the - // previous function. So, we should close it. - if (toAdd.contains("[")) { - toAdd += "]"; - } - ontologyFields.add(toAdd); - } + String toAdd = ontologyTerm.substring(0, ontologyTerm.toLowerCase().indexOf("term")).trim(); + + // if the field edited was a comment, it will include an unclosed square bracket after running the + // previous function. So, we should close it. + if (toAdd.contains("[")) { + toAdd += "]"; } + ontologyFields.add(toAdd); } return ontologyFields; From 987ec3e201d45ffd2ee8ffe139bff698afbb57ce Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 19 Nov 2013 16:18:57 +0000 Subject: [PATCH 048/111] Everything working for Study. Now just the addition of the Investigation part. --- .../isacreator/gui/DataEntryForm.java | 6 +- .../isacreator/gui/StudyDataEntry.java | 186 +++++++++++------- .../gui/commentui/SubFormAddCommentGUI.java | 90 +++++++++ .../gui/commentui/TableAddCommentGUI.java | 82 -------- .../isacreator/gui/formelements/SubForm.java | 9 + src/main/resources/images/gui/exitImage.png | Bin 1140 -> 577 bytes 6 files changed, 214 insertions(+), 159 deletions(-) create mode 100644 src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java delete mode 100644 src/main/java/org/isatools/isacreator/gui/commentui/TableAddCommentGUI.java diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java b/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java index 5e542478..8a79dc9f 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java @@ -481,20 +481,16 @@ private SubFormField createField(Set fieldsToIgnore, Set ontolog * @return a string with the serialization of the ISASection */ protected String getISASectionAsString(String sectionTitle, List sectionToOutput) { - StringBuilder representation = new StringBuilder(); - representation.append(sectionTitle.toUpperCase().trim()).append("\n"); - if (sectionToOutput.size() > 0) { + if (sectionToOutput.size() > 0) { for (String fieldName : sectionToOutput.get(0).getFieldValues().keySet()) { representation.append(fieldName); - if (sectionToOutput.size() > 0) { representation.append("\t"); } - // now add the field values in int count = 0; for (ISASection section : sectionToOutput) { diff --git a/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java b/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java index a060bcc4..239caaf1 100755 --- a/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java +++ b/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java @@ -48,7 +48,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.configuration.MappingObject; import org.isatools.isacreator.gui.commentui.ContainerAddCommentGUI; -import org.isatools.isacreator.gui.commentui.TableAddCommentGUI; +import org.isatools.isacreator.gui.commentui.SubFormAddCommentGUI; import org.isatools.isacreator.gui.formelements.*; import org.isatools.isacreator.gui.formelements.assay.AssayInformationPanel; import org.isatools.isacreator.gui.formelements.assay.AssayInformationWriter; @@ -94,12 +94,9 @@ public class StudyDataEntry extends DataEntryForm { private JPanel assayContainer; private AssaySelectionDialog assaySelectionUI; - private JPanel studyDesignContainer; - private SubForm studyDesignSubform; - private SubForm studyPublicationsSubForm; - private SubForm contactSubForm; - private SubForm factorSubForm; - private SubForm protocolSubForm; + private Map fieldTypeToFieldContainer; + private Map fieldTypeToSubform; + private RemoveAssayListener removeAssayListener = new RemoveAssayListener(); private ViewAssayListener viewAssayListener = new ViewAssayListener(); @@ -118,10 +115,14 @@ public StudyDataEntry(DataEntryEnvironment dataEntryEnvironment, Study study) { super(dataEntryEnvironment); ResourceInjector.get("gui-package.style").inject(this); this.study = study; + createGUI(); } public void createGUI() { + fieldTypeToFieldContainer = new HashMap(); + fieldTypeToSubform = new HashMap(); + Map> measToAllowedTechnologies = ConfigurationManager.getAllowedTechnologiesPerEndpoint(); @@ -179,36 +180,30 @@ public void actionPerformed(ActionEvent actionEvent) { subPanel.add(createStudyAssaySection()); subPanel.add(Box.createVerticalStrut(20)); - FlatButton addRowItem = new FlatButton(ButtonType.GREEN, "+ New Field To Study Design Descriptors"); - addRowItem.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent actionEvent) { - - SwingUtilities.invokeLater(new Runnable() { - public void run() { - new TableAddCommentGUI(StudyDataEntry.this); - } - }); - } - }); - - JPanel addStudyDesignFieldButtonContainer = new JPanel(new BorderLayout()); - addStudyDesignFieldButtonContainer.add(addRowItem, BorderLayout.EAST); - subPanel.add(createStudyDesignSubForm()); subPanel.add(Box.createVerticalStrut(5)); - subPanel.add(addStudyDesignFieldButtonContainer); + + subPanel.add(getButtonForFieldAddition(FieldTypes.DESIGN)); subPanel.add(Box.createVerticalStrut(20)); subPanel.add(createStudyPublicationSubForm()); + subPanel.add(Box.createVerticalStrut(5)); + subPanel.add(getButtonForFieldAddition(FieldTypes.PUBLICATION)); subPanel.add(Box.createVerticalStrut(20)); subPanel.add(createStudyFactorsSubForm()); + subPanel.add(Box.createVerticalStrut(5)); + subPanel.add(getButtonForFieldAddition(FieldTypes.FACTOR)); subPanel.add(Box.createVerticalStrut(20)); subPanel.add(createStudyProtocolsSubForm()); + subPanel.add(Box.createVerticalStrut(5)); + subPanel.add(getButtonForFieldAddition(FieldTypes.PROTOCOL)); subPanel.add(Box.createVerticalStrut(20)); subPanel.add(createStudyContactsSubForm()); + subPanel.add(Box.createVerticalStrut(5)); + subPanel.add(getButtonForFieldAddition(FieldTypes.CONTACT)); subPanel.add(Box.createVerticalStrut(20)); fieldContainer.add(subPanel, BorderLayout.SOUTH); @@ -224,6 +219,36 @@ public void run() { add(containerScroller); } + private JPanel getButtonForFieldAddition(final FieldTypes type) { + FlatButton addStudyDesignFieldButton = new FlatButton(ButtonType.GREEN, String.format("+ New Field To Study %s Descriptors", type.toString())); + addStudyDesignFieldButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + new SubFormAddCommentGUI(StudyDataEntry.this, type); + } + }); + } + }); + + JPanel addStudyDesignFieldButtonContainer = new JPanel(new BorderLayout()); + addStudyDesignFieldButtonContainer.add(addStudyDesignFieldButton, BorderLayout.EAST); + + return addStudyDesignFieldButtonContainer; + } + + public JPanel getContainerForFieldType(FieldTypes type) { + return fieldTypeToFieldContainer.get(type); + } + + public SubForm getSubFormForFieldType(FieldTypes type) { + return fieldTypeToSubform.get(type); + } + + public void setSubFormForFieldType(FieldTypes type, SubForm subform) { + fieldTypeToSubform.put(type, subform); + } + /** * Create the Assay definition section. * @@ -310,6 +335,10 @@ public List getDesigns() { * @return - a JPanel containing the Contacts subform. */ private JPanel createStudyContactsSubForm() { + JPanel studyContactContainer = new JPanel(new BorderLayout()); + studyContactContainer.setBackground(UIHelper.BG_COLOR); + + List contactFields = new ArrayList(); Set ontologyFields = study.getReferenceObject().getOntologyTerms(InvestigationFileSection.STUDY_CONTACTS); @@ -327,11 +356,17 @@ private JPanel createStudyContactsSubForm() { : study.getContacts() .size(); - contactSubForm = new ContactSubForm(InvestigationFileSection.STUDY_CONTACTS.toString(), FieldTypes.CONTACT, + SubForm contactSubForm = new ContactSubForm(InvestigationFileSection.STUDY_CONTACTS.toString(), FieldTypes.CONTACT, contactFields, numColsToAdd, SUBFORM_WIDTH, estimateSubformHeight(contactFields.size()), this); contactSubForm.createGUI(); - return contactSubForm; + fieldTypeToFieldContainer.put(FieldTypes.CONTACT, studyContactContainer); + fieldTypeToSubform.put(FieldTypes.CONTACT, contactSubForm); + + studyContactContainer.add(contactSubForm); + + + return studyContactContainer; } @@ -369,9 +404,12 @@ private JPanel createStudyDesc() { * @return - JPanel containing the Factor definition subform. */ private JPanel createStudyFactorsSubForm() { + JPanel studyFactorContainer = new JPanel(new BorderLayout()); + studyFactorContainer.setBackground(UIHelper.BG_COLOR); + List factorFields = new ArrayList(); - Set fieldList = study.getFactors().size()>0 ? study.getFactors().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_FACTORS); + Set fieldList = study.getFactors().size() > 0 ? study.getFactors().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_FACTORS); Set ontologyFields = study.getReferenceObject().getOntologyTerms(fieldList); Set fieldsToIgnore = study.getReferenceObject().getFieldsToIgnore(); @@ -389,12 +427,17 @@ private JPanel createStudyFactorsSubForm() { : study.getFactors() .size(); - factorSubForm = new FactorSubForm(InvestigationFileSection.STUDY_FACTORS.toString(), FieldTypes.FACTOR, factorFields, + SubForm factorSubForm = new FactorSubForm(InvestigationFileSection.STUDY_FACTORS.toString(), FieldTypes.FACTOR, factorFields, numColsToAdd, SUBFORM_WIDTH, estimateSubformHeight(factorFields.size()), this); factorSubForm.createGUI(); - return factorSubForm; + studyFactorContainer.add(factorSubForm); + + fieldTypeToFieldContainer.put(FieldTypes.FACTOR, studyFactorContainer); + fieldTypeToSubform.put(FieldTypes.FACTOR, factorSubForm); + + return studyFactorContainer; } /** @@ -403,9 +446,12 @@ private JPanel createStudyFactorsSubForm() { * @return JPanel containing the Protocol definition subform. */ private JPanel createStudyProtocolsSubForm() { + JPanel studyProtocolContainer = new JPanel(new BorderLayout()); + studyProtocolContainer.setBackground(UIHelper.BG_COLOR); + List protocolFields = new ArrayList(); - Set fieldList = study.getProtocols().size()>0 ? study.getProtocols().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_PROTOCOLS); + Set fieldList = study.getProtocols().size() > 0 ? study.getProtocols().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_PROTOCOLS); Set ontologyFields = study.getReferenceObject().getOntologyTerms(fieldList); Set fieldsToIgnore = study.getReferenceObject().getFieldsToIgnore(); @@ -419,11 +465,16 @@ private JPanel createStudyProtocolsSubForm() { int numColsToAdd = study.getProtocols().size() == 0 ? 1 : study.getProtocols().size(); - protocolSubForm = new ProtocolSubForm(InvestigationFileSection.STUDY_PROTOCOLS.toString(), FieldTypes.PROTOCOL, + SubForm protocolSubForm = new ProtocolSubForm(InvestigationFileSection.STUDY_PROTOCOLS.toString(), FieldTypes.PROTOCOL, protocolFields, numColsToAdd, SUBFORM_WIDTH, estimateSubformHeight(protocolFields.size()), this); protocolSubForm.createGUI(); - return protocolSubForm; + studyProtocolContainer.add(protocolSubForm); + + fieldTypeToFieldContainer.put(FieldTypes.PROTOCOL, studyProtocolContainer); + fieldTypeToSubform.put(FieldTypes.PROTOCOL, protocolSubForm); + + return studyProtocolContainer; } /** @@ -432,9 +483,13 @@ private JPanel createStudyProtocolsSubForm() { * @return JPanel containing the Publication definition subform */ private JPanel createStudyPublicationSubForm() { + + JPanel studyPublicationContainer = new JPanel(new BorderLayout()); + studyPublicationContainer.setBackground(UIHelper.BG_COLOR); + List publicationFields = new ArrayList(); - Set fieldList = study.getPublications().size()>0 ? study.getPublications().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_PUBLICATIONS); + Set fieldList = study.getPublications().size() > 0 ? study.getPublications().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_PUBLICATIONS); Set ontologyFields = study.getReferenceObject().getOntologyTerms(fieldList); Set fieldsToIgnore = study.getReferenceObject().getFieldsToIgnore(); @@ -453,11 +508,17 @@ private JPanel createStudyPublicationSubForm() { : study.getPublications() .size(); - studyPublicationsSubForm = new PublicationSubForm(InvestigationFileSection.STUDY_PUBLICATIONS.toString(), FieldTypes.PUBLICATION, + SubForm studyPublicationsSubForm = new PublicationSubForm(InvestigationFileSection.STUDY_PUBLICATIONS.toString(), FieldTypes.PUBLICATION, publicationFields, numColsToAdd, SUBFORM_WIDTH, estimateSubformHeight(publicationFields.size()), this); studyPublicationsSubForm.createGUI(); - return studyPublicationsSubForm; + studyPublicationContainer.add(studyPublicationsSubForm); + + fieldTypeToFieldContainer.put(FieldTypes.PUBLICATION, studyPublicationContainer); + fieldTypeToSubform.put(FieldTypes.PUBLICATION, studyPublicationsSubForm); + + + return studyPublicationContainer; } /** @@ -467,12 +528,12 @@ private JPanel createStudyPublicationSubForm() { */ private JPanel createStudyDesignSubForm() { - studyDesignContainer = new JPanel(new BorderLayout()); + JPanel studyDesignContainer = new JPanel(new BorderLayout()); studyDesignContainer.setBackground(UIHelper.BG_COLOR); List studyDesignFields = new ArrayList(); - Set fieldList = study.getStudyDesigns().size()>0 ? study.getStudyDesigns().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_DESIGN_SECTION); + Set fieldList = study.getStudyDesigns().size() > 0 ? study.getStudyDesigns().iterator().next().getFieldValues().keySet() : study.getReferenceObject().getFieldsForSection(InvestigationFileSection.STUDY_DESIGN_SECTION); Set ontologyFields = study.getReferenceObject().getOntologyTerms(fieldList); Set fieldsToIgnore = study.getReferenceObject().getFieldsToIgnore(); @@ -488,25 +549,17 @@ private JPanel createStudyDesignSubForm() { int numColsToAdd = (study.getStudyDesigns().size() == 0) ? 2 : study.getStudyDesigns().size(); - studyDesignSubform = new StudyDesignSubForm(InvestigationFileSection.STUDY_DESIGN_SECTION.toString(), FieldTypes.DESIGN, + SubForm studyDesignSubform = new StudyDesignSubForm(InvestigationFileSection.STUDY_DESIGN_SECTION.toString(), FieldTypes.DESIGN, studyDesignFields, numColsToAdd, SUBFORM_WIDTH, estimateSubformHeight(studyDesignFields.size()), this); studyDesignSubform.createGUI(); studyDesignContainer.add(studyDesignSubform); - return studyDesignContainer; - } - - public JPanel getStudyDesignContainer() { - return studyDesignContainer; - } + fieldTypeToFieldContainer.put(FieldTypes.DESIGN, studyDesignContainer); + fieldTypeToSubform.put(FieldTypes.DESIGN, studyDesignSubform); - public void setStudyDesignSubform(SubForm studyDesignSubform) { - this.studyDesignSubform = studyDesignSubform; - } - public SubForm getStudyDesignSubform() { - return studyDesignSubform; + return studyDesignContainer; } public synchronized Map getAssays() { @@ -582,9 +635,9 @@ private void removeUnusedProtocols(String assayRef) { for (String protocolRef : protocolRefsInAssay) { if (!protocolsPresentInOtherAssays.contains(protocolRef)) { // remove this protocol - int index = protocolSubForm.getColumnIndexForValue(0, protocolRef); + int index = fieldTypeToSubform.get(FieldTypes.PROTOCOL).getColumnIndexForValue(0, protocolRef); if (index != -1) { - protocolSubForm.removeItem(index); + fieldTypeToSubform.get(FieldTypes.PROTOCOL).removeItem(index); } } } @@ -669,43 +722,32 @@ public void update() { } - studyDesignSubform.update(); - studyPublicationsSubForm.update(); - factorSubForm.update(); - protocolSubForm.update(); - contactSubForm.update(); + for (SubForm subform : fieldTypeToSubform.values()) { + subform.update(); + } } public void updateFactorsAndProtocols() { - factorSubForm.update(); - protocolSubForm.update(); + fieldTypeToSubform.get(FieldTypes.FACTOR).update(); + fieldTypeToSubform.get(FieldTypes.PROTOCOL).update(); } public void reformProtocols() { - protocolSubForm.reformPreviousContent(); + fieldTypeToSubform.get(FieldTypes.PROTOCOL).reformPreviousContent(); } public void reformFactors() { - factorSubForm.reformItems(); + fieldTypeToSubform.get(FieldTypes.FACTOR).reformItems(); } public void removeReferences() { setDataEntryEnvironment(null); - studyDesignSubform.cleanupReferences(); - studyDesignSubform = null; - - studyPublicationsSubForm.cleanupReferences(); - studyPublicationsSubForm = null; - - factorSubForm.cleanupReferences(); - factorSubForm = null; - - contactSubForm.cleanupReferences(); - contactSubForm = null; + for (SubForm subform : fieldTypeToSubform.values()) { + subform.cleanupReferences(); + } - protocolSubForm.cleanupReferences(); - protocolSubForm = null; + fieldTypeToSubform.clear(); addRecord.getParent().removeAll(); addRecord.removeMouseListener(addRecord.getMouseListeners()[0]); diff --git a/src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java b/src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java new file mode 100644 index 00000000..25cf4592 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java @@ -0,0 +1,90 @@ +package org.isatools.isacreator.gui.commentui; + +import org.isatools.isacreator.configuration.DataTypes; +import org.isatools.isacreator.configuration.FieldObject; +import org.isatools.isacreator.gui.DataEntryForm; +import org.isatools.isacreator.gui.StudyDataEntry; +import org.isatools.isacreator.gui.formelements.*; + +import javax.swing.*; +import java.util.List; + +public class SubFormAddCommentGUI extends AbstractAddCommentGUI { + + private T parent; + private FieldTypes fieldType; + + public SubFormAddCommentGUI(T parent, FieldTypes fieldType) { + super(); + this.parent = parent; + this.fieldType = fieldType; + } + + @Override + public void addFieldsToDisplay(final FieldObject fieldObject) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + + if (parent instanceof StudyDataEntry) { + + + List updatedFields = ((StudyDataEntry) parent).getSubFormForFieldType(fieldType).getSubFormFields(); + updatedFields.add(new SubFormField(fieldObject.getFieldName(), fieldObject.getDatatype() == DataTypes.STRING ? SubFormField.STRING : SubFormField.SINGLE_ONTOLOGY_SELECT)); + ((StudyDataEntry) parent).getContainerForFieldType(fieldType).removeAll(); + ((StudyDataEntry) parent).getContainerForFieldType(fieldType).revalidate(); + + int existingRecordSize; + String title = ((StudyDataEntry) parent).getSubFormForFieldType(fieldType).getTitle(); + + SubForm subform; + + switch (fieldType) { + case DESIGN: + existingRecordSize = parent.getStudy().getStudyDesigns().size(); + subform = new StudyDesignSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + case FACTOR: + existingRecordSize = parent.getStudy().getFactors().size(); + subform = new FactorSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + case PROTOCOL: + existingRecordSize = parent.getStudy().getProtocols().size(); + subform = new ProtocolSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + case CONTACT: + existingRecordSize = parent.getStudy().getContacts().size(); + subform = new ContactSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + + break; + case PUBLICATION: + existingRecordSize = parent.getStudy().getPublications().size(); + subform = new PublicationSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + default: + subform = null; + break; + } + + + if (subform != null) subform.createGUI(); + + ((StudyDataEntry) parent).setSubFormForFieldType(fieldType, subform); + + ((StudyDataEntry) parent).getContainerForFieldType(fieldType).add(subform); + ((StudyDataEntry) parent).getContainerForFieldType(fieldType).repaint(); + ((StudyDataEntry) parent).getContainerForFieldType(fieldType).revalidate(); + } + } + }); + } + + @Override + public boolean okToAddField(String fieldName) { + return true; + } +} diff --git a/src/main/java/org/isatools/isacreator/gui/commentui/TableAddCommentGUI.java b/src/main/java/org/isatools/isacreator/gui/commentui/TableAddCommentGUI.java deleted file mode 100644 index ba54fb92..00000000 --- a/src/main/java/org/isatools/isacreator/gui/commentui/TableAddCommentGUI.java +++ /dev/null @@ -1,82 +0,0 @@ -package org.isatools.isacreator.gui.commentui; - -import org.isatools.isacreator.configuration.DataTypes; -import org.isatools.isacreator.configuration.FieldObject; -import org.isatools.isacreator.gui.DataEntryForm; -import org.isatools.isacreator.gui.StudyDataEntry; -import org.isatools.isacreator.gui.formelements.FieldTypes; -import org.isatools.isacreator.gui.formelements.StudyDesignSubForm; -import org.isatools.isacreator.gui.formelements.SubForm; -import org.isatools.isacreator.gui.formelements.SubFormField; -import org.isatools.isacreator.io.importisa.investigationproperties.InvestigationFileSection; - -import javax.swing.*; -import java.util.List; - -public class TableAddCommentGUI extends AbstractAddCommentGUI { - - private T parent; - - public TableAddCommentGUI(T parent) { - super(); - this.parent = parent; - } - - @Override - public void addFieldsToDisplay(final FieldObject fieldObject) { - SwingUtilities.invokeLater(new Runnable() { - public void run() { - - if (parent instanceof StudyDataEntry) { - - - List updatedFields = ((StudyDataEntry) parent).getStudyDesignSubform().getSubFormFields(); - updatedFields.add(new SubFormField(fieldObject.getFieldName(), fieldObject.getDatatype() == DataTypes.STRING ? SubFormField.STRING : SubFormField.SINGLE_ONTOLOGY_SELECT)); - ((StudyDataEntry) parent).getStudyDesignContainer().removeAll(); - ((StudyDataEntry) parent).getStudyDesignContainer().revalidate(); - - int existingRecordSize; - String title = ""; - FieldTypes type = null; - - existingRecordSize = parent.getStudy().getStudyDesigns().size(); - title = InvestigationFileSection.STUDY_DESIGN_SECTION.toString(); - type = FieldTypes.DESIGN; - - // let's guestimate the size of the subform to avoid scrolling which is annoying. - - SubForm subform = new StudyDesignSubForm(title, type, - updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); - subform.createGUI(); - - ((StudyDataEntry) parent).setStudyDesignSubform(subform); - - ((StudyDataEntry) parent).getStudyDesignContainer().add(subform); - ((StudyDataEntry) parent).getStudyDesignContainer().repaint(); - ((StudyDataEntry) parent).getStudyDesignContainer().revalidate(); - } - } - }); - } - - /** - * List updatedFields = studyDesignSubform.getSubFormFields(); - * updatedFields.add(new SubFormField("Comment[Hi]", SubFormField.STRING)); - * studyDesignContainer.removeAll(); - * studyDesignContainer.revalidate(); - *

- * studyDesignSubform = new StudyDesignSubForm(InvestigationFileSection.STUDY_DESIGN_SECTION.toString(), FieldTypes.DESIGN, - * updatedFields, (study.getStudyDesigns().size() == 0) ? 2 - * : study.getStudyDesigns().size(), 300, 60, StudyDataEntry.this); - * studyDesignSubform.createGUI(); - *

- * studyDesignContainer.add(studyDesignSubform); - * studyDesignContainer.repaint(); - * studyDesignContainer.revalidate(); - */ - - @Override - public boolean okToAddField(String fieldName) { - return true; - } -} diff --git a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java index b5ad8ae2..10dd1077 100644 --- a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java +++ b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java @@ -140,6 +140,7 @@ public SubForm(String title, FieldTypes fieldType, List fields, Da this(title, fieldType, fields, dataEntryEnvironment, true); } + public SubForm(String title, FieldTypes fieldType, List fields, DataEntryEnvironment dataEntryEnvironment, boolean createBorder) { this.title = title; this.fieldType = fieldType; @@ -188,6 +189,14 @@ public void createGUI() { reformPreviousContent(); } + public FieldTypes getFieldType() { + return fieldType; + } + + public String getTitle() { + return title; + } + private void generateAliases() { if (aliasesToRealNames == null) { diff --git a/src/main/resources/images/gui/exitImage.png b/src/main/resources/images/gui/exitImage.png index c7ab81222be95106b50c30d22d4f1ca015c09f1b..dc9240cf02fd3e7ab77e2130d2883a550f9b3efb 100644 GIT binary patch delta 515 zcmV+e0{s2-2*Cu9NPhw2Nkl5Jp%CH=rk=Y-|OIz3q+! zY;2Sh&>OTYFybTh2-#V9PclnIn+iF0Y`#yjGE|Axug|~TBsK;B000000CHn5WM_Bp zr{{7QODjEIcIBFt_HujjW|I~rk}5eY0(A8tZ7RZQpBL=~EPtpfP(RnwUVUG*XY!-9fHl zjwnPS3Q>pxL?J3GQ3qGY1)_GN6j_TDg~b?p`p5WFWR-|&rY}t^Ylx_3bof1stVs%@ z_B{r*R>#E-a(~tt%ejYgy!?9lsIwR4hEw&&bM@&=UxW=r){3FmFeAE+41Q7^0Se z`q6D@-f!i^*w{F7;p;2VYZuzBZfpbq00000fc*FtU;xrtd6WlrDq#Qs002ovPDHLk FV1izr>&^fG delta 1083 zcmV-B1jPHn1oQ}yNPh$tNkl;*DVvOYwGP(+4BrYqCFR4xm_7EF|qBHK*OtZC;QXUUqm zO7D5p=MRT@_hCE!_J7XvzxUh=Kq8SyB+^uo7nX?>*2TrK7k?ESTIX9##;RI53#Xr z!hm9c@*1uE+4s#3)p$?L&lezip*IBj3)3gc2IX<-rIhI}RyR6~wr*u77_aex1U6Xd zd7*dIhV%No8-Gt6Mi~>VGCQERZ$Nt2^Y)9sbNp0F+UXQJP-&|-!inTPpqe=wdcSu;eQOy!YcH2RFEpUS=Z1(fi;Id8 z$Ci#-?jq>?+Kys=C_o+Dv>kS>OZn-dO3N{L^Qjh<)1`u178(hq=?6d)7A20KzAG1{ z_SMmaZhzgB0*Wuz+(oZP%%PlE(_uwHZPu(2xd>a!N8>2hmd}GDUyHD`d=#K~ zyXOlw=9VuNlxxd>`MwfrSa8I?SSt>SyJ!d!FMqYWtkfoh#{4o%@`e47RJ;#tJ)a>g zKnrQhN+5KOmO#1FE%PIY%-srSs;LD}cDntiwm@uG5y^GB^OE>11Ux#O`{|TW=-i0S+bK&fR>!KV@&Ch;zMqQ|p zO3$5II@)3VshuK9@LLaK!;Au0@XQDT^`|ItxxPX~iF8c~$|!+iUym>LnU|0J79}tR zRa6_Gu2F&qRV+~g-A?gHQ6ehHU?Wg&^nar5HLN;n6z<}Sy*?~cJU|44PhAlxS8;do za;$iDPt9_Z2?n3LDI!oKL<#OJXUMd(u@`&-}D6=8Q2SGMF5G_oJ81wAOItF#iF#Unu?`!xPb zvhDoWyBNM%x^PhF`CbOdL~VpbB9TZWrS(IA0RXu!gEzbN@c;k-002ovPDHLkV1n7r B`)2?E From 017b7fc93f62bd57a9dcd445cbc8286ad1313e56 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 19 Nov 2013 17:52:57 +0000 Subject: [PATCH 049/111] All working. Also filters fields in configuration (scidata.xml) that contains all the possible comments by the section a user attempts to enter a field from. --- .../isacreator/gui/DataEntryForm.java | 27 +++- .../gui/InvestigationDataEntry.java | 92 +++++++----- .../isacreator/gui/StudyDataEntry.java | 65 +------- .../gui/commentui/AbstractAddCommentGUI.java | 121 ++++++++------- .../gui/commentui/ContainerAddCommentGUI.java | 9 ++ .../gui/commentui/SubFormAddCommentGUI.java | 142 +++++++++++------- .../defaults/field_templates/scidata.xml | 4 +- 7 files changed, 247 insertions(+), 213 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java b/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java index 8a79dc9f..e720f2a0 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java @@ -49,6 +49,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.effects.components.RoundedJTextField; import org.isatools.isacreator.filechooser.FileChooserUI; +import org.isatools.isacreator.gui.formelements.FieldTypes; +import org.isatools.isacreator.gui.formelements.SubForm; import org.isatools.isacreator.gui.formelements.SubFormField; import org.isatools.isacreator.gui.listeners.propertychange.DateChangedCancelledEvent; import org.isatools.isacreator.gui.listeners.propertychange.DateChangedEvent; @@ -83,6 +85,9 @@ public class DataEntryForm extends JLayeredPane implements Serializable { public static final int SUBFORM_WIDTH = 300; private DataEntryEnvironment dataEntryEnvironment; + protected Map fieldTypeToFieldContainer; + protected Map fieldTypeToSubform; + // this will house the translation between Comment aliases e.g. Publication Journal [c] to Comment[Publication Journal] protected Map aliasesToRealNames; @@ -91,11 +96,14 @@ public class DataEntryForm extends JLayeredPane implements Serializable { protected OrderedMap fieldDefinitions; - public DataEntryForm(DataEntryEnvironment dataEntryEnvironment) { - this.dataEntryEnvironment = dataEntryEnvironment; + public DataEntryForm() { + this(null); } - public DataEntryForm() { + public DataEntryForm(DataEntryEnvironment dataEntryEnvironment) { + this.dataEntryEnvironment = dataEntryEnvironment; + fieldTypeToFieldContainer = new HashMap(); + fieldTypeToSubform = new HashMap(); } public void update() { @@ -135,6 +143,19 @@ public void setDataEntryEnvironment(DataEntryEnvironment dataEntryEnvironment) { this.dataEntryEnvironment = dataEntryEnvironment; } + public JPanel getContainerForFieldType(FieldTypes type) { + return fieldTypeToFieldContainer.get(type); + } + + public SubForm getSubFormForFieldType(FieldTypes type) { + return fieldTypeToSubform.get(type); + } + + public void setSubFormForFieldType(FieldTypes type, SubForm subform) { + fieldTypeToSubform.put(type, subform); + } + + /** * Method to be overridden by subclasses for creating all fields */ diff --git a/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java b/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java index cf6ec2a8..90f44d01 100755 --- a/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java +++ b/src/main/java/org/isatools/isacreator/gui/InvestigationDataEntry.java @@ -42,13 +42,12 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.common.button.ButtonType; import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.configuration.MappingObject; -import org.isatools.isacreator.gui.commentui.AbstractAddCommentGUI; import org.isatools.isacreator.gui.commentui.ContainerAddCommentGUI; +import org.isatools.isacreator.gui.commentui.SubFormAddCommentGUI; import org.isatools.isacreator.gui.formelements.*; import org.isatools.isacreator.gui.reference.DataEntryReferenceObject; import org.isatools.isacreator.io.exportisa.exportadaptors.ISASectionExportAdaptor; import org.isatools.isacreator.io.importisa.investigationproperties.InvestigationFileSection; -import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.managers.ConfigurationManager; import org.isatools.isacreator.model.*; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; @@ -77,8 +76,7 @@ public class InvestigationDataEntry extends DataEntryForm { private Investigation investigation; - private SubForm publicationsSubForm; - private SubForm contactsSubform; + private JPanel investigationDetailsPanel; @@ -95,7 +93,6 @@ public InvestigationDataEntry(Investigation investigation, DataEntryEnvironment } - private void createInvestigationSectionFields() { JPanel container = new JPanel(new BorderLayout()); container.setBackground(UIHelper.BG_COLOR); @@ -142,8 +139,10 @@ public void actionPerformed(ActionEvent actionEvent) { investigationFields.add(moreFieldsButtonContainer); investigationFields.add(Box.createVerticalStrut(20)); investigationFields.add(createInvestigationPublicationSubForm()); + investigationFields.add(getButtonForFieldAddition(FieldTypes.PUBLICATION)); investigationFields.add(Box.createVerticalStrut(20)); investigationFields.add(createInvestigationContactsSubForm()); + investigationFields.add(getButtonForFieldAddition(FieldTypes.CONTACT)); investigationFields.add(Box.createVerticalStrut(20)); investigationFields.add(Box.createGlue()); @@ -167,18 +166,42 @@ public void actionPerformed(ActionEvent actionEvent) { add(containerScroller); } + private JPanel getButtonForFieldAddition(final FieldTypes type) { + FlatButton addFieldButton = new FlatButton(ButtonType.GREEN, String.format("+ New field to %s descriptors", type.toString())); + addFieldButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + new SubFormAddCommentGUI(InvestigationDataEntry.this, type); + } + }); + } + }); + + JPanel addFieldButtonContainer = new JPanel(new BorderLayout()); + addFieldButtonContainer.add(addFieldButton, BorderLayout.EAST); + + return addFieldButtonContainer; + } + /** * Create the Contacts subform for the definition of contacts in the Study form. * * @return - a JPanel containing the Contacts subform. */ private JPanel createInvestigationContactsSubForm() { + + JPanel contactContainer = new JPanel(new BorderLayout()); + contactContainer.setBackground(UIHelper.BG_COLOR); + List contactFields = new ArrayList(); - Set ontologyFields = investigation.getReferenceObject().getOntologyTerms(InvestigationFileSection.INVESTIGATION_CONTACTS_SECTION); + Set fieldList = investigation.getContacts().size() > 0 ? investigation.getContacts().iterator().next().getFieldValues().keySet() : investigation.getReferenceObject().getFieldsForSection(InvestigationFileSection.INVESTIGATION_CONTACTS_SECTION); + + Set ontologyFields = investigation.getReferenceObject().getOntologyTerms(fieldList); Set fieldsToIgnore = investigation.getReferenceObject().getFieldsToIgnore(); - for (String contactField : investigation.getReferenceObject().getFieldsForSection(InvestigationFileSection.INVESTIGATION_CONTACTS_SECTION)) { + for (String contactField : fieldList) { if (!investigation.getReferenceObject().getFieldDefinition(contactField).isHidden()) { SubFormField generatedField = generateSubFormField(fieldsToIgnore, ontologyFields, investigation, contactField); @@ -190,24 +213,33 @@ private JPanel createInvestigationContactsSubForm() { int numColsToAdd = (investigation.getContacts().size() == 0) ? 4 : investigation.getContacts().size(); - contactsSubform = new ContactSubForm(InvestigationFileSection.INVESTIGATION_CONTACTS_SECTION.toString(), FieldTypes.CONTACT, + SubForm contactsSubform = new ContactSubForm(InvestigationFileSection.INVESTIGATION_CONTACTS_SECTION.toString(), FieldTypes.CONTACT, contactFields, numColsToAdd, 300, 195, this); contactsSubform.createGUI(); - return contactsSubform; + contactContainer.add(contactsSubform); + + fieldTypeToFieldContainer.put(FieldTypes.CONTACT, contactContainer); + fieldTypeToSubform.put(FieldTypes.CONTACT, contactsSubform); + + return contactContainer; } private JPanel createInvestigationPublicationSubForm() { + JPanel publicationContainer = new JPanel(new BorderLayout()); + publicationContainer.setBackground(UIHelper.BG_COLOR); + List publicationFields = new ArrayList(); - Set ontologyFields = investigation.getReferenceObject().getOntologyTerms(InvestigationFileSection.INVESTIGATION_PUBLICATIONS_SECTION); - Set fieldsToIgnore = investigation.getReferenceObject().getFieldsToIgnore(); - for (String publicationField : investigation.getReferenceObject().getFieldsForSection(InvestigationFileSection.INVESTIGATION_PUBLICATIONS_SECTION)) { + Set fieldList = investigation.getPublications().size() > 0 ? investigation.getPublications().iterator().next().getFieldValues().keySet() : investigation.getReferenceObject().getFieldsForSection(InvestigationFileSection.INVESTIGATION_PUBLICATIONS_SECTION); + + Set ontologyFields = investigation.getReferenceObject().getOntologyTerms(fieldList); + Set fieldsToIgnore = investigation.getReferenceObject().getFieldsToIgnore(); + for (String publicationField : fieldList) { if (!investigation.getReferenceObject().getFieldDefinition(publicationField).isHidden()) { SubFormField generatedField = generateSubFormField(fieldsToIgnore, ontologyFields, investigation, publicationField); - if (generatedField != null) { publicationFields.add(generatedField); } @@ -218,11 +250,16 @@ private JPanel createInvestigationPublicationSubForm() { : investigation.getPublications() .size(); - publicationsSubForm = new PublicationSubForm(InvestigationFileSection.INVESTIGATION_PUBLICATIONS_SECTION.toString(), + SubForm publicationsSubForm = new PublicationSubForm(InvestigationFileSection.INVESTIGATION_PUBLICATIONS_SECTION.toString(), FieldTypes.PUBLICATION, publicationFields, numColsToAdd, 300, 125, this); publicationsSubForm.createGUI(); - return publicationsSubForm; + publicationContainer.add(publicationsSubForm); + + fieldTypeToFieldContainer.put(FieldTypes.PUBLICATION, publicationContainer); + fieldTypeToSubform.put(FieldTypes.PUBLICATION, publicationsSubForm); + + return publicationContainer; } public String toString() { @@ -238,11 +275,11 @@ public String toString() { } private void populateEmptySections() { - if(getInvestigation().getPublications().size() == 0) { + if (getInvestigation().getPublications().size() == 0) { getInvestigation().addPublication(new InvestigationPublication()); } - if(getInvestigation().getContacts().size() == 0) { + if (getInvestigation().getContacts().size() == 0) { getInvestigation().addContact(new InvestigationContact()); } } @@ -274,28 +311,11 @@ public void update() { investigation.getFieldValues().put(tmpFieldName, ((JComboBox) fieldDefinitions.get(fieldName)).getSelectedItem().toString()); } } - publicationsSubForm.update(); - contactsSubform.update(); - } - - public void removeReferences() { - - publicationsSubForm.cleanupReferences(); - publicationsSubForm = null; - - contactsSubform.cleanupReferences(); - contactsSubform = null; - - getDataEntryEnvironment().removeAll(); - setDataEntryEnvironment(null); - for (String s : investigation.getStudies().keySet()) { - Study tmpStudy = investigation.getStudies().get(s); - ApplicationManager.getUserInterfaceForISASection(tmpStudy).removeAll(); + for (SubForm form : fieldTypeToSubform.values()) { + form.update(); } - ApplicationManager.getUserInterfaceForISASection(investigation).removeAll(); - investigation = null; } public JPanel getInvestigationDetailsPanel() { diff --git a/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java b/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java index 239caaf1..90096722 100755 --- a/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java +++ b/src/main/java/org/isatools/isacreator/gui/StudyDataEntry.java @@ -94,8 +94,6 @@ public class StudyDataEntry extends DataEntryForm { private JPanel assayContainer; private AssaySelectionDialog assaySelectionUI; - private Map fieldTypeToFieldContainer; - private Map fieldTypeToSubform; private RemoveAssayListener removeAssayListener = new RemoveAssayListener(); @@ -120,8 +118,7 @@ public StudyDataEntry(DataEntryEnvironment dataEntryEnvironment, Study study) { } public void createGUI() { - fieldTypeToFieldContainer = new HashMap(); - fieldTypeToSubform = new HashMap(); + Map> measToAllowedTechnologies = ConfigurationManager.getAllowedTechnologiesPerEndpoint(); @@ -220,7 +217,7 @@ public void actionPerformed(ActionEvent actionEvent) { } private JPanel getButtonForFieldAddition(final FieldTypes type) { - FlatButton addStudyDesignFieldButton = new FlatButton(ButtonType.GREEN, String.format("+ New Field To Study %s Descriptors", type.toString())); + FlatButton addStudyDesignFieldButton = new FlatButton(ButtonType.GREEN, String.format("+ New field to %s descriptors", type.toString())); addStudyDesignFieldButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { SwingUtilities.invokeLater(new Runnable() { @@ -237,17 +234,6 @@ public void run() { return addStudyDesignFieldButtonContainer; } - public JPanel getContainerForFieldType(FieldTypes type) { - return fieldTypeToFieldContainer.get(type); - } - - public SubForm getSubFormForFieldType(FieldTypes type) { - return fieldTypeToSubform.get(type); - } - - public void setSubFormForFieldType(FieldTypes type, SubForm subform) { - fieldTypeToSubform.put(type, subform); - } /** * Create the Assay definition section. @@ -740,53 +726,6 @@ public void reformFactors() { fieldTypeToSubform.get(FieldTypes.FACTOR).reformItems(); } - public void removeReferences() { - setDataEntryEnvironment(null); - - for (SubForm subform : fieldTypeToSubform.values()) { - subform.cleanupReferences(); - } - - fieldTypeToSubform.clear(); - - addRecord.getParent().removeAll(); - addRecord.removeMouseListener(addRecord.getMouseListeners()[0]); - addRecord = null; - - assayContainer.getParent().removeAll(); - assayContainer.removeAll(); - assayContainer = null; - - assaySelectionUI.removePropertyChangeListener("assaysChosen", new WeakPropertyChangeListener(addAssayListener)); - assaySelectionUI.removeAll(); - assaySelectionUI = null; - - addAssayListener = null; - viewAssayListener = null; - removeAssayListener = null; - - - ApplicationManager.getIsaSectionToDataEntryForm().get(study.getStudySample()).setDataEntryEnvironment(null); - - for (String assayReference : study.getAssays().keySet()) { - Assay assay = study.getAssays().get(assayReference); - ApplicationManager.removeISASectionAndDataEntryForm(assay); - } - - study.getAssays().clear(); - - - setDataEntryEnvironment(null); - study.setAssays(null); - study.setStudySamples(null); - study = null; - - fieldContainer.removeAll(); - ApplicationManager.clearUserInterfaceAssignments(); - - removeAll(); - } - class RemoveAssayListener implements PropertyChangeListener { public void propertyChange(PropertyChangeEvent propertyChangeEvent) { if (propertyChangeEvent.getNewValue() instanceof AssayInformationPanel) { diff --git a/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java b/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java index 60c3125c..9ec15bb3 100644 --- a/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java @@ -27,19 +27,14 @@ import java.util.Map; import java.util.List; -/** - * Created with IntelliJ IDEA. - * User: eamonnmaguire - * Date: 30/10/2013 - * Time: 09:07 - * To change this template use File | Settings | File Templates. - */ public abstract class AbstractAddCommentGUI extends JFrame { public static final String CUSTOM = "custom"; + public static final int WINDOW_WIDTH = 600; + public static final int WINDOW_HEIGHT = 500; private JPanel swappableContainer; - private static Map templateToFields; + protected static Map templateToFields; private List labels; private List selectedFieldComponents; private Timer timer; @@ -64,8 +59,9 @@ public AbstractAddCommentGUI() { private void createGUI() { setUndecorated(true); setLayout(new BorderLayout()); + setAlwaysOnTop(true); setBackground(new Color(248, 248, 249)); - setPreferredSize(new Dimension(600, 500)); + setPreferredSize(new Dimension(WINDOW_WIDTH, WINDOW_HEIGHT)); ((JComponent) getContentPane()).setBorder(UIHelper.EMPTY_BORDER); addTitlePanel(); addSidePanel(); @@ -198,30 +194,39 @@ private JPanel getPredefinedCommentsInterface(final String templateName) { panel.add(UIHelper.createLabel(String.format("Add %s fields to Interface", templateName)), BorderLayout.NORTH); Box fields = Box.createVerticalBox(); + int addedFieldsCount = 0; for (String fieldName : templateToFields.get(templateName).getFieldLookup().keySet()) { - final JPanel field = new JPanel(new GridLayout(1, 1)); - field.setBackground(UIHelper.BG_COLOR); + if (isFieldAllowedInSection(templateName, fieldName)) { + final JPanel field = new JPanel(new GridLayout(1, 1)); + field.setBackground(UIHelper.BG_COLOR); - final JCheckBox checkBox = new JCheckBox(fieldName, false); - UIHelper.renderComponent(checkBox, UIHelper.VER_10_PLAIN, UIHelper.GREY_COLOR, false); + final JCheckBox checkBox = new JCheckBox(fieldName, false); + UIHelper.renderComponent(checkBox, UIHelper.VER_10_PLAIN, UIHelper.GREY_COLOR, false); - checkBox.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent actionEvent) { - JCheckBox source = (JCheckBox) actionEvent.getSource(); - - if (source.isSelected()) { - selectedFieldComponents.add(source); - } else { - if (selectedFieldComponents.contains(source)) { - selectedFieldComponents.remove(source); + checkBox.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { + JCheckBox source = (JCheckBox) actionEvent.getSource(); + + if (source.isSelected()) { + selectedFieldComponents.add(source); + } else { + if (selectedFieldComponents.contains(source)) { + selectedFieldComponents.remove(source); + } } } - } - }); - if (!okToAddField(fieldName)) checkBox.setEnabled(false); - field.add(checkBox); + }); + if (!okToAddField(fieldName)) checkBox.setEnabled(false); + field.add(checkBox); + + fields.add(field); + + addedFieldsCount++; + } + } - fields.add(field); + if (addedFieldsCount == 0) { + fields.add(UIHelper.createLabel("No available predefined fields for the selected section.", UIHelper.VER_10_BOLD, UIHelper.LIGHT_GREY_COLOR)); } JPanel fieldContainer = new JPanel(new BorderLayout()); @@ -235,39 +240,40 @@ public void actionPerformed(ActionEvent actionEvent) { panel.add(scrollPane, BorderLayout.CENTER); - final JPanel buttonContainer = new JPanel(new BorderLayout()); - buttonContainer.setOpaque(false); + // only add a button if we have fields to add to it. + if (addedFieldsCount > 0) { + final JPanel buttonContainer = new JPanel(new BorderLayout()); + buttonContainer.setOpaque(false); - final JLabel fieldAddStatus = UIHelper.createLabel("", UIHelper.VER_10_BOLD, UIHelper.GREY_COLOR); - buttonContainer.add(fieldAddStatus, BorderLayout.WEST); + final JLabel fieldAddStatus = UIHelper.createLabel("", UIHelper.VER_10_BOLD, UIHelper.GREY_COLOR); + buttonContainer.add(fieldAddStatus, BorderLayout.WEST); - FlatButton button = new FlatButton(ButtonType.GREEN, "Add Field(s)"); - button.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent actionEvent) { + FlatButton button = new FlatButton(ButtonType.GREEN, "Add Field(s)"); + button.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { - for (JCheckBox fieldToAdd : selectedFieldComponents) { - if (fieldToAdd.isEnabled()) { - addFieldsToDisplay(templateToFields.get(templateName).getFieldByName(fieldToAdd.getText())); - fieldToAdd.setEnabled(false); + for (JCheckBox fieldToAdd : selectedFieldComponents) { + if (fieldToAdd.isEnabled()) { + addFieldsToDisplay(templateToFields.get(templateName).getFieldByName(fieldToAdd.getText())); + fieldToAdd.setEnabled(false); + } } - } - fieldAddStatus.setText("Field added successfully!"); - - timer = new Timer(2000, new ActionListener() { - public void actionPerformed(ActionEvent actionEvent) { - fieldAddStatus.setText(""); - timer.stop(); - - } - }); - timer.start(); - } - }); + fieldAddStatus.setText("Field added successfully!"); + timer = new Timer(2000, new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { + fieldAddStatus.setText(""); + timer.stop(); - buttonContainer.add(button, BorderLayout.EAST); - panel.add(buttonContainer, BorderLayout.SOUTH); + } + }); + timer.start(); + } + }); + buttonContainer.add(button, BorderLayout.EAST); + panel.add(buttonContainer, BorderLayout.SOUTH); + } return panel; } @@ -307,12 +313,13 @@ private JPanel getAddCustomPanel() { button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { - if (!fieldName.getText().isEmpty()) { - addFieldsToDisplay(new FieldObject("Comment[" + fieldName.getText() + "]", "", DataTypes.resolveDataType(fieldType.getSelectedItem().toString()), "", false, false, false)); + if (!fieldName.getText().isEmpty() && okToAddField(fieldName.getText())) { + addFieldsToDisplay(new FieldObject("Comment[" + fieldName.getText() + "]", "", + DataTypes.resolveDataType(fieldType.getSelectedItem().toString()), "", false, false, false)); fieldAddStatus.setText("Field added successfully!"); } else { fieldAddStatus.setForeground(UIHelper.RED_COLOR); - fieldAddStatus.setText("Field added successfully!"); + fieldAddStatus.setText("Field not added. Already exists!"); } timer = new Timer(3000, new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { @@ -337,4 +344,6 @@ public void actionPerformed(ActionEvent actionEvent) { public abstract boolean okToAddField(String fieldName); + public abstract boolean isFieldAllowedInSection(String template, String fieldName); + } diff --git a/src/main/java/org/isatools/isacreator/gui/commentui/ContainerAddCommentGUI.java b/src/main/java/org/isatools/isacreator/gui/commentui/ContainerAddCommentGUI.java index 505595f4..1c5264e9 100644 --- a/src/main/java/org/isatools/isacreator/gui/commentui/ContainerAddCommentGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/commentui/ContainerAddCommentGUI.java @@ -65,4 +65,13 @@ public boolean okToAddField(String fieldName) { } } + @Override + public boolean isFieldAllowedInSection(String template, String fieldName) { + if (entryEnvironment instanceof InvestigationDataEntry) { + return templateToFields.get(template).getFieldByName(fieldName).getSection().equals(InvestigationFileSection.INVESTIGATION_SECTION.toString()); + } else { + return templateToFields.get(template).getFieldByName(fieldName).getSection().equals(InvestigationFileSection.STUDY_SECTION.toString()); + } + } + } diff --git a/src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java b/src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java index 25cf4592..47319324 100644 --- a/src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/commentui/SubFormAddCommentGUI.java @@ -3,8 +3,10 @@ import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; import org.isatools.isacreator.gui.DataEntryForm; +import org.isatools.isacreator.gui.InvestigationDataEntry; import org.isatools.isacreator.gui.StudyDataEntry; import org.isatools.isacreator.gui.formelements.*; +import org.isatools.isacreator.io.importisa.investigationproperties.InvestigationFileSection; import javax.swing.*; import java.util.List; @@ -25,66 +27,100 @@ public void addFieldsToDisplay(final FieldObject fieldObject) { SwingUtilities.invokeLater(new Runnable() { public void run() { - if (parent instanceof StudyDataEntry) { - - - List updatedFields = ((StudyDataEntry) parent).getSubFormForFieldType(fieldType).getSubFormFields(); - updatedFields.add(new SubFormField(fieldObject.getFieldName(), fieldObject.getDatatype() == DataTypes.STRING ? SubFormField.STRING : SubFormField.SINGLE_ONTOLOGY_SELECT)); - ((StudyDataEntry) parent).getContainerForFieldType(fieldType).removeAll(); - ((StudyDataEntry) parent).getContainerForFieldType(fieldType).revalidate(); - - int existingRecordSize; - String title = ((StudyDataEntry) parent).getSubFormForFieldType(fieldType).getTitle(); - - SubForm subform; - - switch (fieldType) { - case DESIGN: - existingRecordSize = parent.getStudy().getStudyDesigns().size(); - subform = new StudyDesignSubForm(title, fieldType, - updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); - break; - case FACTOR: - existingRecordSize = parent.getStudy().getFactors().size(); - subform = new FactorSubForm(title, fieldType, - updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); - break; - case PROTOCOL: - existingRecordSize = parent.getStudy().getProtocols().size(); - subform = new ProtocolSubForm(title, fieldType, - updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); - break; - case CONTACT: - existingRecordSize = parent.getStudy().getContacts().size(); - subform = new ContactSubForm(title, fieldType, - updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); - - break; - case PUBLICATION: - existingRecordSize = parent.getStudy().getPublications().size(); - subform = new PublicationSubForm(title, fieldType, - updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); - break; - default: - subform = null; - break; - } - - - if (subform != null) subform.createGUI(); - - ((StudyDataEntry) parent).setSubFormForFieldType(fieldType, subform); - - ((StudyDataEntry) parent).getContainerForFieldType(fieldType).add(subform); - ((StudyDataEntry) parent).getContainerForFieldType(fieldType).repaint(); - ((StudyDataEntry) parent).getContainerForFieldType(fieldType).revalidate(); + List updatedFields = parent.getSubFormForFieldType(fieldType).getSubFormFields(); + updatedFields.add(new SubFormField(fieldObject.getFieldName(), fieldObject.getDatatype() == DataTypes.STRING ? SubFormField.STRING : SubFormField.SINGLE_ONTOLOGY_SELECT)); + parent.getContainerForFieldType(fieldType).removeAll(); + parent.getContainerForFieldType(fieldType).revalidate(); + + int existingRecordSize; + String title = parent.getSubFormForFieldType(fieldType).getTitle(); + + SubForm subform; + + switch (fieldType) { + case DESIGN: + existingRecordSize = parent.getStudy().getStudyDesigns().size(); + subform = new StudyDesignSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, + DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + case FACTOR: + existingRecordSize = parent.getStudy().getFactors().size(); + subform = new FactorSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, + DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + case PROTOCOL: + existingRecordSize = parent.getStudy().getProtocols().size(); + subform = new ProtocolSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, + DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + case CONTACT: + + existingRecordSize = parent instanceof StudyDataEntry ? parent.getStudy().getContacts().size() : parent.getInvestigation().getContacts().size(); + subform = new ContactSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, + DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + + break; + case PUBLICATION: + + existingRecordSize = parent instanceof StudyDataEntry ? parent.getStudy().getPublications().size() : parent.getInvestigation().getPublications().size(); + subform = new PublicationSubForm(title, fieldType, + updatedFields, (existingRecordSize == 0) ? 2 : existingRecordSize, + DataEntryForm.SUBFORM_WIDTH, parent.estimateSubformHeight(updatedFields.size()), parent); + break; + default: + subform = null; + break; } + + + if (subform != null) subform.createGUI(); + + parent.setSubFormForFieldType(fieldType, subform); + + parent.getContainerForFieldType(fieldType).add(subform); + parent.getContainerForFieldType(fieldType).repaint(); + parent.getContainerForFieldType(fieldType).revalidate(); + } }); } @Override public boolean okToAddField(String fieldName) { + for (SubFormField field : parent.getSubFormForFieldType(fieldType).getSubFormFields()) { + if (field.getFieldName().equals(fieldName)) { + return false; + } + } return true; } + + @Override + public boolean isFieldAllowedInSection(String template, String fieldName) { + return templateToFields.get(template).getFieldByName(fieldName).getSection().equals(getInvestigationFileSectionFromFieldType(fieldType).toString()); + } + + private InvestigationFileSection getInvestigationFileSectionFromFieldType(FieldTypes type) { + switch (type) { + case DESIGN: + return InvestigationFileSection.STUDY_DESIGN_SECTION; + case FACTOR: + return InvestigationFileSection.STUDY_FACTORS; + case PROTOCOL: + return InvestigationFileSection.STUDY_PROTOCOLS; + case CONTACT: + return parent instanceof StudyDataEntry ? InvestigationFileSection.STUDY_CONTACTS : InvestigationFileSection.INVESTIGATION_CONTACTS_SECTION; + case PUBLICATION: + return parent instanceof StudyDataEntry ? InvestigationFileSection.STUDY_PUBLICATIONS : InvestigationFileSection.INVESTIGATION_PUBLICATIONS_SECTION; + default: + return InvestigationFileSection.INVESTIGATION_SECTION; + + } + } + + } diff --git a/src/main/resources/defaults/field_templates/scidata.xml b/src/main/resources/defaults/field_templates/scidata.xml index 51739277..cf71d869 100644 --- a/src/main/resources/defaults/field_templates/scidata.xml +++ b/src/main/resources/defaults/field_templates/scidata.xml @@ -20,7 +20,7 @@ + section="STUDY"> @@ -28,7 +28,7 @@ + section="STUDY DESIGN DESCRIPTORS"> From f820656e4226e9c94be35837bdd198cc3082aace Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 19 Nov 2013 18:13:09 +0000 Subject: [PATCH 050/111] Some UI tweaks. --- src/main/java/org/isatools/isacreator/common/UIHelper.java | 6 +++--- .../org/isatools/isacreator/common/button/ButtonType.java | 2 +- .../org/isatools/isacreator/common/button/FlatButton.java | 5 +++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/common/UIHelper.java b/src/main/java/org/isatools/isacreator/common/UIHelper.java index 3ed65af1..6b202687 100644 --- a/src/main/java/org/isatools/isacreator/common/UIHelper.java +++ b/src/main/java/org/isatools/isacreator/common/UIHelper.java @@ -93,9 +93,9 @@ public class UIHelper { public static final Border STD_ETCHED_BORDER = new LineBorder(UIHelper.DARK_GREEN_COLOR, 1, true); public static final Border EMPTY_BORDER = new EmptyBorder(3, 3, 3, 3); - public static final RoundedBorder GREEN_ROUNDED_BORDER = new RoundedBorder(UIHelper.LIGHT_GREEN_COLOR, 6); - public static final RoundedBorder GREY_ROUNDED_BORDER = new RoundedBorder(UIHelper.GREY_COLOR, 6); - public static final RoundedBorder DARK_GREEN_ROUNDED_BORDER = new RoundedBorder(UIHelper.DARK_GREEN_COLOR, 6); + public static final RoundedBorder GREEN_ROUNDED_BORDER = new RoundedBorder(UIHelper.LIGHT_GREEN_COLOR, 2); + public static final RoundedBorder GREY_ROUNDED_BORDER = new RoundedBorder(UIHelper.GREY_COLOR, 2); + public static final RoundedBorder DARK_GREEN_ROUNDED_BORDER = new RoundedBorder(UIHelper.DARK_GREEN_COLOR, 2); public static final Color VERY_LIGHT_GREY_COLOR = new Color(250, 252, 250); diff --git a/src/main/java/org/isatools/isacreator/common/button/ButtonType.java b/src/main/java/org/isatools/isacreator/common/button/ButtonType.java index adc5b680..3aa123bf 100644 --- a/src/main/java/org/isatools/isacreator/common/button/ButtonType.java +++ b/src/main/java/org/isatools/isacreator/common/button/ButtonType.java @@ -11,7 +11,7 @@ public enum ButtonType { BLUE(UIHelper.PETER_RIVER, UIHelper.BELIZE_HOLE), GREEN(UIHelper.LIGHT_GREEN_COLOR, UIHelper.DARK_GREEN_COLOR), RED(UIHelper.POMEGRANATE, UIHelper.ALIZARIN), - GREY(new Color(236,240,241), new Color(185,195,199)), + GREY(new Color(236,240,241), new Color(230,230,230)), ORANGE(UIHelper.CARROT, UIHelper.PUMPKIN); private Color defaultColor; diff --git a/src/main/java/org/isatools/isacreator/common/button/FlatButton.java b/src/main/java/org/isatools/isacreator/common/button/FlatButton.java index e28314fe..69f9970f 100644 --- a/src/main/java/org/isatools/isacreator/common/button/FlatButton.java +++ b/src/main/java/org/isatools/isacreator/common/button/FlatButton.java @@ -33,6 +33,9 @@ public FlatButton(ButtonType type, String text, Color fontColor, Font font) { super(text); this.type = type; this.fontColor = fontColor; + if(type == ButtonType.GREY && fontColor == Color.white) { + this.fontColor = UIHelper.DARK_GREEN_COLOR; + } this.font = font; setForeground(Color.WHITE); addMouseListener(this); @@ -86,6 +89,8 @@ public static void main(String[] args) { container.add(new FlatButton(ButtonType.RED, "Hi Lauren!")); container.add(new FlatButton(ButtonType.BLUE, "Hi Annapaola!")); container.add(new FlatButton(ButtonType.ORANGE, "Hi Paul!")); + container.add(new FlatButton(ButtonType.GREY, "Hi Eamonn!")); + container.add(new FlatButton(ButtonType.GREEN, "+")); testFrame.add(container); From 84a1f017c6537bc93817f3c32f086e3abcf45937 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 19 Nov 2013 22:21:11 +0000 Subject: [PATCH 051/111] Now checks to ensure inferred ontology type matches that from the configuration before deciding what behaviour to assign. Closes #248 --- .../java/org/isatools/isacreator/gui/DataEntryForm.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java b/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java index e720f2a0..291bbb7c 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryForm.java @@ -455,7 +455,12 @@ private SubFormField createField(Set fieldsToIgnore, Set ontolog int fieldType = SubFormField.STRING; - if (ontologyFields.contains(fieldName)) { + boolean matchingOntologyDataType = true; + if(fieldDescriptor != null) { + matchingOntologyDataType = fieldDescriptor.getDatatype() == DataTypes.ONTOLOGY_TERM; + } + + if (ontologyFields.contains(fieldName) && matchingOntologyDataType) { fieldType = SubFormField.SINGLE_ONTOLOGY_SELECT; if (fieldDescriptor != null) { From ab4a62944a26a42f7396218d2ac4f092044e1ab1 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Wed, 20 Nov 2013 11:17:53 +0000 Subject: [PATCH 052/111] Moved field templates directory outside of JAR. Now exists in ProgramData directory. --- .../field_templates/scidata.xml | 0 .../gui/commentui/AbstractAddCommentGUI.java | 19 ++++++++++++++----- 2 files changed, 14 insertions(+), 5 deletions(-) rename {src/main/resources/defaults => ProgramData}/field_templates/scidata.xml (100%) diff --git a/src/main/resources/defaults/field_templates/scidata.xml b/ProgramData/field_templates/scidata.xml similarity index 100% rename from src/main/resources/defaults/field_templates/scidata.xml rename to ProgramData/field_templates/scidata.xml diff --git a/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java b/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java index 9ec15bb3..3f4b8329 100644 --- a/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java @@ -2,6 +2,7 @@ import com.explodingpixels.macwidgets.IAppWidgetFactory; import org.apache.commons.collections15.OrderedMap; +import org.apache.log4j.Logger; import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.common.button.ButtonType; @@ -27,6 +28,7 @@ import java.util.Map; import java.util.List; + public abstract class AbstractAddCommentGUI extends JFrame { public static final String CUSTOM = "custom"; @@ -39,15 +41,22 @@ public abstract class AbstractAddCommentGUI extends JFrame { private List selectedFieldComponents; private Timer timer; + private static Logger log = Logger.getLogger(AbstractAddCommentGUI.class.getName()); + static { templateToFields = new HashMap(); - File fieldTemplateDirectory = new File(AbstractAddCommentGUI.class.getResource("/defaults/field_templates/").getPath()); - ConfigXMLParser parser = new ConfigXMLParser(fieldTemplateDirectory.getAbsolutePath()); - parser.loadConfiguration(); - for (TableReferenceObject tro : parser.getTables()) { - templateToFields.put(tro.getTableName(), tro); + File fieldTemplateDirectory = new File("ProgramData/field_templates/"); + if (fieldTemplateDirectory.exists()) { + ConfigXMLParser parser = new ConfigXMLParser(fieldTemplateDirectory.getAbsolutePath()); + parser.loadConfiguration(); + + for (TableReferenceObject tro : parser.getTables()) { + templateToFields.put(tro.getTableName(), tro); + } + } else { + log.info("No field_templates directory in Program data directory, so ISAcreator hasn't loaded any field templates."); } } From 0663c3f63e4a53e7289c19e97c026f78ffb8530c Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Wed, 20 Nov 2013 12:09:44 +0000 Subject: [PATCH 053/111] Fixed all little UI things for telling people if they can/cannot add fields :) --- .../gui/commentui/AbstractAddCommentGUI.java | 52 ++++++++++++++----- 1 file changed, 39 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java b/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java index 3f4b8329..f47a8056 100644 --- a/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/commentui/AbstractAddCommentGUI.java @@ -261,18 +261,35 @@ public void actionPerformed(ActionEvent actionEvent) { button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { - for (JCheckBox fieldToAdd : selectedFieldComponents) { - if (fieldToAdd.isEnabled()) { - addFieldsToDisplay(templateToFields.get(templateName).getFieldByName(fieldToAdd.getText())); - fieldToAdd.setEnabled(false); + boolean errors = false; + int error_count = 0; + + if (selectedFieldComponents.size() > 0) { + + for (JCheckBox fieldToAdd : selectedFieldComponents) { + if (fieldToAdd.isEnabled() && okToAddField(fieldToAdd.getText())) { + addFieldsToDisplay(templateToFields.get(templateName).getFieldByName(fieldToAdd.getText())); + fieldToAdd.setSelected(false); + fieldToAdd.setEnabled(false); + + } else { + errors = true; + error_count++; + } } - } - fieldAddStatus.setText("Field added successfully!"); + selectedFieldComponents.clear(); - timer = new Timer(2000, new ActionListener() { + fieldAddStatus.setText(errors ? String.format("%d fields already exist...", error_count) : "Field added successfully!"); + fieldAddStatus.setForeground(errors ? UIHelper.RED_COLOR : UIHelper.GREY_COLOR); + } else { + fieldAddStatus.setText("No fields have been selected!"); + } + + timer = new Timer(3000, new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { fieldAddStatus.setText(""); + fieldAddStatus.setForeground(UIHelper.GREY_COLOR); timer.stop(); } @@ -321,14 +338,19 @@ private JPanel getAddCustomPanel() { FlatButton button = new FlatButton(ButtonType.GREEN, "Add Field"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { - - if (!fieldName.getText().isEmpty() && okToAddField(fieldName.getText())) { - addFieldsToDisplay(new FieldObject("Comment[" + fieldName.getText() + "]", "", - DataTypes.resolveDataType(fieldType.getSelectedItem().toString()), "", false, false, false)); - fieldAddStatus.setText("Field added successfully!"); + if (!fieldName.getText().isEmpty()) { + String fieldNameAsComment = transformFieldNameToComment(fieldName.getText()); + if (okToAddField(fieldNameAsComment)) { + addFieldsToDisplay(new FieldObject(fieldNameAsComment, "", + DataTypes.resolveDataType(fieldType.getSelectedItem().toString()), "", false, false, false)); + fieldAddStatus.setText("Field added successfully!"); + } else { + fieldAddStatus.setForeground(UIHelper.RED_COLOR); + fieldAddStatus.setText("Field not added. Already exists!"); + } } else { fieldAddStatus.setForeground(UIHelper.RED_COLOR); - fieldAddStatus.setText("Field not added. Already exists!"); + fieldAddStatus.setText("Please enter a value!"); } timer = new Timer(3000, new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { @@ -349,6 +371,10 @@ public void actionPerformed(ActionEvent actionEvent) { return panel; } + private String transformFieldNameToComment(String fieldName) { + return "Comment [" + fieldName + "]"; + } + public abstract void addFieldsToDisplay(FieldObject fieldObject); public abstract boolean okToAddField(String fieldName); From 9e292867a37e5576a10d18b799b56c20daf3fb9e Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 17 Dec 2013 18:27:31 +0000 Subject: [PATCH 054/111] Started creation of BioPortal 4 client. Ontology search and ontology metadata queries are almost there. Then need to create the traversal queries. --- pom.xml | 10 +- .../ontologymanager/BioPortal4Client.java | 123 +++++++++++++ .../ontologymanager/OntologyManager.java | 6 +- .../bioportal/io/AcceptedOntologies.java | 19 ++ .../BioPortalQueryEndpoint.java | 172 ++++++++++++++++++ .../io/importisa/ISAtabFilesImporterTest.java | 44 +++-- .../ontologymanager/BioPortalClient4Test.java | 60 ++++++ 7 files changed, 408 insertions(+), 26 deletions(-) create mode 100644 src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java create mode 100644 src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java create mode 100644 src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java diff --git a/pom.xml b/pom.xml index 92687295..7927f830 100644 --- a/pom.xml +++ b/pom.xml @@ -42,7 +42,7 @@ oerc - http://frog.oerc.ox.ac.uk:8080/nexus-2.1.2/content/repositories/releases/ + http://frog.oerc.ox.ac.uk:8080/nexus-2.1.2/content/groups/oerc @@ -415,7 +415,7 @@ org.isatools import_layer - 1.6.2 + 1.6.3 uk.ac.ebi @@ -535,6 +535,12 @@ + + org.glassfish + javax.json + 1.0 + + diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java new file mode 100644 index 00000000..c0bd77f6 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -0,0 +1,123 @@ +package org.isatools.isacreator.ontologymanager; + +import org.apache.log4j.Logger; +import org.isatools.isacreator.configuration.Ontology; +import org.isatools.isacreator.configuration.RecommendedOntology; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntology; +import org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers.BioPortalQueryEndpoint; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; + +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; + +/** + * Created by eamonnmaguire on 17/12/2013. + */ +public class BioPortal4Client implements OntologyService { + + private static final Logger log = Logger.getLogger(BioPortal4Client.class); + + private BioPortalQueryEndpoint handler; + + public static final String REST_URL = "http://data.bioontology.org/"; + + public BioPortal4Client() { + this.handler = new BioPortalQueryEndpoint(); + } + + public Map getOntologyNames() { + return null; + } + + public Map getTermMetadata(String termId, String ontology) { + return null; + } + + public Map> getTermsByPartialNameFromSource(String term, String source, boolean reverseOrder) { + + System.out.println("Searching for source: " + source); + + term = correctTermForHTTPTransport(term); + + + if(source.equals("all")) { + source = AcceptedOntologies.getAllowedOntologyAcronyms(new HashSet()); + } + Map> searchResult = handler.getSearchResults(term, source, null); + + log.info("found " + (searchResult == null ? "0" : searchResult.size()) + " ontology terms"); + + return searchResult == null ? new HashMap>() : searchResult; + } + + public Map> getTermsByPartialNameFromSource(String term, List recommendedOntology) { + term = correctTermForHTTPTransport(term); + + // need to accommodate more complicated search strings in the case where the recommended source contains the branch + // to search under as well! + Map> result = new HashMap>(); + + // need to do a loop over all branches and do a single query on those recommended ontologies only defined + // by the source, not the branch. + for (RecommendedOntology ro : recommendedOntology) { + + if (ro.getOntology() != null) { + + String subtree = null; + if (ro.getBranchToSearchUnder() != null && !ro.getBranchToSearchUnder().getBranchIdentifier().equals("")) { + String branch = ro.getBranchToSearchUnder().getBranchIdentifier(); + subtree = branch; + + } + + Map> searchResult = handler.getSearchResults(term, ro.getOntology().getOntologyID(), subtree); + + if (searchResult != null) { + result.putAll(searchResult); + } + } + } + + + return result; + } + + public Map getOntologyVersions() { + return null; + } + + public Map getOntologyRoots(String ontology) { + return null; + } + + public Map getTermParent(String termAccession, String ontology) { + return null; + } + + public Map getTermChildren(String termAccession, String ontology) { + return null; + } + + public Map getAllTermParents(String termAccession, String ontology) { + return null; + } + + public String getOntologyURL() { + return null; + } + + public List getAllOntologies() { + handler.getAllOntologies(); + return null; + } + + + + + private String correctTermForHTTPTransport(String term) { + return term.replaceAll("[\\s]+", "%20"); + } +} diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index 9a34b416..b2c081a9 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -146,11 +146,9 @@ private static String getValidKey() { usedOntologySources.put("investigation", new ArrayList()); return "investigation"; } else { - for (String key : usedOntologySources.keySet()) { - return key; - } + if(usedOntologySources != null && usedOntologySources.size() > 0) + return usedOntologySources.keySet().iterator().next(); } - return "investigation"; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java index df0efcaf..66e4da63 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java @@ -38,6 +38,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.ontologymanager.bioportal.io; +import org.apache.commons.lang.StringUtils; + import java.util.List; import java.util.Set; @@ -87,6 +89,23 @@ public static String getAllowedOntologyIds(Set toIgnore) { return allowedOntologies.toString(); } + public static String getAllowedOntologyAcronyms(Set toIgnore) { + StringBuilder allowedOntologies = new StringBuilder(); + + int count = 0; + for (AcceptedOntology ontology : acceptedOntologies) { + if (!toIgnore.contains(ontology) && StringUtils.trimToNull(ontology.getOntologyAbbreviation()) != null) { + allowedOntologies.append(ontology.getOntologyAbbreviation()); + if (count != acceptedOntologies.size() - 1) { + allowedOntologies.append(","); + } + } + count++; + } + + return allowedOntologies.toString(); + } + public static List values() { return acceptedOntologies; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java new file mode 100644 index 00000000..fc19d3ac --- /dev/null +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java @@ -0,0 +1,172 @@ +package org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers; + +import org.apache.commons.httpclient.HostConfiguration; +import org.apache.commons.httpclient.HttpClient; +import org.apache.commons.httpclient.NameValuePair; +import org.apache.commons.httpclient.methods.GetMethod; +import org.apache.commons.httpclient.methods.PostMethod; +import org.apache.commons.lang.StringUtils; +import org.isatools.isacreator.ontologymanager.BioPortal4Client; +import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import org.omg.CORBA.OBJECT_NOT_EXIST; + +import javax.json.*; +import java.io.*; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class BioPortalQueryEndpoint { + + public static final String API_KEY = "fd88ee35-6995-475d-b15a-85f1b9dd7a42"; + + public Map> getSearchResults(String term, String ontologyIds, String subtree) { + + Map> result = new HashMap>(); + + String content = querySearchEndpoint(term, ontologyIds, subtree); + + StringReader reader = new StringReader(content); + + JsonReader rdr = Json.createReader(reader); + + JsonObject obj = rdr.readObject(); + JsonArray results = obj.getJsonArray("collection"); + for (JsonObject resultItem : results.getValuesAs(JsonObject.class)) { + System.out.println(resultItem.getString("prefLabel")); + System.out.println(resultItem.getString("@id")); + JsonArray definitions = resultItem.getJsonArray("definition"); + if (definitions != null) { + System.out.println("\t" + definitions.get(0)); + } + +// JsonArray links = resultItem.getJS("links"); +// if (links != null) { +// for(JsonValue link : links) +// System.out.println("\t" + definitions.get(0)); +// } + } + + return result; + } + + public String querySearchEndpoint(String term, String ontologyIds, String subtree) { + try { + HttpClient client = new HttpClient(); + PostMethod method = new PostMethod(BioPortal4Client.REST_URL + "search"); + + // Configure the form parameters + method.addParameter("q", term); + + + if (StringUtils.trimToNull(subtree) != null) { + method.addParameter("subtree", subtree); + method.addParameter("ontology", ontologyIds); + } else { + if (StringUtils.trimToNull(ontologyIds) != null) { + method.addParameter("ontologies", ontologyIds); + } + } + method.addParameter("apikey", API_KEY); + method.addParameter("pagesize", "500"); + method.addParameter("require_definition", "true"); + + + try { + setHostConfiguration(client); + } catch (Exception e) { + System.err.println("Problem encountered setting host configuration for search"); + } + + + int statusCode = client.executeMethod(method); + if (statusCode != -1) { + String contents = method.getResponseBodyAsString(); + System.out.println(contents); + method.releaseConnection(); + return contents; + } + } catch (Exception e) { + e.printStackTrace(); + } + + return null; + } + + public Map> getAllOntologies() { + + Map> result = new HashMap>(); + + String content = queryOntologyEndpoint(); + + StringReader reader = new StringReader(content); + + JsonReader rdr = Json.createReader(reader); + + JsonStructure generalStructure = rdr.read(); + if(generalStructure instanceof JsonArray) { + // process array + JsonArray array = (JsonArray) generalStructure; + System.out.println("There are " + array.size() + " items..."); + for (JsonObject resultItem : array.getValuesAs(JsonObject.class)) { + System.out.println(resultItem.getString("acronym")); + System.out.println(resultItem.getString("name")); + System.out.println(resultItem.getString("@id")); + } + } else { + // process object + JsonObject obj = (JsonObject) generalStructure; + System.out.println(obj.getString("acronym")); + System.out.println(obj.getString("name")); + System.out.println(obj.getString("@id")); + } + +// JsonArray results = obj.getJsonArray(""); +// System.out.println(results.size() + " results"); + + return result; + } + + public String queryOntologyEndpoint() { + return queryOntologyEndpoint(null); + } + + public String queryOntologyEndpoint(String ontology) { + try { + HttpClient client = new HttpClient(); + + GetMethod method = new GetMethod(BioPortal4Client.REST_URL + "ontologies" + (ontology != null ? "/"+ontology :"") + "?apikey="+API_KEY); + + try { + setHostConfiguration(client); + } catch (Exception e) { + System.err.println("Problem encountered setting host configuration for ontology search"); + } + + + int statusCode = client.executeMethod(method); + if (statusCode != -1) { + + System.out.println(method.getURI().toString()); +// for(NameValuePair param : method.getParams().getp) { +// System.out.println(param); +// } + String contents = method.getResponseBodyAsString(); + + method.releaseConnection(); + return contents; + } + } catch (Exception e) { + e.printStackTrace(); + } + + return null; + } + + private void setHostConfiguration(HttpClient client) { + HostConfiguration configuration = new HostConfiguration(); + configuration.setHost("http://data.bioontology.org"); + client.setHostConfiguration(configuration); + } +} diff --git a/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java b/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java index 6bde0eab..a3336cdb 100644 --- a/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java +++ b/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java @@ -2,8 +2,13 @@ import org.isatools.errorreporter.model.ErrorMessage; import org.isatools.errorreporter.model.ISAFileErrorReport; +import org.isatools.isacreator.api.utils.SpreadsheetUtils; import org.isatools.isacreator.configuration.FieldObject; +import org.isatools.isacreator.gui.AssaySpreadsheet; +import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.ontologymanager.OntologyManager; +import org.isatools.isacreator.settings.ISAcreatorProperties; +import org.isatools.isacreator.spreadsheet.Spreadsheet; import org.isatools.isacreator.spreadsheet.model.ReferenceData; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; import org.junit.After; @@ -16,19 +21,19 @@ import java.io.File; import java.io.IOException; +import java.util.Collection; import java.util.List; import java.util.Map; import static junit.framework.Assert.assertTrue; /** - * * Test class for ISAtabFilesImporter - * + *

* It assumes that package.sh was run before running this test, as this script downloads the configuration files into ISAcreator/Configurations (Note: wget must be installed for this to work). - * + *

* Created by ISA Team - * + *

* Date: 04/07/2012 * Time: 05:54 * @@ -45,20 +50,19 @@ public class ISAtabFilesImporterTest { @Before public void setUp() { - String baseDir = System.getProperty("basedir"); + String baseDir = System.getProperty("basedir"); - if ( baseDir == null ) - { - try{ - baseDir = new File( "." ).getCanonicalPath(); - }catch(IOException e){ + if (baseDir == null) { + try { + baseDir = new File(".").getCanonicalPath(); + } catch (IOException e) { e.printStackTrace(); } } - configDir = baseDir + "/Configurations/isaconfig-default_v2013-02-13/"; + configDir = baseDir + "/Configurations/isaconfig-default_v2013-02-13/"; - log.debug("configDir=" + configDir); + log.debug("configDir=" + configDir); importer = new ISAtabFilesImporter(configDir); isatabParentDir = baseDir + "/src/test/resources/test-data/BII-I-1"; log.debug("isatabParentDir=" + isatabParentDir); @@ -67,26 +71,26 @@ public void setUp() { @After public void tearDown() { } - + @Test - public void importFileTest(){ + public void importFileTest() { importer.importFile(isatabParentDir); Investigation inv = importer.getInvestigation(); - assert(inv!=null); + assert (inv != null); - for(ISAFileErrorReport report : importer.getMessages()) { + for (ISAFileErrorReport report : importer.getMessages()) { System.out.println(report.getFileName()); - for(ErrorMessage message : report.getMessages()) { + for (ErrorMessage message : report.getMessages()) { System.out.println(message.getErrorLevel().toString() + " > " + message.getMessage()); } } //if import worked ok, there should not be error messages - assert(importer.getMessages().size()==0); + assert (importer.getMessages().size() == 0); - System.out.println("ontologies used="+OntologyManager.getOntologiesUsed()); - System.out.println("ontology description="+OntologyManager.getOntologyDescription("OBI")); + System.out.println("ontologies used=" + OntologyManager.getOntologiesUsed()); + System.out.println("ontology description=" + OntologyManager.getOntologyDescription("OBI")); System.out.println("ontology selection history=" + OntologyManager.getOntologySelectionHistory()); System.out.println("ontology selection history size=" + OntologyManager.getOntologySelectionHistory().keySet().size()); System.out.println("ontology term=" + OntologyManager.getOntologyTerm("OBI:metabolite profiling")); diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java new file mode 100644 index 00000000..1aab4b04 --- /dev/null +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java @@ -0,0 +1,60 @@ +package org.isatools.isacreator.ontologymanager; + +import org.isatools.isacreator.configuration.Ontology; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import org.junit.Test; + +import java.util.List; +import java.util.Map; + +import static org.junit.Assert.assertTrue; + +/** + * Created by eamonnmaguire on 17/12/2013. + */ +public class BioPortalClient4Test { + + private static BioPortal4Client client = new BioPortal4Client(); + public static String testOntologyID = "EFO"; + public static String testTermAccession = "efo:EFO_0000428"; + public static String testOntologyVersion = "45781"; + public static String testSearchTerm = "dose"; + + public static String obiID = "1123"; + public static String obiVersion = "47893"; + + + @Test + public void getTermsByPartialNameFromSource() { + System.out.println("_____Testing getTermsByPartialNameFromSource()____"); + + Map> result = client.getTermsByPartialNameFromSource(testSearchTerm, testOntologyID, false); + + assertTrue("No results found for " + testSearchTerm + " in " + testOntologyID, result.size() > 0); + + for (OntologySourceRefObject source : result.keySet()) { + System.out.println(source.getSourceName() + " (" + source.getSourceVersion() + ")"); + + for (OntologyTerm term : result.get(source)) { + System.out.println("\t" + term.getOntologyTermName() + " (" + term.getOntologyTermAccession() + ")"); + } + } + + System.out.println("Found " + result.values().size() + " matches...\n"); + } + + @Test + public void getAllOntologies() { + System.out.println("_____Testing getAllOntologies()____"); + + List ontologies = client.getAllOntologies(); + + assertTrue("Oh no! No returned ontologies (empty result)! ", ontologies.size() > 0); + + System.out.println("Found " + ontologies.size() + " ontologies \n"); + for (Ontology ontology : ontologies) { + System.out.println(ontology.getOntologyID() + " - " + ontology.getOntologyAbbreviation() + " -> " + ontology.getOntologyDisplayLabel() + + " -> " + ontology.getOntologyVersion() + " - " + ontology.getHomepage() + " " + ontology.getContactName()); + } + } +} From 344088cfdafd98c2625fca491d473a7769a63190 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Wed, 18 Dec 2013 14:36:18 +0000 Subject: [PATCH 055/111] Cleaned up the AcceptedOntologies code. Ontology search and getting all ontologies now works correctly. --- .../importisa/ISAtabFilesImporterFromGUI.java | 5 - .../io/exportisa/ISAFileOutput.java | 1 - .../io/importisa/SpreadsheetImport.java | 8 - .../StructureToInvestigationMapper.java | 7 +- .../logic/impl/AnnotatorSearchClient.java | 4 +- .../ontologymanager/BioPortal4Client.java | 55 +- .../ontologymanager/BioPortalClient.java | 9 +- .../ontologymanager/OntologyService.java | 5 +- .../bioportal/io/AcceptedOntologies.java | 44 +- .../io/AcceptedOntologiesLoader.java | 50 +- .../bioportal/io/AcceptedOntology.java | 34 - .../BioPortalQueryEndpoint.java | 91 +- .../BioPortalAnnotatorResultHandler.java | 3 +- .../ontologymanager/utils/OntologyUtils.java | 3 +- .../bioportal-accepted-ontologies.xml | 777 +++++++++--------- .../ontologymanager/BioPortalClient4Test.java | 28 +- .../ontologymanager/BioPortalClientTest.java | 2 +- 17 files changed, 553 insertions(+), 573 deletions(-) delete mode 100644 src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntology.java diff --git a/src/main/java/org/isatools/isacreator/gui/io/importisa/ISAtabFilesImporterFromGUI.java b/src/main/java/org/isatools/isacreator/gui/io/importisa/ISAtabFilesImporterFromGUI.java index 21cfb325..f012f329 100644 --- a/src/main/java/org/isatools/isacreator/gui/io/importisa/ISAtabFilesImporterFromGUI.java +++ b/src/main/java/org/isatools/isacreator/gui/io/importisa/ISAtabFilesImporterFromGUI.java @@ -101,9 +101,4 @@ private void attachGUIsToInvestigation() { } } } - - - - - } diff --git a/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java b/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java index 6ef47e81..799926f7 100644 --- a/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java +++ b/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java @@ -38,7 +38,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.io.exportisa; import org.apache.axis.utils.StringUtils; -import org.isatools.isacreator.api.utils.SpreadsheetUtils; import org.isatools.isacreator.gui.DataEntryForm; import org.isatools.isacreator.io.exportisa.exportadaptors.ISASectionExportAdaptor; import org.isatools.isacreator.io.importisa.investigationproperties.InvestigationFileSection; diff --git a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java index a4bb6b38..4a000162 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java @@ -25,8 +25,6 @@ public class SpreadsheetImport { - private Set messages; - /** * Create tablemodel for item! * @@ -39,7 +37,6 @@ public class SpreadsheetImport { */ public TableReferenceObject loadInTables(String fileName, TableReferenceObject defaultTableRef) throws IOException, MalformedInvestigationException { - messages = new HashSet(); File f = new File(fileName); @@ -100,7 +97,6 @@ private TableReferenceObject reformTableDefinition(String tableName, // way of storing previously seen protocol to determine where the parameters are which associated with it. int previousProtocol = -1; - System.out.println("Reforming table definition..."); // way of storing previously read characteristic, factor, or parameter to determine what type it is String previousCharFactParam = null; int expectedNextUnitLocation = -1; @@ -112,11 +108,7 @@ private TableReferenceObject reformTableDefinition(String tableName, positionInheaders++; String fieldAsLowercase = columnHeader.toLowerCase(); - - System.out.println("Column header is " + columnHeader); - if (expectedNextUnitLocation == positionInheaders) { - System.out.println("Expected a unit here, got a " + columnHeader); if (fieldAsLowercase.contains("unit")) { // add two fields...one accepting string values and the unit, also accepting string values :o) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java index 0f06b2be..0d7f5ea5 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java @@ -207,6 +207,7 @@ private Study processStudy(OrderedMap, List> processedStudyDesignSection = processStudyDesigns(studySections.get(studySection)); sectionFields.put(studySection, processedStudyDesignSection.fst); + studyDesigns = processedStudyDesignSection.snd; } else if (studySection == InvestigationFileSection.STUDY_ASSAYS) { @@ -240,6 +241,7 @@ private Study processStudy(OrderedMap record) { } /** - * * @param fieldBeingCombined * @param term * @param accession @@ -639,6 +640,7 @@ private String groupElements(String fieldBeingCombined, String term, /** * It returns an OntologySourceRefObject given an ontology abbreviation + * * @param source * @return */ @@ -647,7 +649,8 @@ private OntologySourceRefObject getOntologySource(String source) { } /** - * Checks for duplicate assay names across all studies. + * Checks for duplicate assay names across all studies. + * * @param investigation * @return */ diff --git a/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java b/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java index c10279c0..f10aad3d 100644 --- a/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java +++ b/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java @@ -3,8 +3,8 @@ import org.apache.commons.httpclient.HostConfiguration; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.PostMethod; +import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntology; import org.isatools.isacreator.ontologymanager.bioportal.model.AnnotatorResult; import org.isatools.isacreator.ontologymanager.bioportal.utils.BioPortalXMLModifier; import org.isatools.isacreator.ontologymanager.bioportal.xmlresulthandlers.BioPortalAnnotatorResultHandler; @@ -30,7 +30,7 @@ public class AnnotatorSearchClient { public static final String BASE_QUERY_URL = "http://rest.bioontology.org/obs/annotator"; public Map> searchForTerms(Set terms) { - return searchForTerms(terms, AcceptedOntologies.getAllowedOntologyIds(new HashSet()), true); + return searchForTerms(terms, AcceptedOntologies.getAllowedOntologyIds(new HashSet()), true); } public Map> searchForTerms(Set terms, String ontologiesToSearchOn, boolean wholeWordOnly) { diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java index c0bd77f6..ba824391 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -4,14 +4,10 @@ import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntology; import org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers.BioPortalQueryEndpoint; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; +import java.util.*; /** * Created by eamonnmaguire on 17/12/2013. @@ -22,6 +18,7 @@ public class BioPortal4Client implements OntologyService { private BioPortalQueryEndpoint handler; + public static final String REST_URL = "http://data.bioontology.org/"; public BioPortal4Client() { @@ -29,7 +26,7 @@ public BioPortal4Client() { } public Map getOntologyNames() { - return null; + return AcceptedOntologies.getOntologySourceToNames(); } public Map getTermMetadata(String termId, String ontology) { @@ -38,19 +35,14 @@ public Map getTermMetadata(String termId, String ontology) { public Map> getTermsByPartialNameFromSource(String term, String source, boolean reverseOrder) { - System.out.println("Searching for source: " + source); - term = correctTermForHTTPTransport(term); - - if(source.equals("all")) { - source = AcceptedOntologies.getAllowedOntologyAcronyms(new HashSet()); + if (source.equals("all")) { + source = AcceptedOntologies.getAllowedOntologyAcronyms(new HashSet()); } - Map> searchResult = handler.getSearchResults(term, source, null); - - log.info("found " + (searchResult == null ? "0" : searchResult.size()) + " ontology terms"); + Map> searchResult = handler.getSearchResults(term, source, null); - return searchResult == null ? new HashMap>() : searchResult; + return convertStringKeyMapToOntologySourceRefKeyMap(searchResult); } public Map> getTermsByPartialNameFromSource(String term, List recommendedOntology) { @@ -68,25 +60,21 @@ public Map> getTermsByPartialNameFro String subtree = null; if (ro.getBranchToSearchUnder() != null && !ro.getBranchToSearchUnder().getBranchIdentifier().equals("")) { - String branch = ro.getBranchToSearchUnder().getBranchIdentifier(); - subtree = branch; - + subtree = ro.getBranchToSearchUnder().getBranchIdentifier(); } - Map> searchResult = handler.getSearchResults(term, ro.getOntology().getOntologyID(), subtree); + Map> searchResult = handler.getSearchResults(term, ro.getOntology().getOntologyID(), subtree); if (searchResult != null) { - result.putAll(searchResult); + result.putAll(convertStringKeyMapToOntologySourceRefKeyMap(searchResult)); } } } - - return result; } public Map getOntologyVersions() { - return null; + return AcceptedOntologies.getOntologySourceToVersion(); } public Map getOntologyRoots(String ontology) { @@ -105,17 +93,22 @@ public Map getAllTermParents(String termAccession, String return null; } - public String getOntologyURL() { - return null; - } - - public List getAllOntologies() { - handler.getAllOntologies(); - return null; + public Collection getAllOntologies() { + return handler.getAllOntologies().values(); } + private Map> convertStringKeyMapToOntologySourceRefKeyMap(Map> toConvert) { - + Map> convertedMap = new HashMap>(); + for (String ontologyId : toConvert.keySet()) { + Ontology ontology = AcceptedOntologies.getAcceptedOntologies().get(ontologyId); + if (ontology != null) { + OntologySourceRefObject osro = new OntologySourceRefObject(ontology.getOntologyAbbreviation(), ontologyId, ontology.getOntologyVersion(), ontology.getOntologyDisplayLabel()); + convertedMap.put(osro, toConvert.get(ontologyId)); + } + } + return convertedMap; + } private String correctTermForHTTPTransport(String term) { return term.replaceAll("[\\s]+", "%20"); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java index 70bfc69a..464ccb4a 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java @@ -36,13 +36,11 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ package org.isatools.isacreator.ontologymanager; -import bioontology.bioportal.classBean.schema.SuccessDocument; import org.apache.commons.collections15.map.ListOrderedMap; import org.apache.log4j.Logger; import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntology; import org.isatools.isacreator.ontologymanager.bioportal.utils.BioPortalXMLModifier; import org.isatools.isacreator.ontologymanager.bioportal.xmlresulthandlers.BioPortalClassBeanResultHandler; import org.isatools.isacreator.ontologymanager.bioportal.xmlresulthandlers.BioPortalOntologyListResultHandler; @@ -90,11 +88,8 @@ public BioPortalClient() { noChildren = new HashSet(); } - public List getAllOntologies() { - return getAllOntologies(false); - } - public List getAllOntologies(boolean loadAll) { + public List getAllOntologies() { if (ontologies == null || ontologies.size() == 0) { @@ -331,7 +326,7 @@ private String constructSourceStringFromAllowedOntologies() { String allowedOntologies = ""; int count = 0; - for (AcceptedOntology ao : AcceptedOntologies.values()) { + for (Ontology ao : AcceptedOntologies.values()) { allowedOntologies += ao.getOntologyID(); if (count < AcceptedOntologies.values().size() - 1) { allowedOntologies += ","; diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java index 9f1cc3e6..7aad8abf 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java @@ -42,6 +42,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import java.util.Collection; import java.util.List; import java.util.Map; @@ -95,8 +96,6 @@ public Map> getTermsByPartialNameFro */ public Map getAllTermParents(String termAccession, String ontology); - public String getOntologyURL(); - - public List getAllOntologies(); + public Collection getAllOntologies(); } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java index 66e4da63..b9f9ef3c 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java @@ -39,9 +39,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.ontologymanager.bioportal.io; import org.apache.commons.lang.StringUtils; +import org.isatools.isacreator.configuration.Ontology; -import java.util.List; -import java.util.Set; +import java.util.*; /** * AcceptedOntologies @@ -51,7 +51,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ public class AcceptedOntologies { - private static List acceptedOntologies; + private static Map acceptedOntologies; static { acceptedOntologies = AcceptedOntologiesLoader.getAcceptedOntologies(); @@ -64,19 +64,33 @@ public class AcceptedOntologies { * @return when 1123 is supplied, OBI will be returned */ public static String getOntologyAbbreviationFromId(String ontologyId) { - for (AcceptedOntology ontology : acceptedOntologies) { - if (ontology.getOntologyID().equals(ontologyId)) { - return ontology.getOntologyAbbreviation(); - } - } + if(acceptedOntologies.containsKey(ontologyId)) + return acceptedOntologies.get(ontologyId).getOntologyAbbreviation(); return null; } - public static String getAllowedOntologyIds(Set toIgnore) { + + public static Map getOntologySourceToNames() { + Map ontologySourceToName = new HashMap(); + for (Ontology ontology : acceptedOntologies.values()) { + ontologySourceToName.put(ontology.getOntologyAbbreviation(), ontology.getOntologyDisplayLabel()); + } + return ontologySourceToName; + } + + public static Map getOntologySourceToVersion() { + Map ontologySourceToName = new HashMap(); + for (Ontology ontology : acceptedOntologies.values()) { + ontologySourceToName.put(ontology.getOntologyAbbreviation(), ontology.getOntologyVersion()); + } + return ontologySourceToName; + } + + public static String getAllowedOntologyIds(Set toIgnore) { StringBuilder allowedOntologies = new StringBuilder(); int count = 0; - for (AcceptedOntology ontology : acceptedOntologies) { + for (Ontology ontology : acceptedOntologies.values()) { if (!toIgnore.contains(ontology)) { allowedOntologies.append(ontology.getOntologyID()); if (count != acceptedOntologies.size() - 1) { @@ -89,11 +103,11 @@ public static String getAllowedOntologyIds(Set toIgnore) { return allowedOntologies.toString(); } - public static String getAllowedOntologyAcronyms(Set toIgnore) { + public static String getAllowedOntologyAcronyms(Set toIgnore) { StringBuilder allowedOntologies = new StringBuilder(); int count = 0; - for (AcceptedOntology ontology : acceptedOntologies) { + for (Ontology ontology : acceptedOntologies.values()) { if (!toIgnore.contains(ontology) && StringUtils.trimToNull(ontology.getOntologyAbbreviation()) != null) { allowedOntologies.append(ontology.getOntologyAbbreviation()); if (count != acceptedOntologies.size() - 1) { @@ -106,7 +120,11 @@ public static String getAllowedOntologyAcronyms(Set toIgnore) return allowedOntologies.toString(); } - public static List values() { + public static Map getAcceptedOntologies() { return acceptedOntologies; } + + public static Collection values() { + return acceptedOntologies.values(); + } } \ No newline at end of file diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java index d9c5b629..6d4746df 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java @@ -1,6 +1,7 @@ package org.isatools.isacreator.ontologymanager.bioportal.io; import org.isatools.isacreator.configuration.Ontology; +import org.isatools.isacreator.ontologymanager.BioPortal4Client; import org.isatools.isacreator.ontologymanager.BioPortalClient; import org.w3c.dom.Attr; import org.w3c.dom.Document; @@ -21,8 +22,7 @@ import javax.xml.parsers.DocumentBuilderFactory; import java.io.File; import java.io.IOException; -import java.util.ArrayList; -import java.util.List; +import java.util.*; /** * Loads a file defining allowed BioPortal ontologies into a file. @@ -36,16 +36,16 @@ public class AcceptedOntologiesLoader { private static final String FILE = "/defaults/bioportal-accepted-ontologies.xml"; - public static void populateAcceptedOntologies(){ + public static void populateAcceptedOntologies() { System.out.println("_____populateAcceptedOntologies()____"); - BioPortalClient client = new BioPortalClient(); + BioPortal4Client client = new BioPortal4Client(); - List ontologies = client.getAllOntologies(true); + Collection ontologies = client.getAllOntologies(); System.out.println("Found " + ontologies.size() + " ontologies \n"); - try{ + try { DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); @@ -68,6 +68,18 @@ public static void populateAcceptedOntologies(){ abbreviation.setValue(ontology.getOntologyAbbreviation()); acceptedOntologyElement.setAttributeNode(abbreviation); + Attr name = doc.createAttribute("name"); + name.setValue(ontology.getOntologyDisplayLabel()); + acceptedOntologyElement.setAttributeNode(name); + + Attr version = doc.createAttribute("version"); + version.setValue(ontology.getOntologyVersion()); + acceptedOntologyElement.setAttributeNode(version); + + Attr uri = doc.createAttribute("uri"); + uri.setValue(ontology.getOntologyVersion()); + acceptedOntologyElement.setAttributeNode(uri); + Attr id = doc.createAttribute("id"); id.setValue(ontology.getOntologyID()); acceptedOntologyElement.setAttributeNode(id); @@ -78,11 +90,10 @@ public static void populateAcceptedOntologies(){ String baseDir = System.getProperty("basedir"); - if ( baseDir == null ) - { - try{ - baseDir = new File( "." ).getCanonicalPath(); - }catch(IOException e){ + if (baseDir == null) { + try { + baseDir = new File(".").getCanonicalPath(); + } catch (IOException e) { e.printStackTrace(); } } @@ -93,8 +104,8 @@ public static void populateAcceptedOntologies(){ Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(doc); - String fullPath = baseDir+ File.separator + "src" + File.separator + "main"+ File.separator + "resources" + FILE; - System.out.println("Printing out file "+ fullPath); + String fullPath = baseDir + File.separator + "src" + File.separator + "main" + File.separator + "resources" + FILE; + System.out.println("Printing out file " + fullPath); File outputFile = new File(fullPath); @@ -108,19 +119,19 @@ public static void populateAcceptedOntologies(){ transformer.transform(source, result); - }catch(ParserConfigurationException pce){ + } catch (ParserConfigurationException pce) { pce.printStackTrace(); - } catch(TransformerException tfe){ + } catch (TransformerException tfe) { tfe.printStackTrace(); } } - public static List getAcceptedOntologies() { + public static Map getAcceptedOntologies() { XPathReader reader = new XPathReader(AcceptedOntologiesLoader.class.getResourceAsStream(FILE)); - List acceptedOntologies = new ArrayList(); + Map acceptedOntologies = new HashMap(); NodeList sections = (NodeList) reader.read("/acceptedOntologies/acceptedOntology", XPathConstants.NODESET); @@ -128,7 +139,10 @@ public static List getAcceptedOntologies() { for (int sectionIndex = 0; sectionIndex <= sections.getLength(); sectionIndex++) { String id = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@id", XPathConstants.STRING); String abbreviation = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@abbreviation", XPathConstants.STRING); - acceptedOntologies.add(new AcceptedOntology(id, abbreviation)); + String name = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@name", XPathConstants.STRING); + String version = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@version", XPathConstants.STRING); + + acceptedOntologies.put(id, new Ontology(id, version, abbreviation, name)); } } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntology.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntology.java deleted file mode 100644 index f8f7a3c7..00000000 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntology.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.isatools.isacreator.ontologymanager.bioportal.io; - -/** - * Created by the ISA team - * - * @author Eamonn Maguire (eamonnmag@gmail.com) - *

- * Date: 02/05/2012 - * Time: 11:13 - */ -public class AcceptedOntology { - - private String ontologyID; - private String ontologyAbbreviation; - - AcceptedOntology(String ontologyID, String ontologyAbbreviation) { - this.ontologyID = ontologyID; - this.ontologyAbbreviation = ontologyAbbreviation; - } - - @Override - public String toString() { - return ontologyID; - } - - public String getOntologyAbbreviation() { - return ontologyAbbreviation; - } - - public String getOntologyID() { - return ontologyID; - } - -} diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java index fc19d3ac..98474219 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java @@ -6,6 +6,7 @@ import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.commons.lang.StringUtils; +import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.ontologymanager.BioPortal4Client; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; @@ -13,6 +14,7 @@ import javax.json.*; import java.io.*; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -21,9 +23,18 @@ public class BioPortalQueryEndpoint { public static final String API_KEY = "fd88ee35-6995-475d-b15a-85f1b9dd7a42"; - public Map> getSearchResults(String term, String ontologyIds, String subtree) { + /** + * Returns the result of the search operation + * + * @param term - the string being searched for + * @param ontologyIds - the ontologies the search is being restricted to + * @param @nullable subtree - a subtree, if any to be searched under (optional) + * @return - Map from the id of the ontology to the list of terms found under it. + */ + public Map> getSearchResults(String term, String ontologyIds, String subtree) { - Map> result = new HashMap>(); + // map from ontology id to the list of terms found for that id. + Map> result = new HashMap>(); String content = querySearchEndpoint(term, ontologyIds, subtree); @@ -34,18 +45,36 @@ public Map> getSearchResults(String JsonObject obj = rdr.readObject(); JsonArray results = obj.getJsonArray("collection"); for (JsonObject resultItem : results.getValuesAs(JsonObject.class)) { - System.out.println(resultItem.getString("prefLabel")); - System.out.println(resultItem.getString("@id")); + + JsonObject links = resultItem.getJsonObject("links"); + + String ontologyId = links.getJsonString("ontology").toString(); + if (!result.containsKey(ontologyId)) { + result.put(ontologyId, new ArrayList()); + } + OntologyTerm ontologyTerm = new OntologyTerm(resultItem.getString("prefLabel"), resultItem.getString("@id"), "", null); + JsonArray definitions = resultItem.getJsonArray("definition"); if (definitions != null) { - System.out.println("\t" + definitions.get(0)); + ontologyTerm.addToComments("definition", definitions.get(0).toString()); } -// JsonArray links = resultItem.getJS("links"); -// if (links != null) { -// for(JsonValue link : links) -// System.out.println("\t" + definitions.get(0)); -// } + JsonArray synonyms = resultItem.getJsonArray("synonyms"); + if (synonyms != null && synonyms.size() > 0) { + StringBuilder synonymList = new StringBuilder(); + int count = 0; + for (JsonValue value : synonyms.getValuesAs(JsonValue.class)) { + synonymList.append(value.toString()); + if (count != synonyms.size() - 1) { + synonymList.append(","); + } + count++; + } + ontologyTerm.addToComments("synonyms", synonymList.toString()); + } + + result.get(ontologyId).add(ontologyTerm); + } return result; @@ -70,7 +99,6 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre } method.addParameter("apikey", API_KEY); method.addParameter("pagesize", "500"); - method.addParameter("require_definition", "true"); try { @@ -83,7 +111,6 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre int statusCode = client.executeMethod(method); if (statusCode != -1) { String contents = method.getResponseBodyAsString(); - System.out.println(contents); method.releaseConnection(); return contents; } @@ -94,9 +121,9 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre return null; } - public Map> getAllOntologies() { + public Map getAllOntologies() { - Map> result = new HashMap>(); + Map result = new HashMap(); String content = queryOntologyEndpoint(); @@ -105,29 +132,33 @@ public Map> getAllOntologies() { JsonReader rdr = Json.createReader(reader); JsonStructure generalStructure = rdr.read(); - if(generalStructure instanceof JsonArray) { + if (generalStructure instanceof JsonArray) { // process array JsonArray array = (JsonArray) generalStructure; - System.out.println("There are " + array.size() + " items..."); + System.out.println("There are " + array.size() + " items..."); for (JsonObject resultItem : array.getValuesAs(JsonObject.class)) { - System.out.println(resultItem.getString("acronym")); - System.out.println(resultItem.getString("name")); - System.out.println(resultItem.getString("@id")); + addOntology(result, resultItem); } } else { - // process object + // process object JsonObject obj = (JsonObject) generalStructure; - System.out.println(obj.getString("acronym")); - System.out.println(obj.getString("name")); - System.out.println(obj.getString("@id")); + addOntology(result, obj); } -// JsonArray results = obj.getJsonArray(""); -// System.out.println(results.size() + " results"); - return result; } + private void addOntology(Map result, JsonObject resultItem) { + JsonValue summaryOnly = resultItem.get("summaryOnly"); + if (summaryOnly != null) { + Ontology newOntology = new Ontology(resultItem.getString("@id"), "version", resultItem.getString("acronym"), resultItem.getString("name")); + + if (!newOntology.getOntologyAbbreviation().contains("test") && + !newOntology.getOntologyDisplayLabel().contains("test")) + result.put(resultItem.getString("@id"), newOntology); + } + } + public String queryOntologyEndpoint() { return queryOntologyEndpoint(null); } @@ -136,7 +167,7 @@ public String queryOntologyEndpoint(String ontology) { try { HttpClient client = new HttpClient(); - GetMethod method = new GetMethod(BioPortal4Client.REST_URL + "ontologies" + (ontology != null ? "/"+ontology :"") + "?apikey="+API_KEY); + GetMethod method = new GetMethod(BioPortal4Client.REST_URL + "ontologies" + (ontology != null ? "/" + ontology : "") + "?apikey=" + API_KEY); try { setHostConfiguration(client); @@ -147,13 +178,7 @@ public String queryOntologyEndpoint(String ontology) { int statusCode = client.executeMethod(method); if (statusCode != -1) { - - System.out.println(method.getURI().toString()); -// for(NameValuePair param : method.getParams().getp) { -// System.out.println(param); -// } String contents = method.getResponseBodyAsString(); - method.releaseConnection(); return contents; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalAnnotatorResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalAnnotatorResultHandler.java index cdd83b03..8493f66b 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalAnnotatorResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalAnnotatorResultHandler.java @@ -6,7 +6,6 @@ import bioontology.bioportal.annotator.schema.SuccessDocument; import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntology; import org.isatools.isacreator.ontologymanager.bioportal.model.AnnotatorResult; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; @@ -107,7 +106,7 @@ private Map getOntologyInformation(SuccessDocument document) { newOntology.setOntologyVersion(ontology.getLocalOntologyId().toString()); - for (AcceptedOntology accceptedOntology : AcceptedOntologies.values()) { + for (Ontology accceptedOntology : AcceptedOntologies.values()) { if (accceptedOntology.toString().equals(newOntology.getOntologyID())) { newOntology.setOntologyAbbreviation(accceptedOntology.getOntologyAbbreviation()); ontologies.put(ontology.getLocalOntologyId().toString(), newOntology); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java index 16d3c5b7..f4ed4ae9 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java @@ -6,7 +6,6 @@ import org.isatools.isacreator.ontologymanager.OLSClient; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntology; import org.isatools.isacreator.ontologymanager.bioportal.model.OntologyPortal; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.utils.StringProcessing; @@ -49,7 +48,7 @@ public static String getModifiedBranchIdentifier(String branchIdentifier, String public static OntologyPortal getSourcePortalByAbbreviation(String abbreviation) { boolean isBioPortal = false; - for (AcceptedOntology bioPortalOntologies : AcceptedOntologies.values()) { + for (Ontology bioPortalOntologies : AcceptedOntologies.values()) { if (bioPortalOntologies.getOntologyAbbreviation().equalsIgnoreCase(abbreviation)) { isBioPortal = true; break; diff --git a/src/main/resources/defaults/bioportal-accepted-ontologies.xml b/src/main/resources/defaults/bioportal-accepted-ontologies.xml index 124fc8a5..57db3867 100644 --- a/src/main/resources/defaults/bioportal-accepted-ontologies.xml +++ b/src/main/resources/defaults/bioportal-accepted-ontologies.xml @@ -1,411 +1,374 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java index 1aab4b04..dd66607e 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java @@ -1,9 +1,11 @@ package org.isatools.isacreator.ontologymanager; import org.isatools.isacreator.configuration.Ontology; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.junit.Test; +import java.util.Collection; import java.util.List; import java.util.Map; @@ -28,9 +30,10 @@ public class BioPortalClient4Test { public void getTermsByPartialNameFromSource() { System.out.println("_____Testing getTermsByPartialNameFromSource()____"); - Map> result = client.getTermsByPartialNameFromSource(testSearchTerm, testOntologyID, false); + long startTime = System.currentTimeMillis(); + Map> result = client.getTermsByPartialNameFromSource(testSearchTerm, "all", false); + System.out.println("Took " + (System.currentTimeMillis()-startTime) + "ms to do that query."); - assertTrue("No results found for " + testSearchTerm + " in " + testOntologyID, result.size() > 0); for (OntologySourceRefObject source : result.keySet()) { System.out.println(source.getSourceName() + " (" + source.getSourceVersion() + ")"); @@ -40,14 +43,31 @@ public void getTermsByPartialNameFromSource() { } } - System.out.println("Found " + result.values().size() + " matches...\n"); + System.out.println(); + + startTime = System.currentTimeMillis(); + result = client.getTermsByPartialNameFromSource(testSearchTerm, "all", false); + System.out.println("Took " + (System.currentTimeMillis()-startTime) + "ms to do that query."); + + for (OntologySourceRefObject source : result.keySet()) { + System.out.println(source.getSourceName() + " (" + source.getSourceVersion() + ")"); + + for (OntologyTerm term : result.get(source)) { + System.out.println("\t" + term.getOntologyTermName() + " (" + term.getOntologyTermAccession() + ")"); + } + } + + } + + private String ontologySources() { + return "CBO,FB-DV,NMR,MESH,ECG,PSIMOD,PR,MA,TADS,OBI,SNPO,ATMO,BT,BSPO,GEOSPECIES,CHEBI,LHN,MEGO,pseudo,WB-LS,GO,FHHO,PAE,BILA,OGI,EFO,OPB,SEP,MEDLINEPLUS,BTO,MAT,CARO,NEMO,REX,FB-SP,BIRNLEX,OCRE,TAO,HAO,TGMA,IMR,BHO,BRO,DC-CL,HP,FBbi,EHDAA,SBO,ZFA,PTO,LOINC,GRO,PATO,TTO,WB-BT,ZEA,GRO-CPD,PDQ,OPL,PECO,SO,CPTAC,NDFRT,CPRO,PRO-ONT,COSTART,BCGO,ICPC,SOPHARM,SNOMEDCT,EHDA,FIX,SYMP,XAO,OBOREL,EVOC,DERMLEX,IDOMAL,PEO,ATO,MFO,WHO-ART,IEV,EMAP,FB-BT,AAO,HC,BP-METADATA,PSDS,NCBITAXON,HOM,FAO,ABA-AMB,WB-PHENOTYPE,ENVO,GALEN,BFO,LIPRO,MAO,ACGT-MO,CTONT,UO,PHYFIELD,OGDI,SPD,FB-CV,OMIM,SPO,EP,CDAO,VO,MHC,APO,SBRO,PROPREO,MS,PPIO,SITBAC,DDANAT,SAO,OGR,RS,ICD9CM,CLO,DOID,PTRANS,NIFSTD,MP,MO,PW,AMINO-ACID,ECO,FYPO"; } @Test public void getAllOntologies() { System.out.println("_____Testing getAllOntologies()____"); - List ontologies = client.getAllOntologies(); + Collection ontologies = client.getAllOntologies(); assertTrue("Oh no! No returned ontologies (empty result)! ", ontologies.size() > 0); diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java index 0c30164a..214631ad 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java @@ -69,7 +69,7 @@ public class BioPortalClientTest { public void getAllOntologies() { System.out.println("_____Testing getAllOntologies()____"); - List ontologies = client.getAllOntologies(true); + List ontologies = client.getAllOntologies(); assertTrue("Oh no! No returned ontologies (empty result)! ", ontologies.size() > 0); From 32168aa03d31df379abca44a6a6deb1568c79e93 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Wed, 18 Dec 2013 14:53:01 +0000 Subject: [PATCH 056/111] Some small modifications. --- .../ontologymanager/BioPortalClient.java | 44 ++----------------- .../ontologymanager/BioPortalClient4Test.java | 21 ++++----- .../ontologymanager/BioPortalClientTest.java | 2 +- 3 files changed, 15 insertions(+), 52 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java index 464ccb4a..2a21f6f0 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java @@ -38,9 +38,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.apache.commons.collections15.map.ListOrderedMap; import org.apache.log4j.Logger; +import org.apache.soap.encoding.soapenc.SoapEncUtils; import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.RecommendedOntology; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.bioportal.utils.BioPortalXMLModifier; import org.isatools.isacreator.ontologymanager.bioportal.xmlresulthandlers.BioPortalClassBeanResultHandler; import org.isatools.isacreator.ontologymanager.bioportal.xmlresulthandlers.BioPortalOntologyListResultHandler; @@ -264,8 +264,6 @@ public Map> getTermsByPartialNameFro private Map> downloadAndProcessBranch(String term, String searchString) { String downloadLocation = DownloadUtils.DOWNLOAD_FILE_LOC + term + DownloadUtils.XML_EXT; - - DownloadUtils.downloadFile(searchString, downloadLocation); BioPortalSearchBeanResultHandler handler = new BioPortalSearchBeanResultHandler(); @@ -273,12 +271,7 @@ private Map> downloadAndProcessBranc File fileWithNameSpace = BioPortalXMLModifier.addNameSpaceToFile(new File(downloadLocation), "http://bioontology.org/bioportal/resultBeanSchema#", ""); if (fileWithNameSpace != null) { - Map> result = handler.getSearchResults(fileWithNameSpace.getAbsolutePath()); - - //commeting this out for now to check performance improvement - //updateOntologyManagerWithOntologyInformation(); - - return result; + return handler.getSearchResults(fileWithNameSpace.getAbsolutePath()); } return new HashMap>(); @@ -297,6 +290,7 @@ public Map> getTermsByPartialNameFro ? "?" : "/?ontologyids=" +source + "&") + API_KEY; log.info("search string " + searchString); + System.out.println("search string " + searchString); Map> searchResult = downloadAndProcessBranch(term, searchString); @@ -305,38 +299,6 @@ public Map> getTermsByPartialNameFro return searchResult == null ? new HashMap>() : searchResult; } - /* - //commeting this out for now to check performance improvement - - private void updateOntologyManagerWithOntologyInformation() { - if (!doneOntologyCheck) { - for (AcceptedOntology ao : AcceptedOntologies.values()) { - Ontology o = getOntologyById(ao.getOntologyID()); - if (o != null) { - OntologyManager.addOLSOntologyDefinitions(Collections.singletonMap(o.getOntologyAbbreviation(), - o.getOntologyDisplayLabel()), Collections.singletonMap(o.getOntologyAbbreviation(), o.getOntologyVersion())); - } - } - doneOntologyCheck = true; - } - } - */ - - private String constructSourceStringFromAllowedOntologies() { - String allowedOntologies = ""; - - int count = 0; - for (Ontology ao : AcceptedOntologies.values()) { - allowedOntologies += ao.getOntologyID(); - if (count < AcceptedOntologies.values().size() - 1) { - allowedOntologies += ","; - } - count++; - } - - return allowedOntologies; - } - /** * Finds the root in an ontology * diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java index dd66607e..570da2a4 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java @@ -19,12 +19,8 @@ public class BioPortalClient4Test { private static BioPortal4Client client = new BioPortal4Client(); public static String testOntologyID = "EFO"; public static String testTermAccession = "efo:EFO_0000428"; - public static String testOntologyVersion = "45781"; public static String testSearchTerm = "dose"; - public static String obiID = "1123"; - public static String obiVersion = "47893"; - @Test public void getTermsByPartialNameFromSource() { @@ -46,7 +42,7 @@ public void getTermsByPartialNameFromSource() { System.out.println(); startTime = System.currentTimeMillis(); - result = client.getTermsByPartialNameFromSource(testSearchTerm, "all", false); + result = client.getTermsByPartialNameFromSource("cy5", "all", false); System.out.println("Took " + (System.currentTimeMillis()-startTime) + "ms to do that query."); for (OntologySourceRefObject source : result.keySet()) { @@ -56,11 +52,6 @@ public void getTermsByPartialNameFromSource() { System.out.println("\t" + term.getOntologyTermName() + " (" + term.getOntologyTermAccession() + ")"); } } - - } - - private String ontologySources() { - return "CBO,FB-DV,NMR,MESH,ECG,PSIMOD,PR,MA,TADS,OBI,SNPO,ATMO,BT,BSPO,GEOSPECIES,CHEBI,LHN,MEGO,pseudo,WB-LS,GO,FHHO,PAE,BILA,OGI,EFO,OPB,SEP,MEDLINEPLUS,BTO,MAT,CARO,NEMO,REX,FB-SP,BIRNLEX,OCRE,TAO,HAO,TGMA,IMR,BHO,BRO,DC-CL,HP,FBbi,EHDAA,SBO,ZFA,PTO,LOINC,GRO,PATO,TTO,WB-BT,ZEA,GRO-CPD,PDQ,OPL,PECO,SO,CPTAC,NDFRT,CPRO,PRO-ONT,COSTART,BCGO,ICPC,SOPHARM,SNOMEDCT,EHDA,FIX,SYMP,XAO,OBOREL,EVOC,DERMLEX,IDOMAL,PEO,ATO,MFO,WHO-ART,IEV,EMAP,FB-BT,AAO,HC,BP-METADATA,PSDS,NCBITAXON,HOM,FAO,ABA-AMB,WB-PHENOTYPE,ENVO,GALEN,BFO,LIPRO,MAO,ACGT-MO,CTONT,UO,PHYFIELD,OGDI,SPD,FB-CV,OMIM,SPO,EP,CDAO,VO,MHC,APO,SBRO,PROPREO,MS,PPIO,SITBAC,DDANAT,SAO,OGR,RS,ICD9CM,CLO,DOID,PTRANS,NIFSTD,MP,MO,PW,AMINO-ACID,ECO,FYPO"; } @Test @@ -77,4 +68,14 @@ public void getAllOntologies() { + " -> " + ontology.getOntologyVersion() + " - " + ontology.getHomepage() + " " + ontology.getContactName()); } } + + @Test + public void getOntologyRoots() { + System.out.println("_____Testing getOntologyRoots()____"); + Map ontologyRoots = client.getOntologyRoots(testOntologyID); + + assertTrue("No ontology roots found for " + testOntologyID, ontologyRoots.size() > 0); + + System.out.println("Found " + ontologyRoots.size() + " roots for " + testOntologyID); + } } diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java index 214631ad..57f53e68 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java @@ -153,7 +153,7 @@ public void getLatestOntologyVersion() { public void getTermsByPartialNameFromSource() { System.out.println("_____Testing getTermsByPartialNameFromSource()____"); - Map> result = client.getTermsByPartialNameFromSource(testSearchTerm, testOntologyID, false); + Map> result = client.getTermsByPartialNameFromSource(testSearchTerm, "all", false); assertTrue("No results found for " + testSearchTerm + " in " + testOntologyID, result.size() > 0); From b4a278a30fbb77c8f0bc02510c5b96f77bdb1828 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Wed, 18 Dec 2013 20:20:15 +0000 Subject: [PATCH 057/111] Ontology Cache is updatable via the settings panel. Accepted ontologies now just a cache of 'valid' ontologies. Removed images for buttons - replaced with FlatButton. --- .../common/ColumnFilterRenderer.java | 3 - .../isacreator/configuration/Ontology.java | 19 +- .../ontologymanager/BioPortal4Client.java | 12 +- .../ontologymanager/BioPortalClient.java | 2 - .../bioportal/io/AcceptedOntologies.java | 4 + .../io/AcceptedOntologiesLoader.java | 57 ++- .../BioPortalQueryEndpoint.java | 45 +-- .../BioPortalSearchBeanResultHandler.java | 2 +- .../settings/GeneralViewerEditor.java | 4 +- .../isacreator/settings/OntologySettings.java | 59 ++- .../isacreator/settings/SettingsScreen.java | 128 ++---- .../bioportal-accepted-ontologies.xml | 374 ------------------ src/main/resources/images/settings/cancel.png | Bin 717 -> 0 bytes .../resources/images/settings/cancel_over.png | Bin 714 -> 0 bytes .../resources/images/settings/confirm.png | Bin 831 -> 0 bytes .../images/settings/confirm_over.png | Bin 817 -> 0 bytes src/main/resources/images/settings/export.png | Bin 771 -> 0 bytes .../resources/images/settings/export_over.png | Bin 764 -> 0 bytes src/main/resources/images/settings/import.png | Bin 726 -> 0 bytes .../resources/images/settings/import_over.png | Bin 723 -> 0 bytes src/main/resources/images/settings/remove.png | Bin 914 -> 0 bytes .../resources/images/settings/remove_over.png | Bin 774 -> 0 bytes 22 files changed, 157 insertions(+), 552 deletions(-) delete mode 100644 src/main/resources/defaults/bioportal-accepted-ontologies.xml delete mode 100644 src/main/resources/images/settings/cancel.png delete mode 100644 src/main/resources/images/settings/cancel_over.png delete mode 100644 src/main/resources/images/settings/confirm.png delete mode 100644 src/main/resources/images/settings/confirm_over.png delete mode 100644 src/main/resources/images/settings/export.png delete mode 100644 src/main/resources/images/settings/export_over.png delete mode 100644 src/main/resources/images/settings/import.png delete mode 100644 src/main/resources/images/settings/import_over.png delete mode 100644 src/main/resources/images/settings/remove.png delete mode 100644 src/main/resources/images/settings/remove_over.png diff --git a/src/main/java/org/isatools/isacreator/common/ColumnFilterRenderer.java b/src/main/java/org/isatools/isacreator/common/ColumnFilterRenderer.java index 70b0d833..faaff042 100644 --- a/src/main/java/org/isatools/isacreator/common/ColumnFilterRenderer.java +++ b/src/main/java/org/isatools/isacreator/common/ColumnFilterRenderer.java @@ -65,9 +65,6 @@ public ColumnFilterRenderer(Font selectedFont, Font unselectedFont) { this.unselectedFont = unselectedFont; setLayout(new BorderLayout()); listCellRenderer = new DefaultListCellRenderer(); - JLabel image = new JLabel(new ImageIcon(getClass() - .getResource("/images/effects/list_image.png"))); - add(image, BorderLayout.WEST); add(listCellRenderer, BorderLayout.CENTER); setBorder(null); } diff --git a/src/main/java/org/isatools/isacreator/configuration/Ontology.java b/src/main/java/org/isatools/isacreator/configuration/Ontology.java index 0e952444..9196d48e 100644 --- a/src/main/java/org/isatools/isacreator/configuration/Ontology.java +++ b/src/main/java/org/isatools/isacreator/configuration/Ontology.java @@ -50,16 +50,13 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class Ontology implements Serializable { - private String ontologyID; - private String ontologyVersion; - private String ontologyDisplayLabel; - private String ontologyAbbreviation; + private String ontologyID, ontologyVersion, ontologyDisplayLabel, ontologyAbbreviation, submissionId; + private String contactName, contactEmail, homepage; + private boolean isFoundry; + private OntologyFormats format; private OntologyBranch subsectionToQuery; - private String contactName; - private String contactEmail; - private String homepage; private Set categories; private boolean isView; @@ -176,6 +173,14 @@ public String getHomepage() { return homepage; } + public String getSubmissionId() { + return submissionId; + } + + public void setSubmissionId(String submissionId) { + this.submissionId = submissionId; + } + public Set getCategories() { return categories; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java index ba824391..1981ec86 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -103,8 +103,16 @@ private Map> convertStringKeyMapToOn for (String ontologyId : toConvert.keySet()) { Ontology ontology = AcceptedOntologies.getAcceptedOntologies().get(ontologyId); if (ontology != null) { - OntologySourceRefObject osro = new OntologySourceRefObject(ontology.getOntologyAbbreviation(), ontologyId, ontology.getOntologyVersion(), ontology.getOntologyDisplayLabel()); - convertedMap.put(osro, toConvert.get(ontologyId)); + OntologySourceRefObject osro = new OntologySourceRefObject(ontology.getOntologyAbbreviation(), + ontologyId, ontology.getOntologyVersion(), ontology.getOntologyDisplayLabel()); + + convertedMap.put(osro, new ArrayList()); + + for(OntologyTerm ontologyTerm : toConvert.get(ontologyId)){ + ontologyTerm.setOntologySourceInformation(osro); + convertedMap.get(osro).add(ontologyTerm); + } + } } return convertedMap; diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java index 2a21f6f0..9af5c794 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java @@ -256,8 +256,6 @@ public Map> getTermsByPartialNameFro } } } - - return result; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java index b9f9ef3c..75ed0fbd 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java @@ -54,6 +54,10 @@ public class AcceptedOntologies { private static Map acceptedOntologies; static { + updateAcceptedOntologies(); + } + + public static void updateAcceptedOntologies() { acceptedOntologies = AcceptedOntologiesLoader.getAcceptedOntologies(); } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java index 6d4746df..5401c774 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologiesLoader.java @@ -21,6 +21,7 @@ import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import java.io.File; +import java.io.FileInputStream; import java.io.IOException; import java.util.*; @@ -33,7 +34,7 @@ */ public class AcceptedOntologiesLoader { - private static final String FILE = "/defaults/bioportal-accepted-ontologies.xml"; + private static final String FILE = "ProgramData/cache/bioportal-ontology-detail.cache"; public static void populateAcceptedOntologies() { @@ -73,11 +74,11 @@ public static void populateAcceptedOntologies() { acceptedOntologyElement.setAttributeNode(name); Attr version = doc.createAttribute("version"); - version.setValue(ontology.getOntologyVersion()); + version.setValue(ontology.getSubmissionId()); acceptedOntologyElement.setAttributeNode(version); Attr uri = doc.createAttribute("uri"); - uri.setValue(ontology.getOntologyVersion()); + uri.setValue(ontology.getHomepage()); acceptedOntologyElement.setAttributeNode(uri); Attr id = doc.createAttribute("id"); @@ -88,32 +89,17 @@ public static void populateAcceptedOntologies() { } - String baseDir = System.getProperty("basedir"); - - if (baseDir == null) { - try { - baseDir = new File(".").getCanonicalPath(); - } catch (IOException e) { - e.printStackTrace(); - } - } - // write the content into xml file TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(doc); - String fullPath = baseDir + File.separator + "src" + File.separator + "main" + File.separator + "resources" + FILE; - System.out.println("Printing out file " + fullPath); + String fullPath = FILE; File outputFile = new File(fullPath); StreamResult result = new StreamResult(outputFile.getAbsolutePath()); - - //output to standard output for debugging - //StreamResult result = new StreamResult(System.out); - transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); @@ -129,21 +115,34 @@ public static void populateAcceptedOntologies() { public static Map getAcceptedOntologies() { - XPathReader reader = new XPathReader(AcceptedOntologiesLoader.class.getResourceAsStream(FILE)); - Map acceptedOntologies = new HashMap(); - NodeList sections = (NodeList) reader.read("/acceptedOntologies/acceptedOntology", XPathConstants.NODESET); + if(!new File(FILE).exists()) { + // then create it + new File(FILE).getParentFile().mkdirs(); + populateAcceptedOntologies(); + } + + try { + XPathReader reader = new XPathReader(new FileInputStream(FILE)); + NodeList sections = (NodeList) reader.read("/acceptedOntologies/acceptedOntology", XPathConstants.NODESET); + + if (sections.getLength() > 0) { + for (int sectionIndex = 0; sectionIndex <= sections.getLength(); sectionIndex++) { + String id = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@id", XPathConstants.STRING); + String abbreviation = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@abbreviation", XPathConstants.STRING); + String name = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@name", XPathConstants.STRING); + String version = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@version", XPathConstants.STRING); + String homepage = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@uri", XPathConstants.STRING); - if (sections.getLength() > 0) { - for (int sectionIndex = 0; sectionIndex <= sections.getLength(); sectionIndex++) { - String id = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@id", XPathConstants.STRING); - String abbreviation = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@abbreviation", XPathConstants.STRING); - String name = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@name", XPathConstants.STRING); - String version = (String) reader.read("/acceptedOntologies/acceptedOntology[" + sectionIndex + "]/@version", XPathConstants.STRING); + Ontology ontology = new Ontology(id, version, abbreviation, name); + ontology.setHomePage(homepage); - acceptedOntologies.put(id, new Ontology(id, version, abbreviation, name)); + acceptedOntologies.put(id, ontology); + } } + } catch (IOException ioe) { + ioe.printStackTrace(); } return acceptedOntologies; diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java index 98474219..dafd8a15 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java @@ -100,7 +100,6 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre method.addParameter("apikey", API_KEY); method.addParameter("pagesize", "500"); - try { setHostConfiguration(client); } catch (Exception e) { @@ -124,50 +123,48 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre public Map getAllOntologies() { Map result = new HashMap(); - String content = queryOntologyEndpoint(); StringReader reader = new StringReader(content); - JsonReader rdr = Json.createReader(reader); + JsonArray array = rdr.readArray(); - JsonStructure generalStructure = rdr.read(); - if (generalStructure instanceof JsonArray) { - // process array - JsonArray array = (JsonArray) generalStructure; - System.out.println("There are " + array.size() + " items..."); - for (JsonObject resultItem : array.getValuesAs(JsonObject.class)) { - addOntology(result, resultItem); - } - } else { - // process object - JsonObject obj = (JsonObject) generalStructure; - addOntology(result, obj); + for (JsonObject resultItem : array.getValuesAs(JsonObject.class)) { + addOntology(result, resultItem); } return result; } private void addOntology(Map result, JsonObject resultItem) { - JsonValue summaryOnly = resultItem.get("summaryOnly"); + JsonObject ontology = resultItem.getJsonObject("ontology"); + JsonValue summaryOnly = ontology.get("summaryOnly"); if (summaryOnly != null) { - Ontology newOntology = new Ontology(resultItem.getString("@id"), "version", resultItem.getString("acronym"), resultItem.getString("name")); - + Ontology newOntology = new Ontology(ontology.getString("@id"), "version", ontology.getString("acronym"), ontology.getString("name")); if (!newOntology.getOntologyAbbreviation().contains("test") && - !newOntology.getOntologyDisplayLabel().contains("test")) + !newOntology.getOntologyDisplayLabel().contains("test")) { + + String version = resultItem.get("version").toString(); + JsonNumber submissionId = resultItem.getJsonNumber("submissionId"); + String homepage = resultItem.get("homepage").toString(); + + newOntology.setHomePage(homepage); + newOntology.setOntologyVersion(version); + newOntology.setSubmissionId(submissionId.toString()); + result.put(resultItem.getString("@id"), newOntology); + } + } } - public String queryOntologyEndpoint() { - return queryOntologyEndpoint(null); - } - public String queryOntologyEndpoint(String ontology) { + public String queryOntologyEndpoint() { try { HttpClient client = new HttpClient(); - GetMethod method = new GetMethod(BioPortal4Client.REST_URL + "ontologies" + (ontology != null ? "/" + ontology : "") + "?apikey=" + API_KEY); + //http://data.bioontology.org/submissions + GetMethod method = new GetMethod(BioPortal4Client.REST_URL + "submissions?apikey=" + API_KEY); try { setHostConfiguration(client); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalSearchBeanResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalSearchBeanResultHandler.java index fd098518..f145ec88 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalSearchBeanResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/xmlresulthandlers/BioPortalSearchBeanResultHandler.java @@ -119,7 +119,7 @@ private OntologyTerm createBioPortalOntologyFromSearchResult(SearchBeanDocument. private OntologySourceRefObject createOntologySourceReferenceFromSearchResult(SearchBeanDocument.SearchBean searchResult) { OntologySourceRefObject refObject = new OntologySourceRefObject(); - if (AcceptedOntologies.getOntologyAbbreviationFromId(searchResult.getOntologyId()) != null) { + if (AcceptedOntologies.getAcceptedOntologies().get(searchResult.getPreferredName()) != null) { refObject.setSourceName(AcceptedOntologies.getOntologyAbbreviationFromId(searchResult.getOntologyId())); refObject.setSourceDescription(searchResult.getOntologyDisplayLabel()); refObject.setSourceVersion(searchResult.getOntologyVersionId()); diff --git a/src/main/java/org/isatools/isacreator/settings/GeneralViewerEditor.java b/src/main/java/org/isatools/isacreator/settings/GeneralViewerEditor.java index eb7b3de2..02e70870 100644 --- a/src/main/java/org/isatools/isacreator/settings/GeneralViewerEditor.java +++ b/src/main/java/org/isatools/isacreator/settings/GeneralViewerEditor.java @@ -137,9 +137,9 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { String term = propertyChangeEvent.getNewValue().toString(); if (term != null) { updateEditor(term); - removeTerm.setVisible(true); + removeButton.setVisible(true); } else { - removeTerm.setVisible(false); + removeButton.setVisible(false); } } }); diff --git a/src/main/java/org/isatools/isacreator/settings/OntologySettings.java b/src/main/java/org/isatools/isacreator/settings/OntologySettings.java index 65d8e472..05a68493 100644 --- a/src/main/java/org/isatools/isacreator/settings/OntologySettings.java +++ b/src/main/java/org/isatools/isacreator/settings/OntologySettings.java @@ -41,6 +41,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.autofilteringlist.ExtendedJList; import org.isatools.isacreator.common.ColumnFilterRenderer; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.effects.borders.RoundedBorder; import org.isatools.isacreator.gui.menu.ISAcreatorMenu; import org.isatools.isacreator.io.CustomizableFileFilter; @@ -48,12 +50,16 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.io.UserProfileManager; import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.ontologymanager.OntologyManager; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologiesLoader; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import javax.swing.*; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.File; @@ -69,11 +75,12 @@ public class OntologySettings extends SettingsScreen { private JLabel loadedOntologyStats; private JLabel ontologyTermInformation; - + private FlatButton updateCacheButton; private JFileChooser jfc; private Map userOntologyHistory; + private JLabel information; public OntologySettings(ISAcreatorMenu menu) { this.menu = menu; @@ -83,7 +90,9 @@ public OntologySettings(ISAcreatorMenu menu) { setLayout(new BorderLayout()); setOpaque(false); - add(createOntologyConfigPanel(), BorderLayout.NORTH); + add(createOntologySourceUpdatePanel(), BorderLayout.NORTH); + add(createOntologyConfigPanel(), BorderLayout.CENTER); + setBorder(new TitledBorder( new RoundedBorder(UIHelper.LIGHT_GREEN_COLOR, 9), "configure ontologies", TitledBorder.DEFAULT_JUSTIFICATION, @@ -92,6 +101,48 @@ public OntologySettings(ISAcreatorMenu menu) { } + private JPanel createOntologySourceUpdatePanel() { + JPanel informationPanel = new JPanel(new GridLayout(1, 2)); + + information = UIHelper.createLabel(String.format("%d ontologies are currently available.", AcceptedOntologies.getAcceptedOntologies().size()), UIHelper.VER_10_PLAIN, UIHelper.GREY_COLOR); + informationPanel.add(information); + + updateCacheButton = new FlatButton(ButtonType.BLUE, "Update Ontology Detail Cache"); + updateCacheButton.addActionListener(new ActionListener() { + + public void actionPerformed(ActionEvent actionEvent) { + + Thread updateCacheThread = new Thread(new Runnable() { + public void run() { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + updateCacheButton.setText("Updating"); + updateCacheButton.setEnabled(false); + + } + }); + AcceptedOntologiesLoader.populateAcceptedOntologies(); + AcceptedOntologies.updateAcceptedOntologies(); + + SwingUtilities.invokeLater(new Runnable() { + public void run() { + information.setText(String.format("Update complete - %d ontologies are currently available.", AcceptedOntologies.getAcceptedOntologies().size())); + updateCacheButton.setText("Update Ontology Detail Cache"); + updateCacheButton.setEnabled(true); + + } + }); + + } + }); + updateCacheThread.start(); + } + }); + informationPanel.add(updateCacheButton); + + return informationPanel; + } + private JPanel createOntologyConfigPanel() { JPanel configContainer = new JPanel(new GridLayout(1, 2)); configContainer.setOpaque(false); @@ -152,10 +203,10 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { if (historyTerm != null) { updateOntologyTermInfo(userOntologyHistory.get(historyTerm)); ontologyTermInformation.setVisible(true); - removeTerm.setVisible(true); + removeButton.setVisible(true); } else { ontologyTermInformation.setVisible(false); - removeTerm.setVisible(false); + removeButton.setVisible(false); } } }); diff --git a/src/main/java/org/isatools/isacreator/settings/SettingsScreen.java b/src/main/java/org/isatools/isacreator/settings/SettingsScreen.java index c3344e5a..4aa00d25 100644 --- a/src/main/java/org/isatools/isacreator/settings/SettingsScreen.java +++ b/src/main/java/org/isatools/isacreator/settings/SettingsScreen.java @@ -38,12 +38,12 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.settings; import org.apache.log4j.Logger; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import javax.swing.*; import java.awt.*; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.awt.event.MouseListener; +import java.awt.event.*; import java.util.Properties; /** @@ -54,21 +54,10 @@ public abstract class SettingsScreen extends JPanel { protected final static Logger log = Logger.getLogger(SettingsScreen.class.getName()); - static final ImageIcon EXPORT = new ImageIcon(SettingsScreen.class.getResource("/images/settings/export.png")); - static final ImageIcon EXPORT_OVER = new ImageIcon(SettingsScreen.class.getResource("/images/settings/export_over.png")); - static final ImageIcon IMPORT = new ImageIcon(SettingsScreen.class.getResource("/images/settings/import.png")); - static final ImageIcon IMPORT_OVER = new ImageIcon(SettingsScreen.class.getResource("/images/settings/import_over.png")); - static final ImageIcon REMOVE = new ImageIcon(SettingsScreen.class.getResource("/images/settings/remove.png")); - static final ImageIcon REMOVE_OVER = new ImageIcon(SettingsScreen.class.getResource("/images/settings/remove_over.png")); - static final ImageIcon CONFIRM_DELETION = new ImageIcon(SettingsScreen.class.getResource("/images/settings/confirm.png")); - static final ImageIcon CONFIRM_DELETION_OVER = new ImageIcon(SettingsScreen.class.getResource("/images/settings/confirm_over.png")); - static final ImageIcon CANCEL_DELETION = new ImageIcon(SettingsScreen.class.getResource("/images/settings/cancel.png")); - static final ImageIcon CANCEL_DELETION_OVER = new ImageIcon(SettingsScreen.class.getResource("/images/settings/cancel_over.png")); - protected Properties settings; protected Properties propertiesOverride; - protected JLabel removeTerm; + protected FlatButton removeButton; protected abstract boolean updateSettings(); @@ -88,47 +77,25 @@ protected JPanel createControlPanel() { confirmDeletionContainer.setOpaque(false); confirmDeletionContainer.setVisible(false); - final JLabel confirmRemovalButton = new JLabel(CONFIRM_DELETION); - - confirmRemovalButton.addMouseListener(new MouseAdapter() { - - public void mouseEntered(MouseEvent mouseEvent) { - confirmRemovalButton.setIcon(CONFIRM_DELETION_OVER); - } - - public void mouseExited(MouseEvent mouseEvent) { - confirmRemovalButton.setIcon(CONFIRM_DELETION); - } - public void mousePressed(MouseEvent mouseEvent) { - confirmRemovalButton.setIcon(CONFIRM_DELETION); + FlatButton confirmButton = new FlatButton(ButtonType.RED, "Confirm"); + confirmButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { confirmDeletionContainer.setVisible(false); performDeletionLogic(); } - }); - final JLabel cancelRemovalButton = new JLabel(CANCEL_DELETION); - - cancelRemovalButton.addMouseListener(new MouseAdapter() { - - public void mouseEntered(MouseEvent mouseEvent) { - cancelRemovalButton.setIcon(CANCEL_DELETION_OVER); - } - - public void mouseExited(MouseEvent mouseEvent) { - cancelRemovalButton.setIcon(CANCEL_DELETION); - } - public void mousePressed(MouseEvent mouseEvent) { - cancelRemovalButton.setIcon(CANCEL_DELETION); + FlatButton cancelButton = new FlatButton(ButtonType.GREY, "Cancel"); + confirmButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { confirmDeletionContainer.setVisible(false); } - }); - confirmDeletionContainer.add(confirmRemovalButton); - confirmDeletionContainer.add(cancelRemovalButton); + confirmDeletionContainer.add(cancelButton); + confirmDeletionContainer.add(confirmButton); // add main buttons! @@ -136,82 +103,35 @@ public void mousePressed(MouseEvent mouseEvent) { mainButtonContainer.setLayout(new BoxLayout(mainButtonContainer, BoxLayout.LINE_AXIS)); mainButtonContainer.setPreferredSize(new Dimension(130, 30)); - final JLabel exportButton = new JLabel(EXPORT); - exportButton.addMouseListener(new MouseAdapter() { - - - public void mouseEntered(MouseEvent mouseEvent) { - exportButton.setIcon(EXPORT_OVER); - } - - public void mouseExited(MouseEvent mouseEvent) { - exportButton.setIcon(EXPORT); - } - - public void mousePressed(MouseEvent mouseEvent) { - exportButton.setIcon(EXPORT); - + FlatButton exportButton = new FlatButton(ButtonType.GREEN, "Export"); + exportButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { performExportLogic(); - - // ask where to export the library to! } - }); - final JLabel importButton = new JLabel(IMPORT); - importButton.addMouseListener(new MouseListener() { - public void mouseClicked(MouseEvent mouseEvent) { - - } - - public void mouseEntered(MouseEvent mouseEvent) { - importButton.setIcon(IMPORT_OVER); - } - - public void mouseExited(MouseEvent mouseEvent) { - importButton.setIcon(IMPORT); - } - - public void mousePressed(MouseEvent mouseEvent) { - importButton.setIcon(IMPORT); - + FlatButton importButton = new FlatButton(ButtonType.GREEN, "Import"); + importButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { performImportLogic(); - // ask where to export the library to! - - } - - public void mouseReleased(MouseEvent mouseEvent) { - } }); - removeTerm = new JLabel(REMOVE); - removeTerm.addMouseListener(new MouseAdapter() { - - - public void mouseEntered(MouseEvent mouseEvent) { - removeTerm.setIcon(REMOVE_OVER); - } - - public void mouseExited(MouseEvent mouseEvent) { - removeTerm.setIcon(REMOVE); - } - - public void mousePressed(MouseEvent mouseEvent) { - removeTerm.setIcon(REMOVE); + removeButton = new FlatButton(ButtonType.RED, "Remove"); + removeButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { confirmDeletionContainer.setVisible(true); } - - }); - removeTerm.setVisible(false); + + removeButton.setVisible(false); mainButtonContainer.add(exportButton); mainButtonContainer.add(Box.createHorizontalStrut(5)); mainButtonContainer.add(importButton); mainButtonContainer.add(Box.createHorizontalStrut(5)); - mainButtonContainer.add(removeTerm); + mainButtonContainer.add(removeButton); controlPanel.add(mainButtonContainer); controlPanel.add(confirmDeletionContainer); diff --git a/src/main/resources/defaults/bioportal-accepted-ontologies.xml b/src/main/resources/defaults/bioportal-accepted-ontologies.xml deleted file mode 100644 index 57db3867..00000000 --- a/src/main/resources/defaults/bioportal-accepted-ontologies.xml +++ /dev/null @@ -1,374 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/main/resources/images/settings/cancel.png b/src/main/resources/images/settings/cancel.png deleted file mode 100644 index e4b4dd67630d94b65a4376f4ae6f6f31bdae73f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 717 zcmV;;0y6!HP)|1BgyEpVxep~a?hT|sJ~y3=Q6;R zl^bcnSDvhKC^)l79v#ubFPGP)D}I91$$IQFZm@E}*i|N|B>gpXFF%ae3?23IAQ1Cr znS9detd1FcmFeu`#5tp*N!E_4!@xp5(c87iuvbCZ19j zt?k10m$B3Z3;*FrvL*0AeR?S=$oQU00000NkvXXu0mjfEFMQL diff --git a/src/main/resources/images/settings/cancel_over.png b/src/main/resources/images/settings/cancel_over.png deleted file mode 100644 index e154f5344767fb041c4cde848aac96e6bb3913fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 714 zcmV;*0yX`KP)%eCMg~s?&n*=Q%W);x%sVw-5!Fb zAS44p5k@Agrup0dl8t*y2)YLQeaPs&mNM#QNt*A|kl<%~_V)Y={Sgh0pGh}Y@3TH8 z-GWO5>V|&5ui{rqYnk0T*zpj=LA0v8ICCoXo71;cfjT1U)hy(aOHyTE1Y&ZCpkaT! zAoPt1^x~Vpmned#X7f6lJ0SfCSsyFA6oh}-(DTlaqSyu~4=g%d@93+V{W6lMIlu zl93jC?a3NJ&Y4B>C`2p2TwYgFN~$y+NJ$jY4kf&qp5#GGWjMmeEn*MJwXY|ra%mu~ z-4tWj**JP)ELMnZuuQUnRR~T9D$RWDu}{%pBh#3fpn`}v<&5}6ysq!4=Mprs*c3^& zmUBf+0qJ^368l1kLSu~$X`^oz9eFl`OX$`R-yohsZ_H4o<|PRyRcV6Lja-vh+e;(0$$I(&FWSv1&% w?Jr}c3l{#vNjc7=fPjF2fPjE4$EN@T09~FMRC9+`j{pDw07*qoM6N<$f}hhvKL7v# diff --git a/src/main/resources/images/settings/confirm.png b/src/main/resources/images/settings/confirm.png deleted file mode 100644 index f0f702418c435a1ebe4808692ed10e60cb3c1108..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 831 zcmV-F1Hk-=P)EKxu}KtMpi|Ax{mI=!}b=K*($Th6Vwwe_s? zC+(dc_wn&gxy)U{t;Q|VPH}5JT?=J40%y|)?$muWck37lgRkF zjOV^FUjo1CAWI`-y#tKT(UgqEJVWTkrZ2XQUnYqOn#ZJ(Yru`ggjOyl)PA!`@4svp zhMA~6i=ew$j5$Yaq^mOI@?OItyU-(}&yZdUx-L{eNEbFlKVn&lWj`>7X|oQ(m1#qK za7}*7A*=Zay0x@H%jZ_<>ENCwNb8#f$?l{u9E+oHK!|K(@fFAuEU00Tsq2kiNFBRf zF-R#H@3#MK>zmTVAplzNFM@4luVWHPu}ks#!tH{f=dbJZ`Rlu5yJ)E<+F2de*yT&m zO?7y4{{+q^<^(KXmtDp8+(U*BLyR|5NKU{$A|-{a0UOP6>-LdUVCn2?5jldzIYl=w z-!BN_I%KOx4w8G0&^6PCtaOXUEIRwmIy-d8PNb<>BPYQ{lI&bT#?=c|x^lisRVHia zLuyBm&w*m+QD{%hYt;rFiTS^LFLRM3`AqwV8NK}Yf~w0KbU6A%yZfncj-G40?J zP92BeZ>0OQKUAcd1jXjwCKE7Y!mWjAv8Le_O4^Sswx*8{6grH<&Y zcxu_?e>dE^ZO3yMl8fX)_`yB?52w?yPXPe|0RaI4Gmf7E3;-??Kh48-JGTG;002ov JPDHLkV1jbih=c$D diff --git a/src/main/resources/images/settings/confirm_over.png b/src/main/resources/images/settings/confirm_over.png deleted file mode 100644 index 1cb05618993dfae49089c1c54f8625b4054a822c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 817 zcmV-11J3-3P)W!49!0rhO>EOvi!=BlgRkFiszBGUJSchAWI?T zao3oip+zzm>r5~%)NL_!{4z;Q&;}L_Y!e!dr?kD@pl4(oatI+3If7EDM7z7sbAqH683-&S4=tgq zrwVEsa_+O!A6qo9NpZ^sama2rSg~#4)*Evv~Na`%Yc06QE2b1 zYt#l6iP^t=FSC&(`Ap;Sm@Y0pGeJ$7&1Tf^e{!ucw9S{iS47FFgHud)Iaa3_3Vfuc zz-~DcHcV*GB1^=BMItErkyT&kxyCv4daGO?qe&5>&7idWW@C+S`b00 z>qL;k$t3iQBUasiLdYZ3t}8=tV6laa>p<#wZ`rN~Mx9D5(O+}avgQA7xOJO`XHX;; v$!q_Ed;1?wrQ?V^JUl!+JUrGMKLr>7UQ0O>TE~GB00000NkvXXu0mjf=G}Gj diff --git a/src/main/resources/images/settings/export.png b/src/main/resources/images/settings/export.png deleted file mode 100644 index 8f52acac959ddcaf4ae0f255226245ecc10bcb40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 771 zcmV+e1N{7nP)9pMC|8@AJ)V8RW^37GHdS$g_%no`0D27k$NVt+f| z&(H6>-5Uk#wY>mA04abJKnfszEZg@r{(Lw(k}8oBZy39jQhfiqc>Lc%8hZemOI3P& zD*&f06`-y^&2bZerX2v)0>lZ}qpgr}laH|2)6=tiTV8wIOov}ab*=g$9Lt3#D0^&Y z7TlYgUw3Fbz!=-s>Nbj@!C3oVi|5V%l7U*5BdjMJ=qmIRm zNK9v>H&b3P#F=Ap^Hy3L;Tvy}R2pL9AWV9VWmvq;I-FHf(iW>JE9p<+Yk@l^;Vq>v z!=enBxdJE!g#QnV^A<^Eoz-lnMK->wM^=NAE&yrjH^FuUgO#RQE40ti*tr$QYzvq7eQe>|_ zR@wf1NPvQE&!o8$?O@?gw*XQADOdpMW%gHq0RSE|GiD#D^j!b|002ovPDHLkV1nH9 BVfO$4 diff --git a/src/main/resources/images/settings/export_over.png b/src/main/resources/images/settings/export_over.png deleted file mode 100644 index e12e5c4c8f1bc948e79fb0c7af3cebcd2cd36cb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 764 zcmVP~`^E3EEHN5qSNeEZI?kHsJ#Zn&c<_ z`T6)h6-5C70RaI4&kZwQ=f%bQQ>ij3>7Kb8DdzU}>%)r+k_2caRpqg*5jc%p0(JA8 zgY-%TXweg(MgnmT_GlQHH~$|t`{n!Ty)B2%d#&0@k6l4^qsC%f%eBWTdu^9CxS!sw z@6dOGIkvCUedI%nxwhSi?N+Tl?;FQ@ZjB5+C(al6)ykZQgPGKWN?5dWK%X0c|-qKkl!h>af7uY zux=*hYN{aF?A37xvROGWFUM)cpmt0SyYWX#2BoIHv_GKk=>Ia57;`$4>D#5)&t3(o;}i^ET^nR>?_Qtfp*bJcq3f+!+aPC1V9P zm4KOB1jRu3f3i4_NGiLmW-~3a>CG`rI+m`jM+*{qS2e^;C%RX#-MY67v1x;i*9hK{ zude*Q#CYX4ZnG!}bkmbu3iQ_lnmYJd@=bq!h$hWw{Ff&KUQYQcMj+1q$&t?Rx u?07k4fC9!dX{AIvARr(hAmA|k7GMBIl{NBsdc>;$00003{LPA19!oJ}kwD|RBp379qSo-JBA2uf>`+=XGj7DVltb2C$aqjhQZmu`` z;-ohL2c65*%BW-%7z|zW@(%Aa8m}+TI@(JoiNS|3G6uEi&G{MM=y%One{nK?$;e~$ z-kRrZ#NG>}rKXp6P9y2|h=b)=%MgJBUBn9dt){1@E7EyMI%|37!5Dq2lmPiX$?U!j z=Iwb!zNHL3XN;4kfH&L`-?e1$fJ2s;GtAzoQV#qb@3D>=>g1imI|7be!{`p*@Ny^e zOWLheJLWOOW|HGHxIz4S{_!=)8yig7#FtT#5V`@3e5# zk@-d?@&hCYqCM8cF54^n({^Z4u$5mQq1)vG$>kaPKH>{$7&mVD^`mA&Pvo z_OgBzh?3Im`)%^-Mkvt=gj$5tK-G)I5Gn5|Dl=Oco`{O>MOpw`xgytJ5*azea*dLB z>_trCq@_g7Clf_qMpnUCRATs{mTsh2OMK~5@0=>4BiXYYK9!TUxvqT>`l#wZMo%ve zxI@|uw0Er?Kjb~qaAn(sK>7{P`#si4!xMdwBXSH8c5kX;VLJ569JDZeQ3W`z1_`er z&xpu9;UAOSL4IZSZ47Tc!kG@0a6an4n?%d4sSw=%ghIKNYIiYVSDb4(r=DlG{=2~$ zbs(ymK-9S@9ki?Xr{fl*eMnwlyaqHK`&mLlLPA2q82k}n084}joY=Ns_5c6?07*qo IM6N<$f~?$GW&i*H diff --git a/src/main/resources/images/settings/import_over.png b/src/main/resources/images/settings/import_over.png deleted file mode 100644 index 15bbb5d64e31d988fb3233e3a716ed4f1960c677..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 723 zcmV;^0xbQBP)n`0Y+kL<0D>2kTd zs;gd=+1g4-NJvOX*fea17LSgObD2sRGynVg`s#pWzwu`$qY>F1>wdqvFj% zPWlvZ(1}c~j7mm{&%MgJBUBn#vt){1@E7EyJItzK`-WYwTlmPi1$?U!j z=GA#czM>30XN;4^fH&L`-?e1$fJ2s;GtAzoQV#qJ&#{gg>g1WiI|7bez~~O|@Ny^e z3);6g7w;(Al{%KuoMgDg(TjN_heJLWGm!ZgGHxIz4S{_!=`HjQvnOR1o@So=^%xObE`|1L>&F#Ai(5Jf&( zds)8>L`iA({V{rVBa~k?dIxAInLrT-QDbeN^>|(bJ0q zZjm+v?Okif4|$I?oZB`bkbVR7{;un!;fX%T5jlnkyEj#_Fdcej4q6z#r~({UgM=55 zXGG+l@b^jXAip&GHiowz;7o@~I9co4O`_$esSw=%ghIKNYIinbSDb4(r=I71eY?RK zbs(ymK-9T09rU683-HF@SNd7f|A$`^5)u*;62f>CU;x!s0u#HL#yS81002ovPDHLk FV1g!gPXzz~ diff --git a/src/main/resources/images/settings/remove.png b/src/main/resources/images/settings/remove.png deleted file mode 100644 index 7be88491fa967f959cc5d3c665c4854325c77b41..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 914 zcmV;D18w|?P)BAE;#wV8Xato5E$(a-n@b8i!5pGQu-M2U z78ZMYg@vFq>o;NUxe0rRm3ae`$$RsD%zp2idAr6qapJ^@6DLjvP&V{)E^Oa>giM*V zNSYyyNE@U<{?ps$z=K2pRms%)%&ikp=LQxe0%(%iGQ4?{Vg0f6x$7I*wbT6k_FejF z1k{wCTPmGl_W2AVSlF1IecYt}EZPQ)tW*Co=2XGZ95ljwmI`c(#?M=O707sKhU9;M z{P2j&ec<^MvIQAlqw!g52_N%Yus#K}5ACw@ zH>iJ9)*+qagF$KsXor}?K+ORZdFcBXQ-s#3?+x4xTn+mg1vc*!S@C!hPcJ47CG<)C zF<+iOGb``fX5!YgnYej9w%lI2_s|}nB)n+`ry1b1JZk4L$4i*&lYc)R-p8qrD|S^B zQ}_XEJRWn{=aFv``x(U)iIds5Cx3)nXTgFLlHzj*qB zv?{SafIH43{u*QI~9)K{g5m@JAe`a>5 zn42n|q;!)_%$B2hlR13QguzT)pW2tMnvvZT-9nxQB%C&nDdXldDh1Xn-E?Gd08pTP z*jEaBPW5-z8qZ%K(Usnj1^Jr)ICX;x^`qGL_2q&IZ_nsgf=0@h%8I;*QZT<*nPKY% z3aKnNVFWFs4$fO(W>BP?DdNelr6$EU#mf5+tgCrWtWs%I>~YEs>!G+HkK^P#q)Vs@ zwVzO*e5=M(bp7L0q4fe)R~nLf8cZ5vuWiR8`?T!&X+KMzm9a8sqXK8ttU?s5wxUgHQ-wlQQs#^ z5)t%+)iT0=MMPccj>pemSbdI3gbMxXpWkchpP`*Vku~){!)FPFW+*-U*-F$c&3`a^ zol%ve+0pnN`oHly)V@-4XJhdkB#8(*;tf@Jai}$_Ed&U-jELGOFrvU7J}dZp^mXv% z+A%Ql`HQhcjeFFx4wr=xMLxH9$rgS&h&-XOYml2$`w8=ReV8wJTD%jJd=et*W1vs+ zPlCFTMNsRFWPZpPM2gd_0Ej`K!Y2>-Isk337oYlEsjE~Lk=AGDhvdGGfL}JTd&>k!J!qN z1agR8g9)sWw;a}N6rS_|oSoFOH>HF)^>Q991v9LG3?ubq)hd1UW(^G zl5kViHUTS%Y7+g(kIGU$MENGeZPvb)D1>qa0(z7JdGNuInIcKAN8p*gBqzxYmIsnq zrow2k=ajv9DNe|9oSa<$ol4X$ke{5%F{RFb94fS4rSgiG(9>kn9J{u~Bm1=0f9!9` z(t=YTdi){zJo$e&^A9KCIGKO8XwjlYix%zu+CKpX02lmK=_@r3Bme*a07*qoM6N<$ Ef;=x`L;wH) From d2d16ca6a54a5d3a359ac2e3a14ecfcda8e81490 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Thu, 19 Dec 2013 15:06:20 +0000 Subject: [PATCH 058/111] Annotator now working, albeit inefficiently since it has to do an extra call out to the ontology term metadata service to get the actual term we are going to annotate with (rather than just the ID). Term metadata service working. Updated to use import layer 1.7.4. --- pom.xml | 2 +- .../isacreator/api/ImportConfiguration.java | 3 - .../io/exportisa/ISAFileOutput.java | 2 +- .../logic/impl/AnnotatorSearchClient.java | 42 ++----- .../ontologymanager/BioPortal4Client.java | 12 +- .../ontologymanager/BioPortalClient.java | 1 - .../BioPortalAnnotatorResultHandler.java | 97 +++++++++++++++++ ...java => BioPortalSearchResultHandler.java} | 103 ++++++++++++++---- .../validateconvert/ui/ValidateUI.java | 5 +- .../wizard/MicroarrayCreationAlgorithm.java | 2 +- .../logic/impl/AnnotatorSearchClientTest.java | 4 +- .../ontologymanager/BioPortalClient4Test.java | 16 ++- 12 files changed, 221 insertions(+), 68 deletions(-) create mode 100644 src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java rename src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/{BioPortalQueryEndpoint.java => BioPortalSearchResultHandler.java} (63%) diff --git a/pom.xml b/pom.xml index 7927f830..2dd6e60b 100644 --- a/pom.xml +++ b/pom.xml @@ -415,7 +415,7 @@ org.isatools import_layer - 1.6.3 + 1.6.4 uk.ac.ebi diff --git a/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java b/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java index babf6e6e..d1a06989 100644 --- a/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java +++ b/src/main/java/org/isatools/isacreator/api/ImportConfiguration.java @@ -48,15 +48,12 @@ public boolean loadConfiguration(){ log.info("Setting config dir with " + configDir); ConfigurationManager.loadConfigurations(configDir); - ApplicationManager.setCurrentDataReferenceObject(); - ISAcreatorProperties.setProperty(ISAcreatorProperties.CURRENT_CONFIGURATION, new File(configDir).getAbsolutePath()); }else{ System.out.println(configParser.getProblemLog()); } - return !configParser.isProblemsEncountered(); } diff --git a/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java b/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java index 799926f7..14c2e623 100644 --- a/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java +++ b/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java @@ -37,7 +37,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.io.exportisa; -import org.apache.axis.utils.StringUtils; +import org.apache.commons.lang.StringUtils; import org.isatools.isacreator.gui.DataEntryForm; import org.isatools.isacreator.io.exportisa.exportadaptors.ISASectionExportAdaptor; import org.isatools.isacreator.io.importisa.investigationproperties.InvestigationFileSection; diff --git a/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java b/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java index f10aad3d..acb6a8f7 100644 --- a/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java +++ b/src/main/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClient.java @@ -5,9 +5,8 @@ import org.apache.commons.httpclient.methods.PostMethod; import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; +import org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers.BioPortalAnnotatorResultHandler; import org.isatools.isacreator.ontologymanager.bioportal.model.AnnotatorResult; -import org.isatools.isacreator.ontologymanager.bioportal.utils.BioPortalXMLModifier; -import org.isatools.isacreator.ontologymanager.bioportal.xmlresulthandlers.BioPortalAnnotatorResultHandler; import uk.ac.ebi.utils.io.DownloadUtils; import java.io.File; @@ -27,29 +26,29 @@ */ public class AnnotatorSearchClient { - public static final String BASE_QUERY_URL = "http://rest.bioontology.org/obs/annotator"; + public static final String BASE_QUERY_URL = "http://data.bioontology.org/annotator"; public Map> searchForTerms(Set terms) { - return searchForTerms(terms, AcceptedOntologies.getAllowedOntologyIds(new HashSet()), true); + return searchForTerms(terms, AcceptedOntologies.getAllowedOntologyAcronyms(new HashSet()), true); } public Map> searchForTerms(Set terms, String ontologiesToSearchOn, boolean wholeWordOnly) { try { + String flattenedTerms = flattenSetToString(terms); + HttpClient client = new HttpClient(); PostMethod method = new PostMethod(BASE_QUERY_URL); // Configure the form parameters method.addParameter("wholeWordOnly", wholeWordOnly ? " true" : "false"); - method.addParameter("scored", "true"); - method.addParameter("ontologiesToKeepInResult", ontologiesToSearchOn); - method.addParameter("isVirtualOntologyId", "true"); - method.addParameter("withSynonyms", "true"); - method.addParameter("textToAnnotate", flattenSetToString(terms)); + + method.addParameter("ontologies", ontologiesToSearchOn); + method.addParameter("text", flattenedTerms); method.addParameter("apikey", "fd88ee35-6995-475d-b15a-85f1b9dd7a42"); try { HostConfiguration configuration = new HostConfiguration(); - configuration.setHost("http://rest.bioontology.org"); + configuration.setHost("http://data.bioontology.org"); configuration.setProxy(System.getProperty("http.proxyHost"), Integer.valueOf(System.getProperty("http.proxyPort"))); client.setHostConfiguration(configuration); } catch (Exception e) { @@ -61,7 +60,7 @@ public Map> searchForTerms(Set term String contents = method.getResponseBodyAsString(); method.releaseConnection(); - return processContent(contents, terms); + return processContent(contents, flattenedTerms, terms); } } catch (Exception e) { e.printStackTrace(); @@ -70,28 +69,11 @@ public Map> searchForTerms(Set term return null; } - private Map> processContent(String content, Set terms) throws FileNotFoundException { - - File fileWithNameSpace = BioPortalXMLModifier.addNameSpaceToFile( - createFileForContent(content), "http://bioontology.org/bioportal/annotator#", ""); - + private Map> processContent(String content, String originalText, Set terms) { BioPortalAnnotatorResultHandler handler = new BioPortalAnnotatorResultHandler(); - - System.out.println("File saved in " + fileWithNameSpace.getAbsolutePath()); - - return handler.getSearchResults(fileWithNameSpace.getAbsolutePath(), terms); + return handler.getSearchResults(content, originalText, terms); } - private File createFileForContent(String content) throws FileNotFoundException { - File toSaveAs = new File(DownloadUtils.DOWNLOAD_FILE_LOC + "annotator-result" + DownloadUtils.XML_EXT); - PrintStream ps = new PrintStream(toSaveAs); - ps.print(content); - ps.close(); - - return toSaveAs; - } - - private String flattenSetToString(Set terms) { StringBuilder buffer = new StringBuilder(); for (String term : terms) { diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java index 1981ec86..22f10dd6 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -4,7 +4,7 @@ import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; -import org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers.BioPortalQueryEndpoint; +import org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers.BioPortalSearchResultHandler; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import java.util.*; @@ -16,13 +16,13 @@ public class BioPortal4Client implements OntologyService { private static final Logger log = Logger.getLogger(BioPortal4Client.class); - private BioPortalQueryEndpoint handler; + private BioPortalSearchResultHandler handler; public static final String REST_URL = "http://data.bioontology.org/"; public BioPortal4Client() { - this.handler = new BioPortalQueryEndpoint(); + this.handler = new BioPortalSearchResultHandler(); } public Map getOntologyNames() { @@ -30,6 +30,8 @@ public Map getOntologyNames() { } public Map getTermMetadata(String termId, String ontology) { +// http://data.bioontology.org/ontologies/GALEN/classes/http%3A%2F%2Fwww.co-ode.org%2Fontologies%2Fgalen%23Melanoma" + OntologyTerm ontologyTerm = handler.getTermMetadata(termId,ontology); return null; } @@ -78,18 +80,22 @@ public Map getOntologyVersions() { } public Map getOntologyRoots(String ontology) { +// http://data.bioontology.org/ontologies/EFO/classes/roots return null; } public Map getTermParent(String termAccession, String ontology) { + return null; } public Map getTermChildren(String termAccession, String ontology) { +// http://data.bioontology.org/ontologies/EFO/classes/http%3A%2F%2Fwww.ebi.ac.uk%2Fefo%2FEFO_0000001/children return null; } public Map getAllTermParents(String termAccession, String ontology) { +// http://data.bioontology.org/ontologies/EFO/classes/http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FIAO_0000030/parents return null; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java index 9af5c794..aa981b5d 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java @@ -38,7 +38,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.apache.commons.collections15.map.ListOrderedMap; import org.apache.log4j.Logger; -import org.apache.soap.encoding.soapenc.SoapEncUtils; import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.bioportal.utils.BioPortalXMLModifier; diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java new file mode 100644 index 00000000..feb6d0b0 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java @@ -0,0 +1,97 @@ +package org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers; + +import bioontology.bioportal.annotator.schema.AnnotationBeanDocument; +import bioontology.bioportal.annotator.schema.ConceptDocument; +import org.isatools.isacreator.configuration.Ontology; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; +import org.isatools.isacreator.ontologymanager.bioportal.model.AnnotatorResult; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; + +import javax.json.*; +import java.io.StringReader; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + + +public class BioPortalAnnotatorResultHandler { + + BioPortalSearchResultHandler searchHandler; + + public BioPortalAnnotatorResultHandler() { + this(new BioPortalSearchResultHandler()); + } + + public BioPortalAnnotatorResultHandler(BioPortalSearchResultHandler searchHandler) { + this.searchHandler = searchHandler; + } + + public Map> getSearchResults(String queryContents, String originalText, Set originalTerms) { + + System.out.println("Original text is - " + originalText); + System.out.println(queryContents); + // map from search term to a map of full id to the ontology term. + Map> result = new HashMap>(); + // for each token, we wan to find the matches and add them to the list + + StringReader reader = new StringReader(queryContents); + + JsonReader rdr = Json.createReader(reader); + + JsonArray obj = rdr.readArray(); + + for (JsonObject annotationItem : obj.getValuesAs(JsonObject.class)) { + + AnnotatorResult annotatorResult = extractAnnotatorResult(annotationItem); + + if (annotatorResult != null) { + + String originalTerm = originalText.substring(annotatorResult.getStartIndex()-1, annotatorResult.getEndIndex()); + System.out.println("Original term is - " + originalTerm); + + if (originalTerms.contains(originalTerm)) { + + if (!result.containsKey(originalTerm)) { + result.put(originalTerm, new HashMap()); + } + + String ontologySource = annotatorResult.getOntologySource().getOntologyAbbreviation(); + + if (!result.get(originalTerm).containsKey(ontologySource)) { + result.get(originalTerm).put(ontologySource, annotatorResult); + } + } + } + } + + return result; + } + + private AnnotatorResult extractAnnotatorResult(JsonObject resultItem) { + + JsonObject annotatedClass = resultItem.getJsonObject("annotatedClass"); + JsonObject links = annotatedClass.getJsonObject("links"); + + String ontologyId = links.getJsonString("ontology").toString(); + + OntologyTerm ontologyTerm = searchHandler.getTermMetadata(annotatedClass.getString("@id"), ontologyId); + + if (ontologyTerm != null) { + + JsonNumber from = null, to = null; + + for (JsonObject annotation : resultItem.getJsonArray("annotations").getValuesAs(JsonObject.class)) { + from = annotation.getJsonNumber("from"); + to = annotation.getJsonNumber("to"); + } + + if (from != null && to != null) { + return new AnnotatorResult(ontologyTerm, AcceptedOntologies.getAcceptedOntologies().get(ontologyId), 1, + from.intValue(), to.intValue()); + } + } + + return null; + } +} diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java similarity index 63% rename from src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java rename to src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index dafd8a15..3ae246a8 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalQueryEndpoint.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -9,17 +9,19 @@ import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.ontologymanager.BioPortal4Client; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.omg.CORBA.OBJECT_NOT_EXIST; import javax.json.*; import java.io.*; +import java.net.URLEncoder; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -public class BioPortalQueryEndpoint { +public class BioPortalSearchResultHandler { public static final String API_KEY = "fd88ee35-6995-475d-b15a-85f1b9dd7a42"; @@ -54,24 +56,8 @@ public Map> getSearchResults(String term, String onto } OntologyTerm ontologyTerm = new OntologyTerm(resultItem.getString("prefLabel"), resultItem.getString("@id"), "", null); - JsonArray definitions = resultItem.getJsonArray("definition"); - if (definitions != null) { - ontologyTerm.addToComments("definition", definitions.get(0).toString()); - } - - JsonArray synonyms = resultItem.getJsonArray("synonyms"); - if (synonyms != null && synonyms.size() > 0) { - StringBuilder synonymList = new StringBuilder(); - int count = 0; - for (JsonValue value : synonyms.getValuesAs(JsonValue.class)) { - synonymList.append(value.toString()); - if (count != synonyms.size() - 1) { - synonymList.append(","); - } - count++; - } - ontologyTerm.addToComments("synonyms", synonymList.toString()); - } + extractDefinitionFromOntologyTerms(resultItem, ontologyTerm); + extractSynonymsFromOntologyTerm(resultItem, ontologyTerm); result.get(ontologyId).add(ontologyTerm); @@ -80,6 +66,29 @@ public Map> getSearchResults(String term, String onto return result; } + private void extractDefinitionFromOntologyTerms(JsonObject resultItem, OntologyTerm ontologyTerm) { + JsonArray definitions = resultItem.getJsonArray("definition"); + if (definitions != null && definitions.size() > 0) { + ontologyTerm.addToComments("definition", definitions.get(0).toString()); + } + } + + private void extractSynonymsFromOntologyTerm(JsonObject resultItem, OntologyTerm ontologyTerm) { + JsonArray synonyms = resultItem.getJsonArray("synonyms"); + if (synonyms != null && synonyms.size() > 0) { + StringBuilder synonymList = new StringBuilder(); + int count = 0; + for (JsonValue value : synonyms.getValuesAs(JsonValue.class)) { + synonymList.append(value.toString()); + if (count != synonyms.size() - 1) { + synonymList.append(","); + } + count++; + } + ontologyTerm.addToComments("synonyms", synonymList.toString()); + } + } + public String querySearchEndpoint(String term, String ontologyIds, String subtree) { try { HttpClient client = new HttpClient(); @@ -99,6 +108,8 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre } method.addParameter("apikey", API_KEY); method.addParameter("pagesize", "500"); +// method.addParameter("no_links", "true"); + method.addParameter("no_context", "true"); try { setHostConfiguration(client); @@ -109,6 +120,7 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre int statusCode = client.executeMethod(method); if (statusCode != -1) { + String contents = method.getResponseBodyAsString(); method.releaseConnection(); return contents; @@ -189,6 +201,59 @@ public String queryOntologyEndpoint() { private void setHostConfiguration(HttpClient client) { HostConfiguration configuration = new HostConfiguration(); configuration.setHost("http://data.bioontology.org"); + configuration.setProxy(System.getProperty("http.proxyHost"), Integer.valueOf(System.getProperty("http.proxyPort"))); client.setHostConfiguration(configuration); } + + public OntologyTerm getTermMetadata(String termId, String ontologyId) { + + String content = queryTermMetadataEndpoint(termId, ontologyId); + StringReader reader = new StringReader(content); + JsonReader rdr = Json.createReader(reader); + JsonObject obj = rdr.readObject(); + + // if we have a nice error free page, continue + if (!obj.containsKey("errors")) { + Ontology associatedOntologySource = AcceptedOntologies.getAcceptedOntologies().get(ontologyId); + OntologySourceRefObject osro = new OntologySourceRefObject(associatedOntologySource.getOntologyAbbreviation(), associatedOntologySource.getOntologyID(), associatedOntologySource.getOntologyVersion(), associatedOntologySource.getOntologyDisplayLabel()); + + OntologyTerm ontologyTerm = new OntologyTerm(obj.getString("prefLabel"), obj.getString("@id"), obj.getString("@id"), osro); + extractDefinitionFromOntologyTerms(obj, ontologyTerm); + extractSynonymsFromOntologyTerm(obj, ontologyTerm); + + System.out.println(ontologyTerm.getOntologyTermName() + " - " + ontologyTerm.getOntologyTermAccession()); + + return ontologyTerm; + } else { + return null; + } + } + + public String queryTermMetadataEndpoint(String termId, String ontologyId) { + try { + HttpClient client = new HttpClient(); + String url = ontologyId + "/classes/" + URLEncoder.encode(termId, "UTF-8") + "?apikey=" + API_KEY; + + GetMethod method = new GetMethod(url); + + System.out.println(method.getURI().toString()); + try { + setHostConfiguration(client); + } catch (Exception e) { + System.err.println("Problem encountered setting host configuration for ontology search"); + } + + int statusCode = client.executeMethod(method); + if (statusCode != -1) { + String contents = method.getResponseBodyAsString(); + System.out.println(contents); + method.releaseConnection(); + return contents; + } + } catch (Exception e) { + e.printStackTrace(); + } + + return null; + } } diff --git a/src/main/java/org/isatools/isacreator/validateconvert/ui/ValidateUI.java b/src/main/java/org/isatools/isacreator/validateconvert/ui/ValidateUI.java index e69643ff..91634cd3 100644 --- a/src/main/java/org/isatools/isacreator/validateconvert/ui/ValidateUI.java +++ b/src/main/java/org/isatools/isacreator/validateconvert/ui/ValidateUI.java @@ -96,14 +96,11 @@ public class ValidateUI extends JFrame { public ValidateUI(ISAcreator isacreatorEnvironment, OperatingMode mode) { this.mode = mode; - ResourceInjector.get("validateconvert-package.style").inject(this); - this.isacreatorEnvironment = isacreatorEnvironment; } public void createGUI() { - setTitle(mode == OperatingMode.VALIDATE ? "Validate ISAtab" : "Convert ISAtab"); setUndecorated(true); @@ -154,6 +151,8 @@ public void run() { ApplicationManager.getCurrentApplicationInstance().saveISATab(); log.info("ISAtab file saved"); + System.out.println("Setting config path before validation to " + ISAcreatorProperties.getProperty(ISAcreatorProperties.CURRENT_CONFIGURATION)); + ISAConfigurationSet.setConfigPath(ISAcreatorProperties.getProperty(ISAcreatorProperties.CURRENT_CONFIGURATION)); final GUIISATABValidator isatabValidator = new GUIISATABValidator(); diff --git a/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java b/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java index 4617dca8..4bdbc315 100644 --- a/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java +++ b/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java @@ -37,8 +37,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.wizard; -import org.apache.axis.utils.StringUtils; import org.apache.commons.collections15.map.ListOrderedMap; +import org.apache.commons.lang.StringUtils; import org.isatools.isacreator.autofiltercombo.AutoFilterCombo; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.effects.borders.RoundedBorder; diff --git a/src/test/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClientTest.java b/src/test/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClientTest.java index ee258c2b..89c88f4c 100644 --- a/src/test/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClientTest.java +++ b/src/test/java/org/isatools/isacreator/ontologiser/logic/impl/AnnotatorSearchClientTest.java @@ -28,8 +28,8 @@ public void testAnnotatorClient() { for (String key : result.keySet()) { System.out.println(key + " matched:"); - for (String ontologyVersion : result.get(key).keySet()) { - System.out.println("\t" + ontologyVersion + " -> " + result.get(key).get(ontologyVersion).getOntologyTerm().getOntologyTermName() + " (" + result.get(key).get(ontologyVersion).getOntologySource().getOntologyDisplayLabel() + ")"); + for (String ontologyId : result.get(key).keySet()) { + System.out.println("\t" + ontologyId + " -> " + result.get(key).get(ontologyId).getOntologyTerm().getOntologyTermName() + " (" + result.get(key).get(ontologyId).getOntologySource().getOntologyDisplayLabel() + ")"); } } diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java index 570da2a4..cacde2ce 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java @@ -16,10 +16,11 @@ */ public class BioPortalClient4Test { - private static BioPortal4Client client = new BioPortal4Client(); - public static String testOntologyID = "EFO"; - public static String testTermAccession = "efo:EFO_0000428"; - public static String testSearchTerm = "dose"; + private BioPortal4Client client = new BioPortal4Client(); + private String testOntologyID = "EFO"; + private String testTermAccession = "http://www.co-ode.org/ontologies/galen#Melanoma"; + private String testSearchTerm = "dose"; + private String ontologyId = "http://data.bioontology.org/ontologies/GALEN"; @Test @@ -54,6 +55,13 @@ public void getTermsByPartialNameFromSource() { } } + @Test + public void getTermMetadata() { + System.out.println("_____Testing getTermMetadata()____"); + + client.getTermMetadata(testTermAccession,ontologyId); + } + @Test public void getAllOntologies() { System.out.println("_____Testing getAllOntologies()____"); From d8915d9c4824c2d3508158d66411babf20d1f72b Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Thu, 19 Dec 2013 18:29:52 +0000 Subject: [PATCH 059/111] Working tree traversal etc. Need to fix some ID issues, but almost there. --- .../WSOntologyTreeCreator.java | 3 +- .../ontologymanager/BioPortal4Client.java | 39 +++-- .../BioPortalAnnotatorResultHandler.java | 4 - .../BioPortalSearchResultHandler.java | 155 ++++++++++++++++-- .../OntologySelectionTool.java | 25 +-- .../ontologymanager/BioPortalClient4Test.java | 53 ++++-- .../ontologymanager/BioPortalClientTest.java | 3 +- 7 files changed, 229 insertions(+), 53 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java b/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java index a08406db..46873791 100644 --- a/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java +++ b/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java @@ -39,6 +39,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.OntologyBranch; import org.isatools.isacreator.configuration.RecommendedOntology; +import org.isatools.isacreator.ontologymanager.BioPortal4Client; import org.isatools.isacreator.ontologymanager.BioPortalClient; import org.isatools.isacreator.ontologymanager.OLSClient; import org.isatools.isacreator.ontologymanager.OntologyService; @@ -85,7 +86,7 @@ public WSOntologyTreeCreator(Container browser, JTree tree) { this.tree = tree; observers = new ArrayList(); - bioportalClient = new BioPortalClient(); + bioportalClient = new BioPortal4Client(); olsClient = new OLSClient(); } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java index 22f10dd6..3ce4540b 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -17,12 +17,13 @@ public class BioPortal4Client implements OntologyService { private static final Logger log = Logger.getLogger(BioPortal4Client.class); private BioPortalSearchResultHandler handler; - + private Map> cachedNodeChildrenQueries; public static final String REST_URL = "http://data.bioontology.org/"; public BioPortal4Client() { this.handler = new BioPortalSearchResultHandler(); + this.cachedNodeChildrenQueries = new HashMap>(); } public Map getOntologyNames() { @@ -30,9 +31,7 @@ public Map getOntologyNames() { } public Map getTermMetadata(String termId, String ontology) { -// http://data.bioontology.org/ontologies/GALEN/classes/http%3A%2F%2Fwww.co-ode.org%2Fontologies%2Fgalen%23Melanoma" - OntologyTerm ontologyTerm = handler.getTermMetadata(termId,ontology); - return null; + return handler.getTermMetadata(termId, ontology).getComments(); } public Map> getTermsByPartialNameFromSource(String term, String source, boolean reverseOrder) { @@ -65,7 +64,7 @@ public Map> getTermsByPartialNameFro subtree = ro.getBranchToSearchUnder().getBranchIdentifier(); } - Map> searchResult = handler.getSearchResults(term, ro.getOntology().getOntologyID(), subtree); + Map> searchResult = handler.getSearchResults(term, ro.getOntology().getOntologyAbbreviation(), subtree); if (searchResult != null) { result.putAll(convertStringKeyMapToOntologySourceRefKeyMap(searchResult)); @@ -76,12 +75,16 @@ public Map> getTermsByPartialNameFro } public Map getOntologyVersions() { + return AcceptedOntologies.getOntologySourceToVersion(); } - public Map getOntologyRoots(String ontology) { + public Map getOntologyRoots(String ontologyAbbreviation) { // http://data.bioontology.org/ontologies/EFO/classes/roots - return null; + if (!cachedNodeChildrenQueries.containsKey(ontologyAbbreviation)) { + cachedNodeChildrenQueries.put(ontologyAbbreviation, handler.getOntologyRoots(ontologyAbbreviation)); + } + return cachedNodeChildrenQueries.get(ontologyAbbreviation); } public Map getTermParent(String termAccession, String ontology) { @@ -89,14 +92,22 @@ public Map getTermParent(String termAccession, String onto return null; } - public Map getTermChildren(String termAccession, String ontology) { -// http://data.bioontology.org/ontologies/EFO/classes/http%3A%2F%2Fwww.ebi.ac.uk%2Fefo%2FEFO_0000001/children - return null; + public Map getTermChildren(String termAccession, String ontologyAbbreviation) { + String uniqueReferenceId = ontologyAbbreviation + "-" + termAccession + "-children"; + if (!cachedNodeChildrenQueries.containsKey(uniqueReferenceId)) { + cachedNodeChildrenQueries.put(uniqueReferenceId, handler.getTermChildren(termAccession, ontologyAbbreviation)); + } + return cachedNodeChildrenQueries.get(uniqueReferenceId); } - public Map getAllTermParents(String termAccession, String ontology) { -// http://data.bioontology.org/ontologies/EFO/classes/http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FIAO_0000030/parents - return null; + public Map getAllTermParents(String termAccession, String ontologyAbbreviation) { + + String uniqueReferenceId = ontologyAbbreviation + "-" + termAccession + "-parents"; + if (!cachedNodeChildrenQueries.containsKey(uniqueReferenceId)) { + cachedNodeChildrenQueries.put(uniqueReferenceId, handler.getTermParents(termAccession, ontologyAbbreviation)); + } + return cachedNodeChildrenQueries.get(uniqueReferenceId); + } public Collection getAllOntologies() { @@ -114,7 +125,7 @@ private Map> convertStringKeyMapToOn convertedMap.put(osro, new ArrayList()); - for(OntologyTerm ontologyTerm : toConvert.get(ontologyId)){ + for (OntologyTerm ontologyTerm : toConvert.get(ontologyId)) { ontologyTerm.setOntologySourceInformation(osro); convertedMap.get(osro).add(ontologyTerm); } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java index feb6d0b0..72d5fec7 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java @@ -29,8 +29,6 @@ public BioPortalAnnotatorResultHandler(BioPortalSearchResultHandler searchHandle public Map> getSearchResults(String queryContents, String originalText, Set originalTerms) { - System.out.println("Original text is - " + originalText); - System.out.println(queryContents); // map from search term to a map of full id to the ontology term. Map> result = new HashMap>(); // for each token, we wan to find the matches and add them to the list @@ -48,8 +46,6 @@ public Map> getSearchResults(String queryCo if (annotatorResult != null) { String originalTerm = originalText.substring(annotatorResult.getStartIndex()-1, annotatorResult.getEndIndex()); - System.out.println("Original term is - " + originalTerm); - if (originalTerms.contains(originalTerm)) { if (!result.containsKey(originalTerm)) { diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index 3ae246a8..56b81e60 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -1,8 +1,8 @@ package org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers; +import org.apache.commons.collections15.map.ListOrderedMap; import org.apache.commons.httpclient.HostConfiguration; import org.apache.commons.httpclient.HttpClient; -import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.commons.lang.StringUtils; @@ -11,7 +11,6 @@ import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; -import org.omg.CORBA.OBJECT_NOT_EXIST; import javax.json.*; import java.io.*; @@ -24,6 +23,8 @@ public class BioPortalSearchResultHandler { public static final String API_KEY = "fd88ee35-6995-475d-b15a-85f1b9dd7a42"; + public static final String PARENTS = "ancestors"; + public static final String CHILDREN = "children"; /** * Returns the result of the search operation @@ -48,16 +49,13 @@ public Map> getSearchResults(String term, String onto JsonArray results = obj.getJsonArray("collection"); for (JsonObject resultItem : results.getValuesAs(JsonObject.class)) { - JsonObject links = resultItem.getJsonObject("links"); + String ontologyId = extractOntologyId(resultItem); - String ontologyId = links.getJsonString("ontology").toString(); if (!result.containsKey(ontologyId)) { result.put(ontologyId, new ArrayList()); } - OntologyTerm ontologyTerm = new OntologyTerm(resultItem.getString("prefLabel"), resultItem.getString("@id"), "", null); - extractDefinitionFromOntologyTerms(resultItem, ontologyTerm); - extractSynonymsFromOntologyTerm(resultItem, ontologyTerm); + OntologyTerm ontologyTerm = createOntologyTerm(resultItem); result.get(ontologyId).add(ontologyTerm); @@ -66,15 +64,20 @@ public Map> getSearchResults(String term, String onto return result; } - private void extractDefinitionFromOntologyTerms(JsonObject resultItem, OntologyTerm ontologyTerm) { - JsonArray definitions = resultItem.getJsonArray("definition"); + private String extractOntologyId(JsonObject ontologyItemJsonDictionary) { + JsonObject links = ontologyItemJsonDictionary.getJsonObject("links"); + return links.getJsonString("ontology").toString(); + } + + private void extractDefinitionFromOntologyTerms(JsonObject ontologyItemJsonDictionary, OntologyTerm ontologyTerm) { + JsonArray definitions = ontologyItemJsonDictionary.getJsonArray("definition"); if (definitions != null && definitions.size() > 0) { ontologyTerm.addToComments("definition", definitions.get(0).toString()); } } - private void extractSynonymsFromOntologyTerm(JsonObject resultItem, OntologyTerm ontologyTerm) { - JsonArray synonyms = resultItem.getJsonArray("synonyms"); + private void extractSynonymsFromOntologyTerm(JsonObject ontologyItemJsonDictionary, OntologyTerm ontologyTerm) { + JsonArray synonyms = ontologyItemJsonDictionary.getJsonArray("synonyms"); if (synonyms != null && synonyms.size() > 0) { StringBuilder synonymList = new StringBuilder(); int count = 0; @@ -214,8 +217,7 @@ public OntologyTerm getTermMetadata(String termId, String ontologyId) { // if we have a nice error free page, continue if (!obj.containsKey("errors")) { - Ontology associatedOntologySource = AcceptedOntologies.getAcceptedOntologies().get(ontologyId); - OntologySourceRefObject osro = new OntologySourceRefObject(associatedOntologySource.getOntologyAbbreviation(), associatedOntologySource.getOntologyID(), associatedOntologySource.getOntologyVersion(), associatedOntologySource.getOntologyDisplayLabel()); + OntologySourceRefObject osro = getOntologySourceRefObject(ontologyId); OntologyTerm ontologyTerm = new OntologyTerm(obj.getString("prefLabel"), obj.getString("@id"), obj.getString("@id"), osro); extractDefinitionFromOntologyTerms(obj, ontologyTerm); @@ -229,6 +231,11 @@ public OntologyTerm getTermMetadata(String termId, String ontologyId) { } } + private OntologySourceRefObject getOntologySourceRefObject(String ontologyId) { + Ontology associatedOntologySource = AcceptedOntologies.getAcceptedOntologies().get(ontologyId); + return new OntologySourceRefObject(associatedOntologySource.getOntologyAbbreviation(), associatedOntologySource.getOntologyID(), associatedOntologySource.getOntologyVersion(), associatedOntologySource.getOntologyDisplayLabel()); + } + public String queryTermMetadataEndpoint(String termId, String ontologyId) { try { HttpClient client = new HttpClient(); @@ -256,4 +263,126 @@ public String queryTermMetadataEndpoint(String termId, String ontologyId) { return null; } + + public Map getOntologyRoots(String ontologyAbbreviation) { + + Map roots = new HashMap(); + + String queryContents = generalQueryEndpoint(BioPortal4Client.REST_URL + "ontologies/" + ontologyAbbreviation + "/classes/roots?apikey=" + API_KEY); + StringReader reader = new StringReader(queryContents); + JsonReader rdr = Json.createReader(reader); + JsonArray rootArray = rdr.readArray(); + + for (JsonObject annotationItem : rootArray.getValuesAs(JsonObject.class)) { + + + OntologySourceRefObject osro = getOntologySourceRefObject(extractOntologyId(annotationItem)); + + OntologyTerm ontologyTerm = createOntologyTerm(annotationItem); + ontologyTerm.setOntologySourceInformation(osro); + + roots.put(ontologyTerm.getOntologyTermAccession(), ontologyTerm); + } + + return roots; + } + + private OntologyTerm createOntologyTerm(JsonObject annotationItem) { + + OntologyTerm ontologyTerm = new OntologyTerm(annotationItem.getString("prefLabel"), annotationItem.getString("@id"), "", null); + + extractDefinitionFromOntologyTerms(annotationItem, ontologyTerm); + extractSynonymsFromOntologyTerm(annotationItem, ontologyTerm); + + return ontologyTerm; + } + + /** + * @param url + * @return + */ + private String generalQueryEndpoint(String url) { + try { + HttpClient client = new HttpClient(); + + GetMethod method = new GetMethod(url); + try { + setHostConfiguration(client); + } catch (Exception e) { + System.err.println("Problem encountered setting host configuration for ontology search"); + } + + int statusCode = client.executeMethod(method); + if (statusCode != -1) { + String contents = method.getResponseBodyAsString(); + method.releaseConnection(); + return contents; + } + } catch (Exception e) { + e.printStackTrace(); + } + + return null; + } + + public Map getTermParents(String termAccession, String ontologyAbbreviation) { + return getTermChildrenOrParents(termAccession, ontologyAbbreviation, PARENTS); + } + + public Map getTermChildren(String termAccession, String ontologyAbbreviation) { + return getTermChildrenOrParents(termAccession, ontologyAbbreviation, CHILDREN); + } + + /** + * Will make a call to get the parents or children of a term, identified by its termAccession in a particular + * ontology, defined by the ontologyAbbreviation. + * + * @param termAccession - e.g. http://purl.obolibrary.org/obo/OBI_0000785 + * @param ontologyAbbreviation - e.g. EFO + * @param parentsOrChildren - 'parents' or 'children' as an input value + * @return Map from the ontology term id to its OntologyTerm object. + */ + public Map getTermChildrenOrParents(String termAccession, String ontologyAbbreviation, String parentsOrChildren) { + try { + Map parents = new ListOrderedMap(); + + String queryContents = generalQueryEndpoint(BioPortal4Client.REST_URL + "ontologies/" + ontologyAbbreviation + "/classes/" + + URLEncoder.encode(termAccession, "UTF-8") + "/" + parentsOrChildren + "?apikey=" + API_KEY); + StringReader reader = new StringReader(queryContents); + JsonReader rdr = Json.createReader(reader); + + System.out.println(queryContents); + + JsonStructure topLevelStructure = rdr.read(); + JsonArray rootArray; + + + if (topLevelStructure instanceof JsonObject) { + // the children result returns a dictionary, or JsonStructure, so we have to go down one level to get + // the collection of results. + rootArray = ((JsonObject) topLevelStructure).getJsonArray("collection"); + } else { + // the parents result returns an array directly, so we can just use it immediately. + rootArray = (JsonArray) topLevelStructure; + } + + for (JsonObject annotationItem : rootArray.getValuesAs(JsonObject.class)) { + OntologySourceRefObject osro = getOntologySourceRefObject(extractOntologyId(annotationItem)); + + OntologyTerm ontologyTerm = createOntologyTerm(annotationItem); + ontologyTerm.setOntologySourceInformation(osro); + + parents.put(ontologyTerm.getOntologyTermAccession(), ontologyTerm); + } + + return parents; + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + + return null; + + } + + } diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java index fb960202..1a74d6fe 100755 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java @@ -582,9 +582,7 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { if (portal == OntologyPortal.OLS) { setTermDefinitionView(historyTerm); } else { - if (bioportalClient == null) { - bioportalClient = new BioPortalClient(); - } + instantiateBioPortalClientIfNull(); Map ontologyVersions = bioportalClient.getOntologyVersions(); setTermDefinitionView(historyTerm, ontologyVersions); } @@ -842,13 +840,8 @@ private String getRecommendedOntologyCacheIdentifier() { private void performSearch() { - if (olsClient == null) { - olsClient = new OLSClient(); - } - - if (bioportalClient == null) { - bioportalClient = new BioPortalClient(); - } + instantiateOLSClientIfNull(); + instantiateBioPortalClientIfNull(); Thread performer = new Thread(new Runnable() { public void run() { @@ -916,6 +909,18 @@ public void run() { performer.start(); } + private void instantiateOLSClientIfNull() { + if (olsClient == null) { + olsClient = new OLSClient(); + } + } + + private void instantiateBioPortalClientIfNull() { + if (bioportalClient == null) { + bioportalClient = new BioPortal4Client(); + } + } + private void searchSpecificOntologies() { OntologyManager.placeRecommendedOntologyInformationInRecords(recommendedOntologies.values()); diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java index cacde2ce..629dd415 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java @@ -1,7 +1,6 @@ package org.isatools.isacreator.ontologymanager; import org.isatools.isacreator.configuration.Ontology; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.junit.Test; @@ -17,10 +16,10 @@ public class BioPortalClient4Test { private BioPortal4Client client = new BioPortal4Client(); - private String testOntologyID = "EFO"; - private String testTermAccession = "http://www.co-ode.org/ontologies/galen#Melanoma"; + private String testOntologySource = "EFO"; + private String testTermAccession = "http://www.ebi.ac.uk/efo/EFO_0000428"; private String testSearchTerm = "dose"; - private String ontologyId = "http://data.bioontology.org/ontologies/GALEN"; + private String ontologyId = "http://data.bioontology.org/ontologies/EFO"; @Test @@ -29,7 +28,7 @@ public void getTermsByPartialNameFromSource() { long startTime = System.currentTimeMillis(); Map> result = client.getTermsByPartialNameFromSource(testSearchTerm, "all", false); - System.out.println("Took " + (System.currentTimeMillis()-startTime) + "ms to do that query."); + System.out.println("Took " + (System.currentTimeMillis() - startTime) + "ms to do that query."); for (OntologySourceRefObject source : result.keySet()) { @@ -44,7 +43,7 @@ public void getTermsByPartialNameFromSource() { startTime = System.currentTimeMillis(); result = client.getTermsByPartialNameFromSource("cy5", "all", false); - System.out.println("Took " + (System.currentTimeMillis()-startTime) + "ms to do that query."); + System.out.println("Took " + (System.currentTimeMillis() - startTime) + "ms to do that query."); for (OntologySourceRefObject source : result.keySet()) { System.out.println(source.getSourceName() + " (" + source.getSourceVersion() + ")"); @@ -59,7 +58,8 @@ public void getTermsByPartialNameFromSource() { public void getTermMetadata() { System.out.println("_____Testing getTermMetadata()____"); - client.getTermMetadata(testTermAccession,ontologyId); + Map termInfo = client.getTermMetadata(testTermAccession, ontologyId); + assertTrue("Oh no! No additional information for term! ", termInfo.size() > 0); } @Test @@ -80,10 +80,43 @@ public void getAllOntologies() { @Test public void getOntologyRoots() { System.out.println("_____Testing getOntologyRoots()____"); - Map ontologyRoots = client.getOntologyRoots(testOntologyID); + Map ontologyRoots = client.getOntologyRoots(testOntologySource); - assertTrue("No ontology roots found for " + testOntologyID, ontologyRoots.size() > 0); + assertTrue("No ontology roots found for " + testOntologySource, ontologyRoots.size() > 0); - System.out.println("Found " + ontologyRoots.size() + " roots for " + testOntologyID); + for(String key : ontologyRoots.keySet()) { + System.out.println(key + " - " + ontologyRoots.get(key).getOntologyTermName()); + } + + } + + @Test + public void getTermParents() { + System.out.println("_____Testing getTermChildrenOrParents()____"); + + Map parentTerms = client.getAllTermParents(testTermAccession, testOntologySource); + + assertTrue("No parents roots found for " + testTermAccession, parentTerms.size() > 0); + + for (OntologyTerm term : parentTerms.values()) { + System.out.println(term); + } + + System.out.println("Found " + parentTerms.size() + " parents for 45781"); + } + + @Test + public void getTermChildren() { + System.out.println("_____Testing getTermChildrenOrParents()____"); + + Map childTerms = client.getTermChildren("http://purl.obolibrary.org/obo/IAO_0000030", testOntologySource); + + assertTrue("No children found for " + testTermAccession, childTerms.size() > 0); + + for (OntologyTerm term : childTerms.values()) { + System.out.println(term); + } + + System.out.println("Found " + childTerms.size() + " children for information entity in " + testOntologySource); } } diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java index 57f53e68..29aa5de5 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClientTest.java @@ -175,12 +175,13 @@ public void getOntologyRoots() { assertTrue("No ontology roots found for " + testOntologyVersion, ontologyRoots.size() > 0); + System.out.println("Found " + ontologyRoots.size() + " roots for " + testOntologyVersion); } @Test public void getTermParents() { - System.out.println("_____Testing getTermParents()____"); + System.out.println("_____Testing getTermChildrenOrParents()____"); Map parentTerms = client.getAllTermParents(testTermAccession, testOntologyVersion); From 0ce8a418ad2f9a4e9471cf0914e93d63b2682693 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 20 Dec 2013 15:34:51 +0000 Subject: [PATCH 060/111] Services all working. Some final stuff for the annotator to do for the term definition information. --- .../bioportal/io/AcceptedOntologies.java | 26 +++++++------- .../BioPortalAnnotatorResultHandler.java | 4 --- .../BioPortalSearchResultHandler.java | 4 ++- .../OntologySelectionTool.java | 4 +-- .../ViewTermDefinitionUI.java | 34 ++++++++++++++----- 5 files changed, 44 insertions(+), 28 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java index 75ed0fbd..4f1df254 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/io/AcceptedOntologies.java @@ -53,12 +53,16 @@ public class AcceptedOntologies { private static Map acceptedOntologies; + // This is used to cache lookups on ontology sources, e.g. EFO to their equivalent ID in BioPortal + private static Map ontologySourceToIDCache; + static { updateAcceptedOntologies(); } public static void updateAcceptedOntologies() { acceptedOntologies = AcceptedOntologiesLoader.getAcceptedOntologies(); + ontologySourceToIDCache = new HashMap(); } /** @@ -90,23 +94,19 @@ public static Map getOntologySourceToVersion() { return ontologySourceToName; } - public static String getAllowedOntologyIds(Set toIgnore) { - StringBuilder allowedOntologies = new StringBuilder(); - - int count = 0; - for (Ontology ontology : acceptedOntologies.values()) { - if (!toIgnore.contains(ontology)) { - allowedOntologies.append(ontology.getOntologyID()); - if (count != acceptedOntologies.size() - 1) { - allowedOntologies.append(","); - } + public static String getOntologyIdForAbbreviation(String abbreviation) { + if(ontologySourceToIDCache.containsKey(abbreviation)) return ontologySourceToIDCache.get(abbreviation); + for(Ontology ontology : acceptedOntologies.values()) { + if(ontology.getOntologyAbbreviation().equals(abbreviation)) { + ontologySourceToIDCache.put(abbreviation, ontology.getOntologyID()); + return ontology.getOntologyID(); } - count++; } - return allowedOntologies.toString(); + return null; } + public static String getAllowedOntologyAcronyms(Set toIgnore) { StringBuilder allowedOntologies = new StringBuilder(); @@ -124,6 +124,8 @@ public static String getAllowedOntologyAcronyms(Set toIgnore) { return allowedOntologies.toString(); } + + public static Map getAcceptedOntologies() { return acceptedOntologies; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java index 72d5fec7..a8adb5d9 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalAnnotatorResultHandler.java @@ -1,15 +1,11 @@ package org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers; -import bioontology.bioportal.annotator.schema.AnnotationBeanDocument; -import bioontology.bioportal.annotator.schema.ConceptDocument; -import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.bioportal.model.AnnotatorResult; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import javax.json.*; import java.io.StringReader; -import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import java.util.Set; diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index 56b81e60..9be7574a 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -8,6 +8,7 @@ import org.apache.commons.lang.StringUtils; import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.ontologymanager.BioPortal4Client; +import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; @@ -220,6 +221,7 @@ public OntologyTerm getTermMetadata(String termId, String ontologyId) { OntologySourceRefObject osro = getOntologySourceRefObject(ontologyId); OntologyTerm ontologyTerm = new OntologyTerm(obj.getString("prefLabel"), obj.getString("@id"), obj.getString("@id"), osro); + ontologyTerm.addToComments("Service Provider", OntologyManager.BIO_PORTAL); extractDefinitionFromOntologyTerms(obj, ontologyTerm); extractSynonymsFromOntologyTerm(obj, ontologyTerm); @@ -290,7 +292,7 @@ public Map getOntologyRoots(String ontologyAbbreviation) { private OntologyTerm createOntologyTerm(JsonObject annotationItem) { OntologyTerm ontologyTerm = new OntologyTerm(annotationItem.getString("prefLabel"), annotationItem.getString("@id"), "", null); - + ontologyTerm.addToComments("Service Provider", OntologyManager.BIO_PORTAL); extractDefinitionFromOntologyTerms(annotationItem, ontologyTerm); extractSynonymsFromOntologyTerm(annotationItem, ontologyTerm); diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java index 1a74d6fe..034d17bf 100755 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java @@ -1173,7 +1173,7 @@ public void mousePressed(MouseEvent event) { if (OntologyUtils.getSourceOntologyPortalByVersion(ontologySource.getSourceVersion()) == OntologyPortal.BIOPORTAL) { boolean sourceIsInPlugins = OntologySearchPluginRegistry.isOntologySourceAbbreviationDefinedInPlugins(ontologyTerm.getOntologySource()); - viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceVersion(), sourceIsInPlugins ? null : bioportalClient == null ? new BioPortalClient() : bioportalClient); + viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceFile(), sourceIsInPlugins ? null : bioportalClient == null ? new BioPortal4Client() : bioportalClient); } else { viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceVersion(), olsClient); } @@ -1192,7 +1192,7 @@ public void mousePressed(MouseEvent event) { if (OntologyUtils.getSourceOntologyPortal(termNode.getOntology()) == OntologyPortal.BIOPORTAL) { viewTermDefinition.setContent(termNode.getBranch(), - termNode.getOntology().getOntologyVersion(), bioportalClient == null ? new BioPortalClient() : bioportalClient); + termNode.getOntology().getOntologyAbbreviation(), bioportalClient == null ? new BioPortal4Client() : bioportalClient); } else { viewTermDefinition.setContent(termNode.getBranch(), diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/ViewTermDefinitionUI.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/ViewTermDefinitionUI.java index 3b0d9d83..5f062b51 100644 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/ViewTermDefinitionUI.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/ViewTermDefinitionUI.java @@ -43,6 +43,8 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.configuration.OntologyBranch; import org.isatools.isacreator.ontologymanager.OntologyService; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; @@ -116,6 +118,7 @@ private JPanel createOntologyInformationPane(final OntologyBranch term) { contentPane.add(ontologyInfoScroller, BorderLayout.CENTER); + JLabel viewOntologyInBrowser = new JLabel("View in resource."); viewOntologyInBrowser.addMouseListener(new CommonMouseAdapter() { @Override @@ -132,16 +135,18 @@ public void mouseEntered(MouseEvent mouseEvent) { public void mousePressed(MouseEvent mouseEvent) { super.mousePressed(mouseEvent); try { - System.out.println("Source: " + term.getComments().get("Source")); - System.out.println("Accession: " + term.getComments().get("accession")); + String termSource = term.getComments().get("Source"); + System.out.println("Source: " + termSource); + System.out.println("Accession: " + term.getBranchIdentifier()); String serviceProvider = term.getComments().get("Service Provider"); + System.out.println("Service Provider: " + serviceProvider); String url = ""; if (serviceProvider.equalsIgnoreCase("ols")) { - url = "http://www.ebi.ac.uk/ontology-lookup/?termId=" + term.getComments().get("Source") + ":" + term.getComments().get("accession"); + url = "http://www.ebi.ac.uk/ontology-lookup/?termId=" + termSource + ":" + term.getComments().get("accession"); } else if (serviceProvider.equalsIgnoreCase("bioportal")) { - url = "http://bioportal.bioontology.org/ontologies/" + term.getComments().get("Source") + "/?p=terms&conceptid=" + term.getComments().get("accession"); + url = "http://bioportal.bioontology.org/ontologies/" + termSource.substring(termSource.lastIndexOf("/") + 1) + "?p=classes&conceptid=" + term.getBranchIdentifier(); } System.out.println(url); @@ -175,9 +180,13 @@ private JEditorPane createOntologyInformationDisplay(OntologyBranch term) { labelContent += "Term name: " + term.getBranchName() + "

"; // special handling for ChEBI to get the structural image + System.out.println("Showing CHEBI image for " + term.getBranchIdentifier()); if (term.getBranchIdentifier().toLowerCase().contains("chebi")) { - String chebiTermId = term.getBranchIdentifier().substring(term.getBranchIdentifier().indexOf(":") + 1); + String chebiTermId = term.getBranchIdentifier().substring(term.getBranchIdentifier().lastIndexOf("_") + 1); + + System.out.println("Showing CHEBI image for " + chebiTermId); + String chebiImageURL = "http://www.ebi.ac.uk/chebi/displayImage.do?defaultImage=true&imageIndex=0&chebiId=" + chebiTermId; labelContent += "

Chemical structure:" + "

" + @@ -235,7 +244,6 @@ private Map sortMap(Map toSort) { return sortedMap; } - public void setContent(OntologyBranch term, String searchOntology, OntologyService ontologyService) { if (properties != null) { @@ -251,10 +259,18 @@ public void run() { properties = term.getComments(); if (ontologyService != null) { setCurrentPage(new JLabel(LOADING)); - if (!properties.containsKey("Source")) { - properties.put("Source", searchOntology); + String ontology = searchOntology; + + System.out.println("Showing term metadata...."); + System.out.println(term.getBranchIdentifier()); + System.out.println(ontology); + System.out.println(); + + if (term.getBranchIdentifier().startsWith("http") && !ontology.startsWith("http")) { + ontology = AcceptedOntologies.getOntologyIdForAbbreviation(searchOntology); } - properties.putAll(ontologyService.getTermMetadata(term.getBranchIdentifier(), searchOntology)); + properties.put("Source", ontology); + properties.putAll(ontologyService.getTermMetadata(term.getBranchIdentifier(), ontology)); } setCurrentPage(createOntologyInformationPane(term)); } catch (Exception e) { From 89402851a75bef4435c5a3c10c51f59c5d1b12c6 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Wed, 1 Jan 2014 12:30:56 -0800 Subject: [PATCH 061/111] Added in custom assay creation interface. Only appears when a generic XML config is within the loaded configuration set. Closes #249 --- .../assayselection/AssaySelectionDialog.java | 86 ++++++++++++++-- .../AssaySelectionInterface.java | 9 ++ .../assayselection/AssaySelectionUI.java | 9 +- .../CustomAssaySelectionUI.java | 98 +++++++++++++++++++ .../isacreator/gui/DataEntryEnvironment.java | 3 + .../managers/ConfigurationManager.java | 2 +- .../ui/OntologiserAnnotationPane.java | 8 +- .../wizard/GeneralCreationAlgorithm.java | 2 +- .../isacreator/wizard/LabelCapture.java | 8 +- .../wizard/MicroarrayCreationAlgorithm.java | 4 +- 10 files changed, 204 insertions(+), 25 deletions(-) create mode 100644 src/main/java/org/isatools/isacreator/assayselection/AssaySelectionInterface.java create mode 100644 src/main/java/org/isatools/isacreator/assayselection/CustomAssaySelectionUI.java diff --git a/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java index 0ab8b69f..491956a1 100644 --- a/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java +++ b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionDialog.java @@ -37,16 +37,19 @@ ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) The ISA Team and the ISA software suite have been funded by the EU Carcinogenomics project (http://www.carcinogenomics.eu), the UK BBSRC (http://www.bbsrc.ac.uk), the UK NERC-NEBC (http://nebc.nerc.ac.uk) and in part by the EU NuGO consortium (http://www.nugo.org/everyone). */ +import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.common.button.ButtonType; import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.common.dialog.ConfirmationDialog; import org.isatools.isacreator.gui.ISAcreator; import org.isatools.isacreator.managers.ApplicationManager; +import org.isatools.isacreator.managers.ConfigurationManager; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; import javax.swing.*; +import javax.swing.border.EmptyBorder; import javax.swing.border.EtchedBorder; import javax.swing.border.LineBorder; import java.awt.*; @@ -65,10 +68,21 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi */ public class AssaySelectionDialog extends JDialog { + private static final int PREDEFINED = 0; + private static final int CUSTOM = 1; private AssaySelectionUI assaySelectionUI; + private CustomAssaySelectionUI customAssaySelectionUI; + private Map> measurementsToTechnologies; + // this will hold either the predefined assay selection panel or the custom assay panel. + private Container swappableContainer; + private JLabel predefinedAssayTab; + private JLabel customAssayTab; + + private int pageInView = PREDEFINED; + public AssaySelectionDialog(Map> measurementsToTechnologies) { ResourceInjector.get("assayselection-package.style").inject(this); @@ -81,14 +95,53 @@ public AssaySelectionDialog(Map> measurementsToTechnologies public void createGUI() { ((JComponent) getContentPane()).setBorder(new EtchedBorder(UIHelper.LIGHT_GREEN_COLOR, UIHelper.LIGHT_GREEN_COLOR)); + swappableContainer = new JPanel(); assaySelectionUI = new AssaySelectionUI(measurementsToTechnologies); - assaySelectionUI.createGUI(); - add(Box.createVerticalStrut(10), BorderLayout.NORTH); + customAssaySelectionUI = new CustomAssaySelectionUI(); + customAssaySelectionUI.createGUI(); + + JPanel tabPanel = new JPanel(new GridLayout(1, 3)); + tabPanel.setOpaque(false); +// int top, int left, int bottom, int right + tabPanel.setBorder(new EmptyBorder(15, 5, 20, 0)); + + predefinedAssayTab = UIHelper.createLabel("Select from predefined assays", UIHelper.VER_14_BOLD); + customAssayTab = UIHelper.createLabel("Create a custom assay", UIHelper.VER_14_PLAIN); + + predefinedAssayTab.addMouseListener(new CommonMouseAdapter() { + @Override + public void mouseClicked(MouseEvent mouseEvent) { + super.mouseClicked(mouseEvent); + swapContainers(assaySelectionUI); + customAssayTab.setFont(UIHelper.VER_12_PLAIN); + predefinedAssayTab.setFont(UIHelper.VER_12_BOLD); + } + }); + + customAssayTab.addMouseListener(new CommonMouseAdapter() { + @Override + public void mouseClicked(MouseEvent mouseEvent) { + super.mouseClicked(mouseEvent); + swapContainers(customAssaySelectionUI); + customAssayTab.setFont(UIHelper.VER_12_BOLD); + predefinedAssayTab.setFont(UIHelper.VER_12_PLAIN); + } + }); + + // check if there is a generic configuration available first. + if (ConfigurationManager.searchMappingsForMatch("*", "*") != null) { + tabPanel.add(predefinedAssayTab); + tabPanel.add(customAssayTab); + } + + add(tabPanel, BorderLayout.NORTH); - add(assaySelectionUI); + swapContainers(assaySelectionUI); + + add(swappableContainer); add(createSouthPanel(), BorderLayout.SOUTH); @@ -111,12 +164,13 @@ public void actionPerformed(ActionEvent actionEvent) { } }); - JButton addAssay = new FlatButton(ButtonType.GREEN, "Confirm"); addAssay.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { - firePropertyChange("assaysChosen", false, true); - closeWindow(); + if ((pageInView == CUSTOM && customAssaySelectionUI.valid()) || pageInView == PREDEFINED) { + firePropertyChange("assaysChosen", false, true); + closeWindow(); + } } }); @@ -135,7 +189,25 @@ public void run() { } public List getSelectedAssays() { - return assaySelectionUI.getAssaysToDefine(); + return pageInView == PREDEFINED ? assaySelectionUI.getAssaysToDefine() : customAssaySelectionUI.getAssaysToDefine(); } + private void swapContainers(final JPanel newContainer) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + if (newContainer != null) { + swappableContainer.removeAll(); + swappableContainer.add(newContainer); + swappableContainer.repaint(); + swappableContainer.validate(); + + if (newContainer instanceof CustomAssaySelectionUI) { + pageInView = CUSTOM; + } else { + pageInView = PREDEFINED; + } + } + } + }); + } } diff --git a/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionInterface.java b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionInterface.java new file mode 100644 index 00000000..8ad05aa8 --- /dev/null +++ b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionInterface.java @@ -0,0 +1,9 @@ +package org.isatools.isacreator.assayselection; + +import java.util.List; + +public interface AssaySelectionInterface{ + + public List getAssaysToDefine(); + +} diff --git a/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionUI.java b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionUI.java index af949161..a1da2da1 100644 --- a/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionUI.java +++ b/src/main/java/org/isatools/isacreator/assayselection/AssaySelectionUI.java @@ -63,7 +63,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.util.List; import java.util.Map; -public class AssaySelectionUI extends JPanel { +public class AssaySelectionUI extends JPanel implements AssaySelectionInterface { public final static String NO_TECHNOLOGY_TEXT = "no technology required"; @@ -97,7 +97,7 @@ public AssaySelectionUI(Map> measToAllowedTechnol public void createGUI() { setLayout(new BorderLayout()); - setSize(new Dimension(400, 500)); + setPreferredSize(new Dimension(750, 510)); // need to create a gui with two panels on the left hand side for selection of the // measurement and technology and one panel on the right hand side showing which ontologies @@ -288,7 +288,8 @@ public void mousePressed(MouseEvent mouseEvent) { private void populateMeasurements() { for (String s : measToAllowedTechnologies.keySet()) { - if (!s.equalsIgnoreCase("[sample]") && !s.equalsIgnoreCase("[investigation]")) { + s = s.trim(); + if (!s.equalsIgnoreCase("[sample]") && !s.equalsIgnoreCase("[investigation]") && !s.equals("*")) { assayMeasurementList.addItem(s); } } @@ -303,7 +304,7 @@ private void updateTechnologies(String measurement) { for (String technology : measToAllowedTechnologies.get(measurement)) { if (technology.trim().equals("")) { assayTechnologyList.addItem(NO_TECHNOLOGY_TEXT); - } else { + } else if(!technology.trim().equals("*")) { assayTechnologyList.addItem(technology); } } diff --git a/src/main/java/org/isatools/isacreator/assayselection/CustomAssaySelectionUI.java b/src/main/java/org/isatools/isacreator/assayselection/CustomAssaySelectionUI.java new file mode 100644 index 00000000..60b15bcd --- /dev/null +++ b/src/main/java/org/isatools/isacreator/assayselection/CustomAssaySelectionUI.java @@ -0,0 +1,98 @@ +package org.isatools.isacreator.assayselection; + +import org.isatools.isacreator.common.DropDownComponent; +import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.configuration.RecommendedOntology; +import org.isatools.isacreator.effects.components.RoundedJTextField; +import org.isatools.isacreator.gui.listeners.propertychange.OntologySelectedEvent; +import org.isatools.isacreator.gui.listeners.propertychange.OntologySelectionCancelledEvent; +import org.isatools.isacreator.ontologyselectiontool.OntologySelectionTool; + + +import javax.swing.*; +import javax.swing.border.EmptyBorder; +import javax.swing.text.JTextComponent; +import java.awt.*; +import java.util.*; +import java.util.List; + + +public class CustomAssaySelectionUI extends JPanel implements AssaySelectionInterface { + + private JTextField measurementField, technologyField, platformField; + private JLabel status; + + public void createGUI() { + setLayout(new BorderLayout()); + setPreferredSize(new Dimension(750, 510)); + + JPanel fieldPanel = new JPanel(); + fieldPanel.setBorder(new EmptyBorder(90, 90, 90, 90)); + fieldPanel.setPreferredSize(new Dimension(300, 250)); + fieldPanel.setLayout(new BoxLayout(fieldPanel, BoxLayout.PAGE_AXIS)); + + JPanel measurementFieldContainer = new JPanel(new GridLayout(1, 2)); + measurementField = new RoundedJTextField(8); + JComponent measurementOntologyComponent = createField(measurementField); + measurementFieldContainer.add(UIHelper.createLabel("Measurement Type")); + measurementFieldContainer.add(measurementOntologyComponent); + fieldPanel.add(measurementFieldContainer); + + fieldPanel.add(Box.createVerticalStrut(10)); + + JPanel technologyFieldContainer = new JPanel(new GridLayout(1, 2)); + technologyField= new RoundedJTextField(8); + JComponent technologyOntologyComponent = createField(technologyField); + technologyFieldContainer.add(UIHelper.createLabel("Technology (optional)")); + technologyFieldContainer.add(technologyOntologyComponent); + fieldPanel.add(technologyFieldContainer); + + fieldPanel.add(Box.createVerticalStrut(10)); + + JPanel platformFieldContainer = new JPanel(new GridLayout(1, 2)); + platformFieldContainer.add(UIHelper.createLabel("Platform (optional)")); + platformField = new RoundedJTextField(10); + UIHelper.renderComponent(platformField, UIHelper.VER_11_BOLD, UIHelper.DARK_GREEN_COLOR, false); + platformFieldContainer.add(platformField); + fieldPanel.add(platformFieldContainer); + + status = UIHelper.createLabel("", UIHelper.VER_12_BOLD, UIHelper.RED_COLOR); + fieldPanel.add(Box.createVerticalStrut(30)); + fieldPanel.add(status); + + add(fieldPanel, BorderLayout.NORTH); + } + + + private JComponent createField(JTextField field) { + + UIHelper.renderComponent(field, UIHelper.VER_11_BOLD, UIHelper.DARK_GREEN_COLOR, false); + return createOntologyDropDown(field, false, false, null); + } + + private JComponent createOntologyDropDown(JTextComponent field, + boolean allowsMultiple, boolean forceOntology, Map recommendedOntologySource) { + OntologySelectionTool ontologySelectionTool = new OntologySelectionTool(allowsMultiple, forceOntology, recommendedOntologySource); + ontologySelectionTool.createGUI(); + + DropDownComponent dropdown = new DropDownComponent(field, ontologySelectionTool, DropDownComponent.ONTOLOGY); + + ontologySelectionTool.addPropertyChangeListener("selectedOntology", new OntologySelectedEvent(ontologySelectionTool, dropdown, field)); + ontologySelectionTool.addPropertyChangeListener("noSelectedOntology", new OntologySelectionCancelledEvent(ontologySelectionTool, dropdown)); + + return dropdown; + } + + public boolean valid() { + if (measurementField.getText().isEmpty()) { + status.setText("A Measurement Type must be provided..."); + return false; + } + status.setText(""); + return true; + } + + public List getAssaysToDefine() { + return Collections.singletonList(new AssaySelection(measurementField.getText(), technologyField.getText(), platformField.getText())); + } +} diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java index 47b13412..81dd4d83 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java @@ -133,9 +133,12 @@ public Assay addAssay(String measurementEndpoint, String techType, String assayPlatform, String assayName) { // get node DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode) overviewTree.getLastSelectedPathComponent(); + System.out.println("Getting assay for " + measurementEndpoint); TableReferenceObject tro = ConfigurationManager.selectTROForUserSelection(measurementEndpoint, techType); + System.out.println("Tro is " + tro); + if (tro != null) { if ((selectedNode != null) && selectedNode.getAllowsChildren() && !checkForDuplicateName(assayName, MappingObject.ASSAY_TYPE)) { diff --git a/src/main/java/org/isatools/isacreator/managers/ConfigurationManager.java b/src/main/java/org/isatools/isacreator/managers/ConfigurationManager.java index 5df583f7..ad26f226 100644 --- a/src/main/java/org/isatools/isacreator/managers/ConfigurationManager.java +++ b/src/main/java/org/isatools/isacreator/managers/ConfigurationManager.java @@ -111,7 +111,7 @@ public static Map> getAllowedTechnologiesPerEndpoint() { } - private static TableReferenceObject searchMappingsForMatch(String measurementEndpoint, String technologyType) { + public static TableReferenceObject searchMappingsForMatch(String measurementEndpoint, String technologyType) { for (MappingObject mo : getMappings()) { if (mo.getMeasurementEndpointType().equalsIgnoreCase(measurementEndpoint) && mo.getTechnologyType().equalsIgnoreCase(technologyType)) { diff --git a/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserAnnotationPane.java b/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserAnnotationPane.java index 58864a41..d85a8c29 100644 --- a/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserAnnotationPane.java +++ b/src/main/java/org/isatools/isacreator/ontologiser/ui/OntologiserAnnotationPane.java @@ -48,7 +48,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.ontologiser.model.SuggestedAnnotation; import org.isatools.isacreator.ontologiser.ui.listrenderer.OntologyAssignedListRenderer; import org.isatools.isacreator.ontologiser.ui.listrenderer.ScoringConfidenceListRenderer; -import org.isatools.isacreator.ontologymanager.BioPortalClient; +import org.isatools.isacreator.ontologymanager.BioPortal4Client; import org.isatools.isacreator.ontologymanager.OntologyService; import org.isatools.isacreator.ontologymanager.bioportal.model.AnnotatorResult; import org.isatools.isacreator.ontologyselectiontool.ViewTermDefinitionUI; @@ -94,7 +94,7 @@ public class OntologiserAnnotationPane extends JPanel { private static OntologyService ontologyService; static { - ontologyService = new BioPortalClient(); + ontologyService = new BioPortal4Client(); } public OntologiserAnnotationPane(Map> searchMatches) { @@ -159,7 +159,7 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { definitionUI.setContent( new OntologyBranch(selectedItem.getAnnotatorResult().getOntologyTerm().getOntologyTermAccession(), selectedItem.getAnnotatorResult().getOntologyTerm().getOntologyTermName()), - selectedItem.getAnnotatorResult().getOntologySource().getOntologyVersion(), ontologyService); + selectedItem.getAnnotatorResult().getOntologySource().getOntologyID(), ontologyService); repaint(); // should clear other selections to ensure that other suggested terms are not mapping to the ontology result too @@ -173,7 +173,7 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { listPanel.add(suggestedTermListContainer); definitionUI.setBorder(new TitledBorder(new RoundedBorder(UIHelper.LIGHT_GREEN_COLOR, 6), "Definition", - TitledBorder.DEFAULT_POSITION, TitledBorder.DEFAULT_JUSTIFICATION, UIHelper.VER_11_BOLD, UIHelper.DARK_GREEN_COLOR)); + TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, UIHelper.VER_11_BOLD, UIHelper.DARK_GREEN_COLOR)); listPanel.add(definitionUI); diff --git a/src/main/java/org/isatools/isacreator/wizard/GeneralCreationAlgorithm.java b/src/main/java/org/isatools/isacreator/wizard/GeneralCreationAlgorithm.java index e11ab78c..cdfd2547 100644 --- a/src/main/java/org/isatools/isacreator/wizard/GeneralCreationAlgorithm.java +++ b/src/main/java/org/isatools/isacreator/wizard/GeneralCreationAlgorithm.java @@ -247,7 +247,7 @@ public JPanel instantiatePanel() { JPanel labelPanel = new JPanel(new GridLayout(1, 2)); labelPanel.setBackground(UIHelper.BG_COLOR); - labelCapture = new LabelCapture("Label", ApplicationManager.getUserInterfaceForISASection(study).getDataEntryEnvironment()); + labelCapture = new LabelCapture("Label"); labelCapture.setVisible(false); labelUsed = new JCheckBox("Label used?", false); diff --git a/src/main/java/org/isatools/isacreator/wizard/LabelCapture.java b/src/main/java/org/isatools/isacreator/wizard/LabelCapture.java index d2d8e16d..3dcef5b2 100644 --- a/src/main/java/org/isatools/isacreator/wizard/LabelCapture.java +++ b/src/main/java/org/isatools/isacreator/wizard/LabelCapture.java @@ -62,13 +62,11 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class LabelCapture extends JPanel { private String initialVal; - private DataEntryEnvironment dep; - private JTextField labelVal; - public LabelCapture(String initialVal, DataEntryEnvironment dep) { + public LabelCapture(String initialVal) { this.initialVal = initialVal; - this.dep = dep; + setBackground(UIHelper.BG_COLOR); instantiatePanel(); } @@ -97,8 +95,6 @@ public String getLabelName() { private JComponent createOntologyDropDown(JTextComponent field, boolean allowsMultiple, boolean forceOntology, Map recommendedOntologySource) { - System.out.println("DataEntryEnvironment parent frame is null? " + (dep == null)); - OntologySelectionTool ontologySelectionTool = new OntologySelectionTool(allowsMultiple, forceOntology, recommendedOntologySource); ontologySelectionTool.createGUI(); diff --git a/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java b/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java index 4bdbc315..6ec82ecf 100644 --- a/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java +++ b/src/main/java/org/isatools/isacreator/wizard/MicroarrayCreationAlgorithm.java @@ -178,8 +178,8 @@ private JPanel instantiatePanel() { System.out.println("Study user interface is null? " + (studyUISection == null)); System.out.println("Study user interface dep is null? " + (studyUISection.getDataEntryEnvironment() == null)); - label1Capture = new LabelCapture("Label (e.g. Cy3)", studyUISection.getDataEntryEnvironment()); - label2Capture = new LabelCapture("Label (e.g. Cy5)", studyUISection.getDataEntryEnvironment()); + label1Capture = new LabelCapture("Label (e.g. Cy3)"); + label2Capture = new LabelCapture("Label (e.g. Cy5)"); label2Capture.setVisible(false); // create dye swap check box From 54b52b5d8667fdfab448cc407125b4ef98bf61bc Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Mon, 6 Jan 2014 20:32:35 -0800 Subject: [PATCH 062/111] Removed OLS calls. Simplified BioPortal calls. --- pom.xml | 21 - .../WSOntologyTreeCreator.java | 22 +- .../ontologymanager/BioPortal4Client.java | 9 +- .../isacreator/ontologymanager/OLSClient.java | 451 ------------------ .../ontologymanager/OntologyQueryAdapter.java | 75 --- .../BioPortalSearchResultHandler.java | 8 +- .../bioportal/model/OntologyPortal.java | 4 +- .../ontologymanager/utils/OntologyUtils.java | 26 +- .../OntologySelectionTool.java | 100 ++-- .../ontologymanager/OLSClientTest.java | 125 ----- 10 files changed, 44 insertions(+), 797 deletions(-) delete mode 100755 src/main/java/org/isatools/isacreator/ontologymanager/OLSClient.java delete mode 100644 src/main/java/org/isatools/isacreator/ontologymanager/OntologyQueryAdapter.java delete mode 100644 src/test/java/org/isatools/isacreator/ontologymanager/OLSClientTest.java diff --git a/pom.xml b/pom.xml index 2dd6e60b..60ba745d 100644 --- a/pom.xml +++ b/pom.xml @@ -305,27 +305,6 @@ beta-20080629 - - uk.ac.ebi - ols - 1.18 - - - - commons-lang - commons-lang - - - log4j - log4j - - - junit - junit - - - - commons-lang commons-lang diff --git a/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java b/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java index 46873791..32b6ffa9 100644 --- a/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java +++ b/src/main/java/org/isatools/isacreator/ontologybrowsingutils/WSOntologyTreeCreator.java @@ -40,10 +40,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.OntologyBranch; import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.BioPortal4Client; -import org.isatools.isacreator.ontologymanager.BioPortalClient; -import org.isatools.isacreator.ontologymanager.OLSClient; import org.isatools.isacreator.ontologymanager.OntologyService; -import org.isatools.isacreator.ontologymanager.bioportal.model.OntologyPortal; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.ontologymanager.utils.OntologyUtils; import org.isatools.isacreator.utils.StringProcessing; @@ -78,7 +75,7 @@ public class WSOntologyTreeCreator implements OntologyTreeCreator, TreeSelection private Container browser; private static OntologyService bioportalClient; - private static OntologyService olsClient; + private JTree tree; public WSOntologyTreeCreator(Container browser, JTree tree) { @@ -87,7 +84,6 @@ public WSOntologyTreeCreator(Container browser, JTree tree) { observers = new ArrayList(); bioportalClient = new BioPortal4Client(); - olsClient = new OLSClient(); } public DefaultMutableTreeNode createTree(Map ontologies) throws FileNotFoundException { @@ -168,12 +164,8 @@ private void initiateOntologyVisualization() { } if (!addedTerms) { - if (service instanceof BioPortalClient) { addInformationToTree(ontologyNode, "Problem loading " + recommendedOntology.getOntology().getOntologyAbbreviation() + " (version " + recommendedOntology.getOntology().getOntologyVersion() + ") from BioPortal!"); - } else { - addInformationToTree(ontologyNode, "Problem loading " + recommendedOntology.getOntology().getOntologyAbbreviation() + " from OLS"); - } } } updateTree(); @@ -186,11 +178,11 @@ private void initiateOntologyVisualization() { } private OntologyService getCorrectOntologyService(Ontology ontology) { - return OntologyUtils.getSourceOntologyPortal(ontology) == OntologyPortal.OLS ? olsClient : bioportalClient; + return bioportalClient; } private String getCorrectQueryString(OntologyService service, Ontology ontology) { - return service instanceof BioPortalClient ? ontology.getOntologyVersion() : ontology.getOntologyAbbreviation(); + return ontology.getOntologyVersion(); } public void updateTree() { @@ -248,9 +240,7 @@ private void addTermToTree(DefaultMutableTreeNode parent, OntologyTerm ontologyT DefaultMutableTreeNode childNode = new DefaultMutableTreeNode(new OntologyTreeItem( - new OntologyBranch((OntologyUtils.getSourceOntologyPortal(ontology) == OntologyPortal.OLS) - ? ontologyTerm.getOntologySource() + ":" + ontologyTerm.getOntologyTermAccession() - : ontologyTerm.getOntologyTermAccession(), ontologyTerm.getOntologyTermName()), ontology)); + new OntologyBranch(ontologyTerm.getOntologyTermAccession(), ontologyTerm.getOntologyTermName()), ontology)); if (parent == null) { parent = rootNode; @@ -289,9 +279,7 @@ public void expandTreeToReachTerm(OntologyTerm term) { OntologyService service = getCorrectOntologyService(ontology); - Map nodeParentsFromRoot = service.getAllTermParents((OntologyUtils.getSourceOntologyPortal(ontology) == OntologyPortal.OLS) - ? term.getOntologySource() + ":" + term.getOntologyTermAccession() - : term.getOntologyTermAccession(), service instanceof OLSClient ? term.getOntologySource() : term.getOntologySourceInformation().getSourceVersion()); + Map nodeParentsFromRoot = service.getAllTermParents(term.getOntologyTermAccession(), term.getOntologySourceInformation().getSourceVersion()); TreePath lastPath = null; for (OntologyTerm node : nodeParentsFromRoot.values()) { diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java index 3ce4540b..85923453 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -16,10 +16,12 @@ public class BioPortal4Client implements OntologyService { private static final Logger log = Logger.getLogger(BioPortal4Client.class); + public static final String DIRECT_ONTOLOGY_URL = "http://bioportal.bioontology.org/ontologies/"; + public static final String REST_URL = "http://data.bioontology.org/"; + private BioPortalSearchResultHandler handler; - private Map> cachedNodeChildrenQueries; - public static final String REST_URL = "http://data.bioontology.org/"; + private Map> cachedNodeChildrenQueries; public BioPortal4Client() { this.handler = new BioPortalSearchResultHandler(); @@ -38,9 +40,6 @@ public Map> getTermsByPartialNameFro term = correctTermForHTTPTransport(term); - if (source.equals("all")) { - source = AcceptedOntologies.getAllowedOntologyAcronyms(new HashSet()); - } Map> searchResult = handler.getSearchResults(term, source, null); return convertStringKeyMapToOntologySourceRefKeyMap(searchResult); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OLSClient.java b/src/main/java/org/isatools/isacreator/ontologymanager/OLSClient.java deleted file mode 100755 index 61ca2d66..00000000 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OLSClient.java +++ /dev/null @@ -1,451 +0,0 @@ -/** - ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) - - License: - ISAcreator is licensed under the Common Public Attribution License version 1.0 (CPAL) - - EXHIBIT A. CPAL version 1.0 - The contents of this file are subject to the CPAL version 1.0 (the License); - you may not use this file except in compliance with the License. You may obtain a - copy of the License at http://isa-tools.org/licenses/ISAcreator-license.html. - The License is based on the Mozilla Public License version 1.1 but Sections - 14 and 15 have been added to cover use of software over a computer network and - provide for limited attribution for the Original Developer. In addition, Exhibit - A has been modified to be consistent with Exhibit B. - - Software distributed under the License is distributed on an AS IS basis, - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for - the specific language governing rights and limitations under the License. - - The Original Code is ISAcreator. - The Original Developer is the Initial Developer. The Initial Developer of the - Original Code is the ISA Team (Eamonn Maguire, eamonnmag@gmail.com; - Philippe Rocca-Serra, proccaserra@gmail.com; Susanna-Assunta Sansone, sa.sanson@gmail.com; - http://www.isa-tools.org). All portions of the code written by the ISA Team are - Copyright (c) 2007-2011 ISA Team. All Rights Reserved. - - EXHIBIT B. Attribution Information - Attribution Copyright Notice: Copyright (c) 2008-2011 ISA Team - Attribution Phrase: Developed by the ISA Team - Attribution URL: http://www.isa-tools.org - Graphic Image provided in the Covered Code as file: http://isa-tools.org/licenses/icons/poweredByISAtools.png - Display of Attribution Information is required in Larger Works which are defined in the CPAL as a work which combines Covered Code or portions thereof with code not governed by the terms of the CPAL. - - Sponsors: - The ISA Team and the ISA software suite have been funded by the EU Carcinogenomics project (http://www.carcinogenomics.eu), the UK BBSRC (http://www.bbsrc.ac.uk), the UK NERC-NEBC (http://nebc.nerc.ac.uk) and in part by the EU NuGO consortium (http://www.nugo.org/everyone). - */ - -package org.isatools.isacreator.ontologymanager; - -import org.apache.commons.collections15.map.ListOrderedMap; -import org.apache.log4j.Logger; -import org.isatools.isacreator.configuration.Ontology; -import org.isatools.isacreator.configuration.RecommendedOntology; -import org.isatools.isacreator.ontologymanager.common.OntologyTerm; -import uk.ac.ebi.ook.web.services.Query; -import uk.ac.ebi.ook.web.services.QueryServiceLocator; - -import javax.xml.rpc.ServiceException; -import java.rmi.RemoteException; -import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -/** - * This is the main business class that will communicate with the OLS - * webservice and serve data to the GUI classes. - * - * @author Majority of class Supplied By R.G. Cote (EBI), developer of the OLS web service. - */ -public class OLSClient implements OntologyService { - private static final Logger log = Logger.getLogger(OLSClient.class.getName()); - - public static final String DIRECT_ONTOLOGY_URL = "http://www.ebi.ac.uk/ontology-lookup/browse.do?ontName="; - - private Map ontologies; - - public OLSClient() { - this.ontologies = new HashMap(); - } - - public Map getOntologies() { - - if (ontologies.size() == 0) { - - Map ontologyNames = getOntologyNames(); - Map ontologyVersions = getOntologyVersions(); - - String olsVersion = ontologyVersions.get("OLS"); - - for (String ontologyAbbreviation : ontologyNames.keySet()) { - OntologySourceRefObject newOntology = - new OntologySourceRefObject(ontologyAbbreviation, DIRECT_ONTOLOGY_URL + ontologyAbbreviation, olsVersion, ontologyNames.get(ontologyAbbreviation)); - ontologies.put(ontologyAbbreviation, newOntology); - } - } - return ontologies; - } - - public Map getOntologyNames() { - Map answer = new HashMap(); - QueryServiceLocator locator = new QueryServiceLocator(); - - try { - Query service = locator.getOntologyQuery(); - Map ontologyNames = service.getOntologyNames(); - - if (ontologyNames != null) { - answer = ontologyNames; - } - } catch (RemoteException e) { - log.error("remote exception thrown: " + e.getMessage()); - } catch (Exception e) { - log.error( - "unexpected exception occurred. probably as a result of no internet connection!"); - } - - return answer; - } - - /** - * calls OLS webserver and gets metadata for a termId - * - * @param termId - Term Id to search for - * @param ontology - Ontology to search in. - * @return Map of metadata - key is data type, value is data value. - * Map should not be null. - */ - public Map getTermMetadata(String termId, String ontology) { - Map answer = new ListOrderedMap(); - QueryServiceLocator locator = new QueryServiceLocator(); - - try { - Query service = locator.getOntologyQuery(); - Map metadata = service.getTermMetadata(termId, ontology); - System.out.println("ontology is " + ontology); - answer.put("accession", termId); - if (metadata != null) { - answer.putAll(metadata); - } - } catch (RemoteException e) { - log.error("remote exception thrown " + e.getMessage()); - } catch (Exception e) { - log.error( - "unexpected exception occurred. probably as a result of no internet connection!"); - } - - return answer; - } - - - /** - * Search the OLS for a partial term in an ontology source. - * - * @param term - Term to search for - * @param source - Ontology source to search in e.g. EFO - * @param reverseOrder - Whether or not to flip the mappings from term -> source:accession to source:accession -> term. - * @return - Mapping of source:accession to term, depending on reverse order being true or false. - */ - public Map> getTermsByPartialNameFromSource(String term, - String source, boolean reverseOrder) { - Map answer = new HashMap(); - - try { - QueryServiceLocator locator = new QueryServiceLocator(); - Query service = locator.getOntologyQuery(); - Map matchingTerms = service.getTermsByName(term, source, reverseOrder); - - if (matchingTerms != null) { - answer = matchingTerms; - } - } catch (RemoteException e) { - log.error("remote exception thrown " + e.getMessage()); - } catch (Exception e) { - log.error( - "unexpected exception occurred. probably as a result of no internet connection!"); - } - return processOntologyResult(answer); - } - - /** - * Return the current version of the OLS - * - * @return a String representation of the version. String should not be null. - */ - public Map getOntologyVersions() { - QueryServiceLocator locator = new QueryServiceLocator(); - Map versions = new HashMap(); - - try { - Query service = locator.getOntologyQuery(); - String tempVersion = service.getVersion(); - Pattern p = Pattern.compile("[a-zA-Z]+ [0-9]+.[0-9]+"); - Matcher m = p.matcher(tempVersion); - - if (m.find()) { - tempVersion = tempVersion.substring(m.start(), m.end()); - } - versions.put(OntologyManager.OLS, tempVersion); - } catch (RemoteException e) { - log.error("remote exception thrown " + e.getMessage()); - } catch (Exception e) { - log.error( - "unexpected exception occurred. probably as a result of no internet connection!"); - } - - return versions; - } - - /** - * Get the root terms of an Ontology - * - * @param ontologyAbbreviation - The ontology to get the root terms for e.g. EFO, ENVO, CHEBI - * @return Map representing the Root terms with the Source:Accession as the key and the Label as the Value - */ - public Map getOntologyRoots(String ontologyAbbreviation) { - QueryServiceLocator locator = new QueryServiceLocator(); - Map answer = new HashMap(); - try { - Query service = locator.getOntologyQuery(); - Map rootTerms = service.getRootTerms(ontologyAbbreviation); - if (rootTerms != null) { - answer = rootTerms; - } - } catch (RemoteException re) { - log.error("remote exception thrown " + re.getMessage()); - } catch (ServiceException e) { - log.error("service exception thrown " + e.getMessage()); - } - return processOntologyHierarchyResult(answer); - } - - /** - * Get the parent terms of an Ontology - * - * @param termAccession - Source:Accession string for the term to get children for - * @param ontologyAbbreviation - The ontology to get the root terms for e.g. EFO, ENVO, CHEBI - * @return Map representing the child terms with the Source:Accession as the key and the Label as the Value - */ - public Map getTermParent(String termAccession, String ontologyAbbreviation) { - QueryServiceLocator locator = new QueryServiceLocator(); - Map answer = new HashMap(); - try { - Query service = locator.getOntologyQuery(); - Map parentTerms = service.getTermParents(termAccession, ontologyAbbreviation); - if (parentTerms != null) { - answer = parentTerms; - } - } catch (RemoteException re) { - log.error("remote exception thrown " + re.getMessage()); - } catch (ServiceException e) { - log.error("service exception thrown " + e.getMessage()); - } - return processOntologyHierarchyResult(answer); - } - - /** - * Get the root terms of an Ontology - * - * @param termAccession - Source:Accession string for the term to get children for - * @param ontologyAbbreviation - The ontology to get the root terms for e.g. EFO, ENVO, CHEBI - * @return Map representing the child terms with the Source:Accession as the key and the Label as the Value - */ - public Map getTermChildren(String termAccession, String ontologyAbbreviation) { - QueryServiceLocator locator = new QueryServiceLocator(); - Map answer = new HashMap(); - try { - Query service = locator.getOntologyQuery(); - Map childTerms = service.getTermChildren(termAccession, ontologyAbbreviation, 1, null); - if (childTerms != null) { - answer = childTerms; - } - } catch (RemoteException re) { - log.error("remote exception thrown " + re.getMessage()); - } catch (ServiceException e) { - log.error("service exception thrown " + e.getMessage()); - } - return processOntologyHierarchyResult(answer); - } - - public Map> getTermsByPartialNameFromSource(String term, List recommendedOntology) { - Map> searchResult = new HashMap>(); - - for (RecommendedOntology ro : recommendedOntology) { - Map> subSearchResult = null; - - if (ro.getBranchToSearchUnder() == null) { - - subSearchResult = getTermsByPartialNameFromSource(term, ro.getOntology().getOntologyAbbreviation(), false); - - } else { - subSearchResult = getTermsByPartialNameFromSource(term, ro); - } - - if (subSearchResult != null) { - searchResult.putAll(subSearchResult); - } - } - - return searchResult; - } - - /** - * Retrieves the terms with labels matching a particular String (term) and which occur under a specific branch - * in an ontology. - * - * @param termLabel - String representing the term label being searched for e.g. 'cancer' - * @param recommendedOntology - Recommended ontology to be searched under e.g. OBI_0003212 - * @return Map comprising of the matching term source:accession pair to the term label e.g. ENVO:00002216 -> vegetable. - */ - private Map> getTermsByPartialNameFromSource(String termLabel, RecommendedOntology recommendedOntology) { - - Map> filteredResult = new HashMap>(); - // first step is to search for the term in OLS - Map> termSearchResult = getTermsByPartialNameFromSource(termLabel, recommendedOntology.getOntology().getOntologyAbbreviation(), false); - - Set termsInBranch = getAllTermsAccessionsBelowBranch(recommendedOntology.getBranchToSearchUnder().getBranchIdentifier(), - recommendedOntology.getOntology().getOntologyAbbreviation()); - - // now, since we have the terms in the branch, we simple filter out any Terms in termSearchResult which do not have - // accessions in the termsInBranch Set - for (OntologySourceRefObject termSource : termSearchResult.keySet()) { - - for (OntologyTerm term : termSearchResult.get(termSource)) { - - if (termsInBranch.contains(term.getOntologySource() + ":" + term.getOntologyTermAccession())) { - - if (!filteredResult.containsKey(termSource)) { - filteredResult.put(termSource, new ArrayList()); - } - - filteredResult.get(termSource).add(term); - } - } - } - - return filteredResult; - } - - private Map> processOntologyResult(Map ontologyAccessionToTerm) { - Map> processedResult = new HashMap>(); - - for (String accession : ontologyAccessionToTerm.keySet()) { - - String source = ""; - - if (accession.contains(":")) { - source = accession.substring(0, accession.lastIndexOf(":")); - } else { - source = "NEWT"; - } - - - OntologySourceRefObject ontologySource = getOntologySourceReferenceForOntology(source); - - if (ontologySource != null) { - if (!processedResult.containsKey(ontologySource)) { - processedResult.put(ontologySource, new ArrayList()); - } - - String tmpAccession = accession.replaceAll(source, "").replaceAll(":", "").trim(); - - processedResult.get(ontologySource).add(createOntologyTerm(source, tmpAccession, ontologyAccessionToTerm.get(accession))); - } - } - - return processedResult; - } - - private Map processOntologyHierarchyResult(Map ontologyAccessionToTerm) { - Map processedResult = new HashMap(); - - for (String accession : ontologyAccessionToTerm.keySet()) { - if (accession.contains(":")) { - String source = accession.substring(0, accession.lastIndexOf(":")); - - String tmpAccession = accession.replaceAll(source, "").replaceAll(":", "").trim(); - - processedResult.put(accession, createOntologyTerm(source, tmpAccession, ontologyAccessionToTerm.get(accession))); - } - } - - return processedResult; - } - - private OntologyTerm createOntologyTerm(String source, String accession, String name) { - OntologyTerm term = new OntologyTerm(name, accession, null, getOntologySourceReferenceForOntology(source)); - term.addToComments("Service Provider", OntologyManager.OLS); - term.addToComments("Source", source); - term.addToComments("accession", accession); - return term; - } - - private OntologySourceRefObject getOntologySourceReferenceForOntology(String source) { - Map ontologySources = getOntologies(); - return ontologySources.get(source); - } - - /** - * We only get the accessions so as to reduce the memory needs. Accessions are sufficient for our purposes - * Recursively called method. - * - * @param branchTerm - branch in the ontology to search under. - * @param ontologyAbbreviation - abbreviation of Ontology being searched under e.g. ENVO for the Environment Ontology - * @return Set representing all the terms under a particular branch. - */ - public Set getAllTermsAccessionsBelowBranch(String branchTerm, String ontologyAbbreviation) { - // need to retrieve and add all terms below the branch - Set result = new HashSet(); - - Map branchChildren = getTermChildren(branchTerm, ontologyAbbreviation); - - if (branchChildren.size() > 0) { - for (String childTermAccession : branchChildren.keySet()) { - // we recursively call this method to get all of the children and add the subsequent result to the Set - result.addAll(getAllTermsAccessionsBelowBranch(childTermAccession, ontologyAbbreviation)); - } - } - result.add(branchTerm); - - return result; - } - - /** - * Method will search the Ontology space to determine the parents of a given term. This can then be used in searches to make - * location of a term within an Ontology much quicker. - * - * @param termAccession - the accession of the term being searched on e.g. ENVO:00003073 - * @param ontologyAbbreviation - Abbreviation for the Ontology e.g. ENVO - * @return Map representing the parents of the Term - */ - public Map getAllTermParents(String termAccession, String ontologyAbbreviation) { - // we use a ListOrderedSet so that order is maintained! This is important since order will dictate the way - // we search within the tree whilst navigating from parent A -> B -> C to get to term ENVO:00001234. If the parents were in - // an incorrect order, we'd end up with something like B -> A -> C. - Map result = new ListOrderedMap(); - - Map termParents = getTermParent(termAccession, ontologyAbbreviation); - if (termParents.size() > 0) { - for (String parentTermAccession : termParents.keySet()) { - result.putAll(getAllTermParents(parentTermAccession, ontologyAbbreviation)); - } - } - - result.putAll(termParents); - - return result; - } - - public List getAllOntologies() { - List ontologies = new ArrayList(); - for (OntologySourceRefObject ontologySource : getOntologies().values()) { - ontologies.add(new Ontology("", ontologySource.getSourceVersion(), ontologySource.getSourceName(), ontologySource.getSourceDescription())); - } - - return ontologies; - } - - public String getOntologyURL() { - return DIRECT_ONTOLOGY_URL; - } -} diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyQueryAdapter.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyQueryAdapter.java deleted file mode 100644 index 601f3edb..00000000 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyQueryAdapter.java +++ /dev/null @@ -1,75 +0,0 @@ -/** - ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) - - License: - ISAcreator is licensed under the Common Public Attribution License version 1.0 (CPAL) - - EXHIBIT A. CPAL version 1.0 - The contents of this file are subject to the CPAL version 1.0 (the License); - you may not use this file except in compliance with the License. You may obtain a - copy of the License at http://isa-tools.org/licenses/ISAcreator-license.html. - The License is based on the Mozilla Public License version 1.1 but Sections - 14 and 15 have been added to cover use of software over a computer network and - provide for limited attribution for the Original Developer. In addition, Exhibit - A has been modified to be consistent with Exhibit B. - - Software distributed under the License is distributed on an AS IS basis, - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for - the specific language governing rights and limitations under the License. - - The Original Code is ISAcreator. - The Original Developer is the Initial Developer. The Initial Developer of the - Original Code is the ISA Team (Eamonn Maguire, eamonnmag@gmail.com; - Philippe Rocca-Serra, proccaserra@gmail.com; Susanna-Assunta Sansone, sa.sanson@gmail.com; - http://www.isa-tools.org). All portions of the code written by the ISA Team are - Copyright (c) 2007-2011 ISA Team. All Rights Reserved. - - EXHIBIT B. Attribution Information - Attribution Copyright Notice: Copyright (c) 2008-2011 ISA Team - Attribution Phrase: Developed by the ISA Team - Attribution URL: http://www.isa-tools.org - Graphic Image provided in the Covered Code as file: http://isa-tools.org/licenses/icons/poweredByISAtools.png - Display of Attribution Information is required in Larger Works which are defined in the CPAL as a work which combines Covered Code or portions thereof with code not governed by the terms of the CPAL. - - Sponsors: - The ISA Team and the ISA software suite have been funded by the EU Carcinogenomics project (http://www.carcinogenomics.eu), the UK BBSRC (http://www.bbsrc.ac.uk), the UK NERC-NEBC (http://nebc.nerc.ac.uk) and in part by the EU NuGO consortium (http://www.nugo.org/everyone). - */ - - -package org.isatools.isacreator.ontologymanager; - -import org.isatools.isacreator.configuration.Ontology; -import org.isatools.isacreator.ontologymanager.bioportal.model.OntologyPortal; -import org.isatools.isacreator.ontologymanager.utils.OntologyUtils; - -public class OntologyQueryAdapter { - - public static final int GET_ID = 1; - public static final int GET_VERSION = 2; - - Ontology ontology; - - public OntologyQueryAdapter(Ontology ontology) { - this.ontology = ontology; - } - - public String getOntologyQueryString(int type) { - - if(OntologyUtils.getSourceOntologyPortal(ontology) == OntologyPortal.OLS) { - return ontology.getOntologyAbbreviation(); - } else { - switch (type) { - case GET_ID: - return ontology.getOntologyID(); - - case GET_VERSION: - return ontology.getOntologyVersion(); - - default: - return ontology.getOntologyVersion(); - } - } - } - - -} diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index 9be7574a..99099770 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -101,15 +101,11 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre // Configure the form parameters method.addParameter("q", term); - + if(!ontologyIds.equals("all")) method.addParameter("ontology", ontologyIds); if (StringUtils.trimToNull(subtree) != null) { method.addParameter("subtree", subtree); - method.addParameter("ontology", ontologyIds); - } else { - if (StringUtils.trimToNull(ontologyIds) != null) { - method.addParameter("ontologies", ontologyIds); - } } + method.addParameter("apikey", API_KEY); method.addParameter("pagesize", "500"); // method.addParameter("no_links", "true"); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/model/OntologyPortal.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/model/OntologyPortal.java index e7f20057..1d62705a 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/model/OntologyPortal.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/model/OntologyPortal.java @@ -1,6 +1,5 @@ package org.isatools.isacreator.ontologymanager.bioportal.model; -import org.isatools.isacreator.ontologymanager.OLSClient; /** * Created by the ISA team @@ -11,6 +10,5 @@ * Time: 17:38 */ public enum OntologyPortal { - - OLS, BIOPORTAL + BIOPORTAL } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java index f4ed4ae9..034c37b2 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyUtils.java @@ -2,10 +2,8 @@ import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.OntologyBranch; -import org.isatools.isacreator.ontologymanager.BioPortalClient; -import org.isatools.isacreator.ontologymanager.OLSClient; +import org.isatools.isacreator.ontologymanager.BioPortal4Client; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; -import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import org.isatools.isacreator.ontologymanager.bioportal.model.OntologyPortal; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.utils.StringProcessing; @@ -25,12 +23,11 @@ public static OntologyPortal getSourceOntologyPortal(Ontology ontology) { } public static OntologyPortal getSourceOntologyPortalByVersionAndId(Ontology ontology) { - return checkVersion(ontology.getOntologyVersion()) || ontology.getOntologyID().equals("") - ? OntologyPortal.OLS : OntologyPortal.BIOPORTAL; + return OntologyPortal.BIOPORTAL; } public static OntologyPortal getSourceOntologyPortalByVersion(String version) { - return checkVersion(version) ? OntologyPortal.OLS : OntologyPortal.BIOPORTAL; + return OntologyPortal.BIOPORTAL; } private static boolean checkVersion(String version) { @@ -46,27 +43,12 @@ public static String getModifiedBranchIdentifier(String branchIdentifier, String return branchIdentifier; } - public static OntologyPortal getSourcePortalByAbbreviation(String abbreviation) { - boolean isBioPortal = false; - for (Ontology bioPortalOntologies : AcceptedOntologies.values()) { - if (bioPortalOntologies.getOntologyAbbreviation().equalsIgnoreCase(abbreviation)) { - isBioPortal = true; - break; - } - } - - return isBioPortal ? OntologyPortal.BIOPORTAL : OntologyPortal.OLS; - } - public static OntologySourceRefObject convertOntologyToOntologySourceReferenceObject(Ontology ontology) { OntologySourceRefObject converted = new OntologySourceRefObject( ontology.getOntologyAbbreviation(), "", ontology.getOntologyVersion(), ontology.getOntologyDisplayLabel()); - converted.setSourceFile( - OntologyUtils.getSourceOntologyPortalByVersion(converted.getSourceVersion()) == OntologyPortal.BIOPORTAL - ? BioPortalClient.DIRECT_ONTOLOGY_URL + converted.getSourceVersion() - : OLSClient.DIRECT_ONTOLOGY_URL + converted.getSourceName()); + converted.setSourceFile(OntologyUtils.getSourceOntologyPortalByVersion(BioPortal4Client.DIRECT_ONTOLOGY_URL + converted.getSourceVersion()).toString()); return converted; diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java index 034d17bf..a159d174 100755 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java @@ -108,7 +108,6 @@ public class OntologySelectionTool extends JFrame implements MouseListener, Onto browseOntologiesIconOver, searchOntologiesIcon, searchOntologiesIconOver, leftFieldIcon, rightFieldIcon, viewHistoryIcon, viewHistoryIconOver; - private static OntologyService olsClient = null; private static OntologyService bioportalClient = null; private InfiniteProgressPanel progressIndicator; @@ -202,32 +201,32 @@ public void setForceOntologySelection(boolean forceOntologySelection) { public void setRecommendedOntologies(final Map recommendedOntologies) { - System.out.println("Resetting recommended ontologies, it is now: parameter="+recommendedOntologies + " field="+ this.recommendedOntologies); + System.out.println("Resetting recommended ontologies, it is now: parameter=" + recommendedOntologies + " field=" + this.recommendedOntologies); - if (recommendedOntologies!=null){ + if (recommendedOntologies != null) { final boolean resetView = !(this.recommendedOntologies == recommendedOntologies); this.recommendedOntologies = recommendedOntologies; SwingUtilities.invokeLater(new Runnable() { - public void run() { + public void run() { - boolean recommendedOntologiesAvailable = checkIfRecommendedOntologiesAreAvailable(); - browseRecommendedOntologiesTab.setVisible(recommendedOntologiesAvailable); + boolean recommendedOntologiesAvailable = checkIfRecommendedOntologiesAreAvailable(); + browseRecommendedOntologiesTab.setVisible(recommendedOntologiesAvailable); - if (resetView) { - resetView(); - // should also reset the recommended ontologies. Displaying recommended ontologies for another field - // if not a great idea. - if (recommendedOntologiesAvailable) { - ontologySearchResultsTree.setModel(new FilterableOntologyTreeModel>(new DefaultMutableTreeNode("results"), ontologySearchResultsTree)); + if (resetView) { + resetView(); + // should also reset the recommended ontologies. Displaying recommended ontologies for another field + // if not a great idea. + if (recommendedOntologiesAvailable) { + ontologySearchResultsTree.setModel(new FilterableOntologyTreeModel>(new DefaultMutableTreeNode("results"), ontologySearchResultsTree)); - treeCreated = false; + treeCreated = false; + } + searchSpan.toggleOptionEnabled(RECOMMENDED_ONTOLOGIES, recommendedOntologiesAvailable); + searchSpan.setSelectedItem(recommendedOntologiesAvailable ? RECOMMENDED_ONTOLOGIES : ALL_ONTOLOGIES); } - searchSpan.toggleOptionEnabled(RECOMMENDED_ONTOLOGIES, recommendedOntologiesAvailable); - searchSpan.setSelectedItem(recommendedOntologiesAvailable ? RECOMMENDED_ONTOLOGIES : ALL_ONTOLOGIES); - } } }); @@ -578,14 +577,11 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { if (propertyChangeEvent.getNewValue() instanceof OntologyTerm) { OntologyTerm historyTerm = (OntologyTerm) propertyChangeEvent.getNewValue(); if (historyTerm != null) { - OntologyPortal portal = OntologyUtils.getSourceOntologyPortalByVersion(historyTerm.getOntologySourceInformation().getSourceVersion()); - if (portal == OntologyPortal.OLS) { - setTermDefinitionView(historyTerm); - } else { - instantiateBioPortalClientIfNull(); - Map ontologyVersions = bioportalClient.getOntologyVersions(); - setTermDefinitionView(historyTerm, ontologyVersions); - } + + instantiateBioPortalClientIfNull(); + Map ontologyVersions = bioportalClient.getOntologyVersions(); + setTermDefinitionView(historyTerm, ontologyVersions); + addSourceToUsedOntologies(historyTerm.getOntologySourceInformation()); if (multipleTermsAllowed) { addToMultipleTerms(historyTerm.getUniqueId()); @@ -642,12 +638,6 @@ private OntologyBranch createOntologyBranch(OntologyTerm ontologyTerm) { return branch; } - private void setTermDefinitionView(OntologyTerm ontologyTerm) { - boolean sourceIsInPlugins = OntologySearchPluginRegistry.isOntologySourceAbbreviationDefinedInPlugins(ontologyTerm.getOntologySource()); - viewTermDefinition.setContent( - new OntologyBranch(ontologyTerm.getOntologyTermAccession(), ontologyTerm.getOntologyTermName()), ontologyTerm.getOntologySource(), - sourceIsInPlugins ? null : olsClient == null ? new OLSClient() : olsClient); - } private JPanel createTermDefinitionPanel() { JPanel container = createStandardBorderPanel(false); @@ -839,8 +829,6 @@ private String getRecommendedOntologyCacheIdentifier() { } private void performSearch() { - - instantiateOLSClientIfNull(); instantiateBioPortalClientIfNull(); Thread performer = new Thread(new Runnable() { @@ -891,7 +879,7 @@ public void run() { } catch (Exception e) { log.error("Failed to connect to ontology service: " + e.getMessage()); - e.printStackTrace(); + System.err.println("Failed to connect to ontology resource."); } finally { if (progressIndicator.isStarted()) { EventQueue.invokeLater(new Runnable() { @@ -909,12 +897,6 @@ public void run() { performer.start(); } - private void instantiateOLSClientIfNull() { - if (olsClient == null) { - olsClient = new OLSClient(); - } - } - private void instantiateBioPortalClientIfNull() { if (bioportalClient == null) { bioportalClient = new BioPortal4Client(); @@ -924,19 +906,6 @@ private void instantiateBioPortalClientIfNull() { private void searchSpecificOntologies() { OntologyManager.placeRecommendedOntologyInformationInRecords(recommendedOntologies.values()); - List olsOntologies = filterRecommendedOntologiesForService(recommendedOntologies.values(), OntologyPortal.OLS); - - if (olsOntologies.size() > 0) { - Map> olsResult = olsClient.getTermsByPartialNameFromSource(searchField.getText(), olsOntologies); - - if (olsResult != null) { - log.info("found terms in " + olsResult.size() + " ols ontologies"); - result.putAll(olsResult); - } - } else { - log.info("Not searching OLS, nothing to search for in recommended ontologies."); - } - List bioportalOntologies = filterRecommendedOntologiesForService(recommendedOntologies.values(), OntologyPortal.BIOPORTAL); int totalResourcesSearchedOnByPluginResources = OntologySearchPluginRegistry.howManyOfTheseResourcesAreSearchedOnByPlugins(recommendedOntologies.values()); @@ -960,13 +929,6 @@ private void searchSpecificOntologies() { private void searchAllOntologies() { log.info("no recommended ontology specified, so searching for " + searchField.getText()); - Map> olsResult = olsClient.getTermsByPartialNameFromSource(searchField.getText(), null, false); - - if (olsResult != null) { - log.info("found terms in " + olsResult.size() + " ols ontologies"); - result.putAll(olsResult); - } - Map> bioportalResult = bioportalClient.getTermsByPartialNameFromSource(searchField.getText(), "all", false); log.info("found terms in " + bioportalResult.size() + " bioportal ontologies"); @@ -1171,12 +1133,10 @@ public void mousePressed(MouseEvent event) { addTerm(ontologyTerm); } - if (OntologyUtils.getSourceOntologyPortalByVersion(ontologySource.getSourceVersion()) == OntologyPortal.BIOPORTAL) { - boolean sourceIsInPlugins = OntologySearchPluginRegistry.isOntologySourceAbbreviationDefinedInPlugins(ontologyTerm.getOntologySource()); - viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceFile(), sourceIsInPlugins ? null : bioportalClient == null ? new BioPortal4Client() : bioportalClient); - } else { - viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceVersion(), olsClient); - } + + boolean sourceIsInPlugins = OntologySearchPluginRegistry.isOntologySourceAbbreviationDefinedInPlugins(ontologyTerm.getOntologySource()); + viewTermDefinition.setContent(createOntologyBranch(ontologyTerm), ontologySource.getSourceFile(), sourceIsInPlugins ? null : bioportalClient == null ? new BioPortal4Client() : bioportalClient); + } } else if (tree == browseRecommendedOntologyTree) { @@ -1190,14 +1150,10 @@ public void mousePressed(MouseEvent event) { } } - if (OntologyUtils.getSourceOntologyPortal(termNode.getOntology()) == OntologyPortal.BIOPORTAL) { - viewTermDefinition.setContent(termNode.getBranch(), - termNode.getOntology().getOntologyAbbreviation(), bioportalClient == null ? new BioPortal4Client() : bioportalClient); - } else { - viewTermDefinition.setContent(termNode.getBranch(), - termNode.getOntology().getOntologyAbbreviation(), olsClient == null ? new OLSClient() : olsClient); - } + viewTermDefinition.setContent(termNode.getBranch(), + termNode.getOntology().getOntologyAbbreviation(), bioportalClient == null ? new BioPortal4Client() : bioportalClient); + } } } diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/OLSClientTest.java b/src/test/java/org/isatools/isacreator/ontologymanager/OLSClientTest.java deleted file mode 100644 index 92511e8c..00000000 --- a/src/test/java/org/isatools/isacreator/ontologymanager/OLSClientTest.java +++ /dev/null @@ -1,125 +0,0 @@ -/** - ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) - - License: - ISAcreator is licensed under the Common Public Attribution License version 1.0 (CPAL) - - EXHIBIT A. CPAL version 1.0 - The contents of this file are subject to the CPAL version 1.0 (the License); - you may not use this file except in compliance with the License. You may obtain a - copy of the License at http://isa-tools.org/licenses/ISAcreator-license.html. - The License is based on the Mozilla Public License version 1.1 but Sections - 14 and 15 have been added to cover use of software over a computer network and - provide for limited attribution for the Original Developer. In addition, Exhibit - A has been modified to be consistent with Exhibit B. - - Software distributed under the License is distributed on an AS IS basis, - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for - the specific language governing rights and limitations under the License. - - The Original Code is ISAcreator. - The Original Developer is the Initial Developer. The Initial Developer of the - Original Code is the ISA Team (Eamonn Maguire, eamonnmag@gmail.com; - Philippe Rocca-Serra, proccaserra@gmail.com; Susanna-Assunta Sansone, sa.sanson@gmail.com; - http://www.isa-tools.org). All portions of the code written by the ISA Team are - Copyright (c) 2007-2011 ISA Team. All Rights Reserved. - - EXHIBIT B. Attribution Information - Attribution Copyright Notice: Copyright (c) 2008-2011 ISA Team - Attribution Phrase: Developed by the ISA Team - Attribution URL: http://www.isa-tools.org - Graphic Image provided in the Covered Code as file: http://isa-tools.org/licenses/icons/poweredByISAtools.png - Display of Attribution Information is required in Larger Works which are defined in the CPAL as a work which combines Covered Code or portions thereof with code not governed by the terms of the CPAL. - - Sponsors: - The ISA Team and the ISA software suite have been funded by the EU Carcinogenomics project (http://www.carcinogenomics.eu), the UK BBSRC (http://www.bbsrc.ac.uk), the UK NERC-NEBC (http://nebc.nerc.ac.uk) and in part by the EU NuGO consortium (http://www.nugo.org/everyone). - */ - - -package org.isatools.isacreator.ontologymanager; - -import org.isatools.isacreator.configuration.Ontology; -import org.isatools.isacreator.configuration.RecommendedOntology; -import org.isatools.isacreator.ontologymanager.common.OntologyTerm; -import org.junit.Test; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import static org.junit.Assert.assertTrue; - -/** - * Created by the ISA team - * - * @author Eamonn Maguire (eamonnmag@gmail.com) - *

- * Date: Dec 15, 2010 - * Time: 3:45:11 PM - */ -public class OLSClientTest { - - private OLSClient client = new OLSClient(); - - public static String testOntologyAccession = "9606"; - public static String testOntologyTerm = "sea"; - - @Test - public void getOntologyNames() { - System.out.println("Testing ____getOntologyNames()____"); - - Map ontologyNames = client.getOntologyNames(); - - for (String key : ontologyNames.keySet()) { - System.out.println(key + " -> " + ontologyNames.get(key)); - } - - assertTrue("No ontology names found", ontologyNames.size() > 0); - - System.out.println("Found " + ontologyNames.size() + " ontology names\n"); - } - - - @Test - public void getPartialNameFromSource() { - System.out.println("Testing ____getPartialNameFromSource()____"); - - Map> matchingTerms = client.getTermsByPartialNameFromSource(testOntologyTerm, "ENVO", false); - - assertTrue("No matches found for " + testOntologyTerm, matchingTerms.size() > 0); - - System.out.println("Found " + matchingTerms.values().size() + " matching terms in " + matchingTerms.keySet().size() + " ontologies \n"); - - for (OntologySourceRefObject source : matchingTerms.keySet()) { - System.out.println(source.getSourceName() + " (" + source.getSourceVersion() + ")"); - - for (OntologyTerm term : matchingTerms.get(source)) { - System.out.println("\t" + term.getOntologyTermName() + " (" + term.getOntologyTermAccession() + ")"); - } - } - } - - @Test - public void getPartialNameFromSourceWithRecommendedOntologies() { - System.out.println("Testing ____getPartialNameFromSourceWithRecommendedOntologies()____"); - - List ros = new ArrayList(); - RecommendedOntology ro1 = new RecommendedOntology(new Ontology("", "", "ENVO", "Environment Ontology")); - ros.add(ro1); - - Map> matchingTerms = client.getTermsByPartialNameFromSource(testOntologyTerm, ros); - - System.out.println("Found " + matchingTerms.values().size() + " matching terms in " + matchingTerms.keySet().size() + " ontologies \n"); - - for (OntologySourceRefObject source : matchingTerms.keySet()) { - System.out.println(source.getSourceName() + " (" + source.getSourceVersion() + ")"); - - for (OntologyTerm term : matchingTerms.get(source)) { - System.out.println("\t" + term.getOntologyTermName() + " (" + term.getOntologyTermAccession() + ")"); - } - } - - assertTrue("No matches found for " + testOntologyTerm, matchingTerms.size() > 0); - - } -} From 60c26dcd13cdcb7b08455e6e0a0a98855de2e9a1 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Tue, 7 Jan 2014 08:21:22 +0000 Subject: [PATCH 063/111] Removed exclusion in pom as now slf4j is missing --- pom.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pom.xml b/pom.xml index 60ba745d..a1c3335e 100644 --- a/pom.xml +++ b/pom.xml @@ -376,12 +376,14 @@ uk.ac.ebi jutils 1.4 + From 759bfb7da3699c1d1b61af9fd7a2a409686580f8 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Tue, 7 Jan 2014 10:14:12 +0000 Subject: [PATCH 064/111] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 228fe4d4..4778cdda 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ To run ISAcreator locally: 1. Clone the code to your machine. You may clone from the primary repository at ISA-tools/ISAcreator, or from your own fork. 2. Compile the code (`mvn assembly:assembly -Dmaven.test.skip=true -Pbuild`) - the build profile automatically sets some system variables like version etc. from information held within the pom. -3. Run the code (`java -cp target/ISAcreator-1.7.1-jar-with-dependencies.jar org.isatools.isacreator.launch.ISAcreatorApplication`) +3. Run the code (`java -cp target/ISAcreator--jar-with-dependencies.jar org.isatools.isacreator.launch.ISAcreatorApplication`) ### Contributing From 3e90547607b6f9f46bb197ef24f30ff0bfce27b8 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Tue, 7 Jan 2014 17:35:14 +0000 Subject: [PATCH 065/111] Exclusion back in - slf4j is coming from import_layer --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a1c3335e..e95a09bc 100644 --- a/pom.xml +++ b/pom.xml @@ -376,14 +376,14 @@ uk.ac.ebi jutils 1.4 - + From debdc5519a2a5e3e11f56b24291a2593a875105b Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Wed, 8 Jan 2014 16:26:19 +0000 Subject: [PATCH 066/111] Reflecting change to non-static methods --- .../ontologymanager/OntologySourceRefObject.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java index c8d856d8..77add6fe 100755 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java @@ -78,12 +78,13 @@ public OntologySourceRefObject(String sourceName, String sourceFile, public void autocomplete(){ + BioPortalClient client = new BioPortalClient(); String sourceName = getSourceName(); if (getSourceName()!=null){ if (getSourceFile()==null && getSourceVersion()==null && getSourceDescription() == null){ - setSourceFile(BioPortalClient.getOntologySourceFile(sourceName)); - setSourceDescription(BioPortalClient.getOntologyDescription(sourceName)); - setSourceVersion(BioPortalClient.getOntologyVersion(sourceName)); + setSourceFile(client.getOntologySourceFile(sourceName)); + setSourceDescription(client.getOntologyDescription(sourceName)); + setSourceVersion(client.getOntologyVersion(sourceName)); } } From 129409074fc1d33759a6404d2f6f37b4b5e94025 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 9 Jan 2014 11:53:00 +0000 Subject: [PATCH 067/111] Changes in querySearchEndpoint, validation against null for proxyPort, added IRI definition in OntologyTerm --- .../BioPortalSearchResultHandler.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index 99099770..16fd79e5 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -101,11 +101,16 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre // Configure the form parameters method.addParameter("q", term); - if(!ontologyIds.equals("all")) method.addParameter("ontology", ontologyIds); if (StringUtils.trimToNull(subtree) != null) { method.addParameter("subtree", subtree); + + if (ontologyIds!=null) + method.addParameter("ontology", ontologyIds); + } else if(!ontologyIds.equals("all")) { + method.addParameter("ontologies", ontologyIds); } + method.addParameter("apikey", API_KEY); method.addParameter("pagesize", "500"); // method.addParameter("no_links", "true"); @@ -201,6 +206,9 @@ public String queryOntologyEndpoint() { private void setHostConfiguration(HttpClient client) { HostConfiguration configuration = new HostConfiguration(); configuration.setHost("http://data.bioontology.org"); + String proxyPort = System.getProperty("http.proxyPort"); + if (proxyPort ==null) + return; configuration.setProxy(System.getProperty("http.proxyHost"), Integer.valueOf(System.getProperty("http.proxyPort"))); client.setHostConfiguration(configuration); } @@ -287,7 +295,7 @@ public Map getOntologyRoots(String ontologyAbbreviation) { private OntologyTerm createOntologyTerm(JsonObject annotationItem) { - OntologyTerm ontologyTerm = new OntologyTerm(annotationItem.getString("prefLabel"), annotationItem.getString("@id"), "", null); + OntologyTerm ontologyTerm = new OntologyTerm(annotationItem.getString("prefLabel"), annotationItem.getString("@id"), annotationItem.getString("@id"), null); ontologyTerm.addToComments("Service Provider", OntologyManager.BIO_PORTAL); extractDefinitionFromOntologyTerms(annotationItem, ontologyTerm); extractSynonymsFromOntologyTerm(annotationItem, ontologyTerm); From 85f96b29e163ee32412eec76761286150c3741bd Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 9 Jan 2014 12:09:46 +0000 Subject: [PATCH 068/111] Added test and split getTermsByPartialNameFromSource tests --- .../ontologymanager/BioPortalClient4Test.java | 32 ++++++++++++++++--- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java index 629dd415..7b65243b 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java @@ -20,12 +20,30 @@ public class BioPortalClient4Test { private String testTermAccession = "http://www.ebi.ac.uk/efo/EFO_0000428"; private String testSearchTerm = "dose"; private String ontologyId = "http://data.bioontology.org/ontologies/EFO"; + private String obiOntologyId = "OBI"; @Test - public void getTermsByPartialNameFromSource() { + public void getTermsByPartialNameFromSource1Test() { System.out.println("_____Testing getTermsByPartialNameFromSource()____"); + long startTime = System.currentTimeMillis(); + Map> result = client.getTermsByPartialNameFromSource("dose", obiOntologyId, false); + System.out.println("Took " + (System.currentTimeMillis() - startTime) + "ms to do query 'dose' in OBI."); + + + for (OntologySourceRefObject source : result.keySet()) { + System.out.println(source.getSourceName() + " (" + source.getSourceVersion() + ")"); + + for (OntologyTerm term : result.get(source)) { + System.out.println("\t" + term.getOntologyTermName() + " (" + term.getOntologyTermAccession() + ")"); + } + } + + } + + @Test + public void getTermsByPartialNameFromSource2Test() { long startTime = System.currentTimeMillis(); Map> result = client.getTermsByPartialNameFromSource(testSearchTerm, "all", false); System.out.println("Took " + (System.currentTimeMillis() - startTime) + "ms to do that query."); @@ -39,10 +57,13 @@ public void getTermsByPartialNameFromSource() { } } - System.out.println(); + } + + @Test + public void getTermsByPartialNameFromSource3Test() { + long startTime = System.currentTimeMillis(); - startTime = System.currentTimeMillis(); - result = client.getTermsByPartialNameFromSource("cy5", "all", false); + Map> result = client.getTermsByPartialNameFromSource("cy5", "all", false); System.out.println("Took " + (System.currentTimeMillis() - startTime) + "ms to do that query."); for (OntologySourceRefObject source : result.keySet()) { @@ -52,8 +73,10 @@ public void getTermsByPartialNameFromSource() { System.out.println("\t" + term.getOntologyTermName() + " (" + term.getOntologyTermAccession() + ")"); } } + } + @Test public void getTermMetadata() { System.out.println("_____Testing getTermMetadata()____"); @@ -119,4 +142,5 @@ public void getTermChildren() { System.out.println("Found " + childTerms.size() + " children for information entity in " + testOntologySource); } + } From e1be789cdfce98fc7b27a928b1d5bfa0366f31d3 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 9 Jan 2014 17:30:52 +0000 Subject: [PATCH 069/111] Added exact match search method to BioPortal4Client --- .../ontologymanager/BioPortal4Client.java | 14 ++++++++++ .../ontologymanager/BioPortalClient.java | 8 ++++++ .../ontologymanager/OntologyService.java | 4 +++ .../BioPortalSearchResultHandler.java | 27 ++++++++++++++----- .../ontologymanager/BioPortalClient4Test.java | 25 ++++++++++++++++- 5 files changed, 71 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java index 85923453..5974cd6e 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -32,6 +32,20 @@ public Map getOntologyNames() { return AcceptedOntologies.getOntologySourceToNames(); } + /** + * Retrieves an OntologyTerm given the URI of a term and the ontology bioPortal URI + * @param termId + * @param ontology + * @return + */ + public OntologyTerm getTerm(String termId, String ontology) { + return handler.getTermMetadata(termId, ontology); + } + + public Map> exactSearch(String term, String ontology) { + return handler.getSearchResults(term, ontology, null, true); + } + public Map getTermMetadata(String termId, String ontology) { return handler.getTermMetadata(termId, ontology).getComments(); } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java index 0b8dc8e2..a64a2bbf 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortalClient.java @@ -156,6 +156,14 @@ public Map getOntologyNames() { return ontologyNames; } + public OntologyTerm getTerm(String termId, String ontology) { + return null; + } + + public Map> exactSearch(String term, String ontology) { + return null; + } + public String getOntologySourceFile(String sourceName) { if (ontologyFiles.size() == 0) { getAllOntologies(); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java index 5b8a449e..d50320ed 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyService.java @@ -51,6 +51,10 @@ public interface OntologyService { public Map getOntologyNames(); + public OntologyTerm getTerm(String termId, String ontology); + + public Map> exactSearch(String term, String ontology); + public Map getTermMetadata(String termId, String ontology); public Map> getTermsByPartialNameFromSource(String term, String source, boolean reverseOrder); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index 16fd79e5..bc83cbf8 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -27,6 +27,11 @@ public class BioPortalSearchResultHandler { public static final String PARENTS = "ancestors"; public static final String CHILDREN = "children"; + + public Map> getSearchResults(String term, String ontologyIds, String subtree) { + return getSearchResults(term, ontologyIds, subtree, false); + } + /** * Returns the result of the search operation * @@ -35,12 +40,12 @@ public class BioPortalSearchResultHandler { * @param @nullable subtree - a subtree, if any to be searched under (optional) * @return - Map from the id of the ontology to the list of terms found under it. */ - public Map> getSearchResults(String term, String ontologyIds, String subtree) { + public Map> getSearchResults(String term, String ontologyIds, String subtree, boolean exactMatch) { // map from ontology id to the list of terms found for that id. Map> result = new HashMap>(); - String content = querySearchEndpoint(term, ontologyIds, subtree); + String content = querySearchEndpoint(term, ontologyIds, subtree, exactMatch); StringReader reader = new StringReader(content); @@ -48,6 +53,10 @@ public Map> getSearchResults(String term, String onto JsonObject obj = rdr.readObject(); JsonArray results = obj.getJsonArray("collection"); + + if (results==null) + return result; + for (JsonObject resultItem : results.getValuesAs(JsonObject.class)) { String ontologyId = extractOntologyId(resultItem); @@ -93,7 +102,9 @@ private void extractSynonymsFromOntologyTerm(JsonObject ontologyItemJsonDictiona } } - public String querySearchEndpoint(String term, String ontologyIds, String subtree) { + + + private String querySearchEndpoint(String term, String ontologyIds, String subtree, boolean exactMatch) { try { HttpClient client = new HttpClient(); PostMethod method = new PostMethod(BioPortal4Client.REST_URL + "search"); @@ -116,6 +127,10 @@ public String querySearchEndpoint(String term, String ontologyIds, String subtre // method.addParameter("no_links", "true"); method.addParameter("no_context", "true"); + if (exactMatch){ + method.addParameter("exact_match", "true"); + } + try { setHostConfiguration(client); } catch (Exception e) { @@ -229,7 +244,7 @@ public OntologyTerm getTermMetadata(String termId, String ontologyId) { extractDefinitionFromOntologyTerms(obj, ontologyTerm); extractSynonymsFromOntologyTerm(obj, ontologyTerm); - System.out.println(ontologyTerm.getOntologyTermName() + " - " + ontologyTerm.getOntologyTermAccession()); + System.out.println(ontologyTerm.getOntologyTermName() + " - " + ontologyTerm.getOntologyTermAccession() + " - " + ontologyTerm.getOntologyTermURI() ); return ontologyTerm; } else { @@ -242,10 +257,10 @@ private OntologySourceRefObject getOntologySourceRefObject(String ontologyId) { return new OntologySourceRefObject(associatedOntologySource.getOntologyAbbreviation(), associatedOntologySource.getOntologyID(), associatedOntologySource.getOntologyVersion(), associatedOntologySource.getOntologyDisplayLabel()); } - public String queryTermMetadataEndpoint(String termId, String ontologyId) { + public String queryTermMetadataEndpoint(String termId, String ontologyURI) { try { HttpClient client = new HttpClient(); - String url = ontologyId + "/classes/" + URLEncoder.encode(termId, "UTF-8") + "?apikey=" + API_KEY; + String url = ontologyURI + "/classes/" + URLEncoder.encode(termId, "UTF-8") + "?apikey=" + API_KEY; GetMethod method = new GetMethod(url); diff --git a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java index 7b65243b..581b4336 100644 --- a/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java +++ b/src/test/java/org/isatools/isacreator/ontologymanager/BioPortalClient4Test.java @@ -20,9 +20,32 @@ public class BioPortalClient4Test { private String testTermAccession = "http://www.ebi.ac.uk/efo/EFO_0000428"; private String testSearchTerm = "dose"; private String ontologyId = "http://data.bioontology.org/ontologies/EFO"; - private String obiOntologyId = "OBI"; + private String obiOntologyId = "http://data.bioontology.org/ontologies/OBI"; + @Test + public void exactSearchTest(){ + System.out.println("_____Testing exactSearch()____"); + + Map> result = client.exactSearch(testSearchTerm, obiOntologyId); + + List terms = result.get(obiOntologyId); + + OntologyTerm term = terms.get(0); + + System.out.println("term URI ="+term.getOntologyTermURI()); + + } + + @Test + public void getTermTest(){ + System.out.println("_____Testing getTerm()____"); + + OntologyTerm result = client.getTerm(testTermAccession, ontologyId); + + System.out.println(result.getOntologyTermName() + " - " + result.getOntologySource() + " - " + result.getOntologyTermURI() ); + } + @Test public void getTermsByPartialNameFromSource1Test() { System.out.println("_____Testing getTermsByPartialNameFromSource()____"); From fa07aec41f9871b9f55bfe8d02d7a2e183d9f398 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 9 Jan 2014 17:32:02 +0000 Subject: [PATCH 070/111] OntologyTerm related changes --- .../ontologymanager/common/OntologyTerm.java | 17 +++++----- .../utils/OntologyTermUtils.java | 31 ++++++++++++++----- 2 files changed, 31 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java index 4e9abfb3..561c25ae 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java @@ -71,15 +71,8 @@ public OntologyTerm(String termName, String accession, String iri, OntologySourc ontologyTermAccession = accession; ontologySourceInformation = ontologySourceRefObject; ontologyTermIRI = iri; - // completeValues(); } -// private void completeValues(){ -// BioPortalClient bioPortalClient = new BioPortalClient(); -// if (getOntologyVersionId()!=null && !getOntologyVersionId().equals("") && ontologyTermIRI ==null) -// ontologyTermIRI = bioPortalClient.getTermIRI(getOntologyVersionId(), ontologyTermAccession); -// } - public String getOntologyVersionId() { if (ontologySourceInformation == null) { return ""; @@ -125,8 +118,12 @@ public String getOntologyTermName() { public String getOntologyTermURI() { if (ontologyTermIRI==null){ - OntologyTerm oo = OntologyTermUtils.getURI(this); - ontologyTermIRI = oo.getOntologyTermURI(); + String iri = OntologyTermUtils.getURI(this); + System.out.println("term====>" + getOntologyTermName()+"iri ===> "+iri); + if (iri!=null) + ontologyTermIRI = iri; + else + ontologyTermIRI = ""; } return ontologyTermIRI; } @@ -136,7 +133,7 @@ public void setOntologyTermName(String ontologyTermName) { this.ontologyTermName = ontologyTermName; } - public void setOntologyPurl(String purl) { + public void setOntologyTermIRI(String purl) { this.ontologyTermIRI = purl; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java index ab96167b..85006e81 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java @@ -1,14 +1,16 @@ package org.isatools.isacreator.ontologymanager.utils; import org.isatools.isacreator.io.IOUtils; -import org.isatools.isacreator.ontologymanager.BioPortalClient; +import org.isatools.isacreator.ontologymanager.BioPortal4Client; import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.settings.ISAcreatorProperties; import java.util.HashMap; +import java.util.List; import java.util.Map; +import java.util.Set; /** * Created by the ISATeam. @@ -40,15 +42,30 @@ public static String ontologyTermToString(OntologyTerm ontologyTerm){ return ontologyTerm.getOntologyTermName() + "," + ontologyTerm.getOntologyTermAccession() +"," + ontologyTerm.getOntologySource(); } - public static OntologyTerm getURI(OntologyTerm ontologyTerm){ + public static String getURI(OntologyTerm ontologyTerm){ if (ontologyTerm==null || ontologyTerm.getOntologyTermAccession()==null - || ontologyTerm.getOntologySourceInformation()==null || ontologyTerm.getOntologySourceInformation().getSourceVersion()==null) + || ontologyTerm.getOntologySourceInformation()==null || ontologyTerm.getOntologySourceInformation().getSourceName()==null) return null; - BioPortalClient bioPortalClient = new BioPortalClient(); - ontologyTerm = bioPortalClient.getTermInformation(ontologyTerm.getOntologyTermAccession(), ontologyTerm.getOntologySourceInformation().getSourceVersion()); - //OntologyManager.addToOntologySelectionHistory(ontologyTerm.getShortForm(), ontologyTerm); - return ontologyTerm; + BioPortal4Client bioPortalClient = new BioPortal4Client(); + Map> result = bioPortalClient.exactSearch(ontologyTerm.getOntologyTermName(), + ontologyTerm.getOntologySourceInformation().getSourceName()); + + + //TODO keep info about what terms couldn't be found + Set set = result.keySet(); + if (!set.isEmpty()){ + List list = result.get(set.iterator().next()); + if (list.size()>0){ + OntologyTerm oo = list.get(0); + + ontologyTerm.setOntologyTermIRI(oo.getOntologyTermURI()); + return ontologyTerm.getOntologyTermURI(); + //ontologyTerm.setOntologyTermAccession(oo.getOntologyTermAccession()); + } + } + + return null; } From 6efae6df5782865607100acd9687bad2c4992821 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 9 Jan 2014 17:36:18 +0000 Subject: [PATCH 071/111] Validating agains null --- .../io/exportisa/exportadaptors/ISASectionExportAdaptor.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/exportisa/exportadaptors/ISASectionExportAdaptor.java b/src/main/java/org/isatools/isacreator/io/exportisa/exportadaptors/ISASectionExportAdaptor.java index c6b64b58..9a8b5203 100644 --- a/src/main/java/org/isatools/isacreator/io/exportisa/exportadaptors/ISASectionExportAdaptor.java +++ b/src/main/java/org/isatools/isacreator/io/exportisa/exportadaptors/ISASectionExportAdaptor.java @@ -89,8 +89,7 @@ private static void processSectionOntologyFields(ISASection isaSection) { Map processedOntologyField = IOUtils.processOntologyField(ontologyField, isaSection.getFieldValues()); for (String key : processedOntologyField.keySet()) { - - if (!processedOntologyField.get(key).isEmpty()) { + if (processedOntologyField.get(key)!=null && !processedOntologyField.get(key).isEmpty()) { isaSection.getFieldValues().put(key, processedOntologyField.get(key)); } } From 5d86f6438ac7ed837ce235845e7d5cc13dc6698a Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 10 Jan 2014 12:05:56 +0000 Subject: [PATCH 072/111] Adding URLEncoder for BioPortal4Client --- .../isacreator/ontologymanager/BioPortal4Client.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java index 5974cd6e..08da64c4 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/BioPortal4Client.java @@ -7,6 +7,8 @@ import org.isatools.isacreator.ontologymanager.bioportal.jsonresulthandlers.BioPortalSearchResultHandler; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; import java.util.*; /** @@ -149,6 +151,10 @@ private Map> convertStringKeyMapToOn } private String correctTermForHTTPTransport(String term) { - return term.replaceAll("[\\s]+", "%20"); + try { + return URLEncoder.encode(term, "UTF-8"); + } catch (UnsupportedEncodingException e) { + return term; + } } } From ca10aca745215c46a18dff22778b5839372772dc Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 10 Jan 2014 14:45:30 +0000 Subject: [PATCH 073/111] Made fields private in OntologyManager, added setters/getters, some of the changes in related code --- .../isatools/isacreator/gui/ISAcreator.java | 2 +- .../isatools/isacreator/io/UserProfile.java | 4 +- .../isacreator/io/UserProfileManager.java | 7 ++- .../ontologymanager/OntologyManager.java | 49 +++++++++++++++++-- 4 files changed, 53 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/ISAcreator.java b/src/main/java/org/isatools/isacreator/gui/ISAcreator.java index dea23d34..93c759d4 100755 --- a/src/main/java/org/isatools/isacreator/gui/ISAcreator.java +++ b/src/main/java/org/isatools/isacreator/gui/ISAcreator.java @@ -598,7 +598,7 @@ public void mousePressed(MouseEvent mouseEvent) { options.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent mouseEvent) { - clearOntologySearchCache.setEnabled(OntologyManager.searchResultCache.size() > 0); + clearOntologySearchCache.setEnabled(OntologyManager.searchResultCacheSize() > 0); } }); diff --git a/src/main/java/org/isatools/isacreator/io/UserProfile.java b/src/main/java/org/isatools/isacreator/io/UserProfile.java index b7d02f0d..c2e76b9b 100755 --- a/src/main/java/org/isatools/isacreator/io/UserProfile.java +++ b/src/main/java/org/isatools/isacreator/io/UserProfile.java @@ -230,8 +230,8 @@ public void setUsedOntologySources( this.usedOntologySources = usedOntologySources; } - public void setUserHistory(Map userHistory) { - this.userHistory = userHistory; + public void addToUserHistory(String k, OntologyTerm v){ + userHistory.put(k, v); } public FTPManager getFtpManager() { diff --git a/src/main/java/org/isatools/isacreator/io/UserProfileManager.java b/src/main/java/org/isatools/isacreator/io/UserProfileManager.java index 4e8da182..3445f2f0 100644 --- a/src/main/java/org/isatools/isacreator/io/UserProfileManager.java +++ b/src/main/java/org/isatools/isacreator/io/UserProfileManager.java @@ -39,7 +39,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.apache.log4j.Logger; import org.isatools.isacreator.common.EncryptedObject; -import org.isatools.isacreator.gui.ISAcreator; import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.model.*; import org.isatools.isacreator.ontologymanager.OntologyManager; @@ -58,6 +57,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.security.spec.InvalidKeySpecException; import java.util.ArrayList; import java.util.List; +import java.util.Set; /** @@ -258,7 +258,10 @@ public static void updateUserProfiles() { for (UserProfile up : UserProfileManager.getUserProfiles()) { if (up.getUsername()!=null && up.getUsername().equals(UserProfileManager.getCurrentUser().getUsername())) { - up.setUserHistory(OntologyManager.getOntologySelectionHistory()); + Set keySet = OntologyManager.getOntologySelectionHistoryKeySet(); + for(String key: keySet){ + up.addToUserHistory(key, OntologyManager.getOntologyTerm(key)); + } updateUserProfileInformation(up); break; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index e3d0299b..a0983d44 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -40,6 +40,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.configuration.RecommendedOntology; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import org.isatools.isacreator.settings.ISAcreatorProperties; import java.util.*; @@ -60,13 +61,20 @@ public class OntologyManager { private static Map ontologySelectionHistory = new HashMap(); - public static ResultCache>> searchResultCache = new ResultCache>>(); + private static ResultCache>> searchResultCache = new ResultCache>>(); + //map with used, for ontology terms for which it is not possible to find a URI + private static Map newTermMap = new HashMap(); - public static Map getOntologySelectionHistory() { - return ontologySelectionHistory; + public static void addToNewTermMap(String k, OntologyTerm v){ + newTermMap.put(k, v); } + //TODO remove this method + //public static Map getOntologySelectionHistory() { + // return ontologySelectionHistory; + //} + public static void setOntologySelectionHistory(Map ontologySelectionHistory) { OntologyManager.ontologySelectionHistory = new HashMap(); OntologyManager.ontologySelectionHistory.putAll(ontologySelectionHistory); @@ -81,8 +89,25 @@ public static void addToOntologySelectionHistory(Map ontol OntologyManager.ontologySelectionHistory.putAll(ontologySelectionHistory); } + public static int getOntologySelectionHistorySize(){ + return ontologySelectionHistory.size(); + } + + public static Collection getOntologySelectionHistoryValues(){ + return ontologySelectionHistory.values(); + } + + public static Set getOntologySelectionHistoryKeySet(){ + return ontologySelectionHistory.keySet(); + } + public static OntologyTerm getOntologyTerm(String key){ - return ontologySelectionHistory.get(key); + if (ISAcreatorProperties.getProperty(ISAcreatorProperties.ONTOLOGY_TERM_URI).equals("true")){ + if (newTermMap.containsKey(key)) + return newTermMap.get(key); + else + return null; + }else return ontologySelectionHistory.get(key); } public static String getOntologyTermPurl(String dataValue){ @@ -254,4 +279,20 @@ public static OntologySourceRefObject getOntologySourceReferenceObjectByAbbrevia public static void clearResultCache() { searchResultCache.clearCache(); } + + public static Map> getSearchResultCacheValue(String key) { + return searchResultCache.get(key); + } + + public static void addToCache(String key, Map> value) { + searchResultCache.put(key, value); + } + + public static boolean searchResultCacheContainsKey(String key){ + return searchResultCache.containsKey(key); + } + + public static int searchResultCacheSize(){ + return searchResultCache.size(); + } } From efd6e30883327af93fdcd50d306bc1f66b4e8bf8 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 10 Jan 2014 14:52:02 +0000 Subject: [PATCH 074/111] Propagated changes to OntologyManager and added method to ISAcreatorProperties --- .../java/org/isatools/isacreator/io/IOUtils.java | 12 +++++++++--- .../isacreator/settings/ISAcreatorProperties.java | 5 +++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/IOUtils.java b/src/main/java/org/isatools/isacreator/io/IOUtils.java index d97792ab..c77a8bc9 100644 --- a/src/main/java/org/isatools/isacreator/io/IOUtils.java +++ b/src/main/java/org/isatools/isacreator/io/IOUtils.java @@ -113,7 +113,8 @@ public static Map processOntologyField(Map ontol int numberAdded = 0; for (String ontologyTerm : ontologies) { - OntologyTerm oo = OntologyManager.getOntologySelectionHistory().get(ontologyTerm); + + OntologyTerm oo = OntologyManager.getOntologyTerm(ontologyTerm); if (oo != null) { tmpTerm += oo.getOntologyTermName(); @@ -145,7 +146,8 @@ public static Map processOntologyField(Map ontol } else if (term != null && term.contains(":")) { System.out.println("Getting ontology object for " + term); - OntologyTerm oo = OntologyManager.getOntologySelectionHistory().get(term); + + OntologyTerm oo = OntologyManager.getOntologyTerm(term); System.out.println("oo = " + oo); tmpTerm = term; @@ -161,7 +163,11 @@ public static Map processOntologyField(Map ontol } else { if (term.contains(":")) { String[] termAndSource = term.split(":"); - tmpSourceRefs = termAndSource[0]; + if (ISAcreatorProperties.getOntologyTermURIProperty()){ + tmpSourceRefs = ""; + } else { + tmpSourceRefs = termAndSource[0]; + } if (termAndSource.length == 2) { tmpTerm = termAndSource[1]; } else { diff --git a/src/main/java/org/isatools/isacreator/settings/ISAcreatorProperties.java b/src/main/java/org/isatools/isacreator/settings/ISAcreatorProperties.java index f608c388..988d7492 100644 --- a/src/main/java/org/isatools/isacreator/settings/ISAcreatorProperties.java +++ b/src/main/java/org/isatools/isacreator/settings/ISAcreatorProperties.java @@ -48,6 +48,7 @@ public class ISAcreatorProperties { public static final String CURRENT_CONFIGURATION = "current_configuration"; public static final String CURRENT_ISATAB = "current_isatab"; public static final String STRICT_VALIDATION = "strictValidation.isOn"; + public static final String ONTOLOGY_TERM_URI = "ontologyTermURI"; private static Map properties = new HashMap(); @@ -56,6 +57,10 @@ public static void setProperty(String key, String value) { saveProperties(); } + public static boolean getOntologyTermURIProperty(){ + return ISAcreatorProperties.getProperty(ISAcreatorProperties.ONTOLOGY_TERM_URI).equals("true"); + } + public static String getProperty(String key) { if (properties.containsKey(key)) { return properties.get(key); From 0a41ff06e47d71bdf8d877e53e976b90dadb1651 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 13 Jan 2014 10:47:53 +0000 Subject: [PATCH 075/111] OntologyManager keeps terms that don't have a URI associated in separate map, changes to propagated to other classes --- .../io/importisa/ISAtabImporter.java | 2 +- .../ontologymanager/OntologyManager.java | 75 +++++++++++++------ .../spreadsheet/SpreadsheetFunctions.java | 7 +- .../io/importisa/ISAtabFilesImporterTest.java | 21 +----- 4 files changed, 61 insertions(+), 44 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java index aaccef70..179826fd 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java @@ -288,7 +288,7 @@ protected boolean processInvestigation(String parentDirectoryPath) { assay.getAssayReference(), assayTableReferenceObject); if (builtReference != null) { assay.setTableReferenceObject(builtReference); - OntologyManager.getOntologySelectionHistory().putAll(builtReference.getReferencedOntologyTerms()); + OntologyManager.addToOntologySelectionHistory(builtReference.getReferencedOntologyTerms()); } } catch (IOException e) { messages.add(new ErrorMessage(ErrorLevel.ERROR, e.getMessage())); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index a0983d44..710b7c99 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -64,16 +64,16 @@ public class OntologyManager { private static ResultCache>> searchResultCache = new ResultCache>>(); //map with used, for ontology terms for which it is not possible to find a URI - private static Map newTermMap = new HashMap(); + private static Map noURITermMap = new HashMap(); - public static void addToNewTermMap(String k, OntologyTerm v){ - newTermMap.put(k, v); + private static void addToNoURITermMap(String k, OntologyTerm v){ + noURITermMap.put(k, v); } - //TODO remove this method - //public static Map getOntologySelectionHistory() { - // return ontologySelectionHistory; - //} + public static void addToUserHistory(OntologyTerm oo) { + if (oo!=null) + addToOntologySelectionHistory(oo.getShortForm(), oo);//ontologySelectionHistory.put(oo.getShortForm(), oo); + } public static void setOntologySelectionHistory(Map ontologySelectionHistory) { OntologyManager.ontologySelectionHistory = new HashMap(); @@ -81,12 +81,24 @@ public static void setOntologySelectionHistory(Map ontolog } public static void addToOntologySelectionHistory(String label, OntologyTerm term) { - OntologyManager.ontologySelectionHistory.put(label, term); + if (noURITermMap.containsKey(label)) + return; + if (ontologySelectionHistory.containsKey(label)) + return; + if (ISAcreatorProperties.getOntologyTermURIProperty() && term.getOntologyTermURI()!=null && !term.getOntologyTermURI().equals("")){ + ontologySelectionHistory.put(label, term); + } else { + //term.setOntologySourceInformation(null); + //term.setOntologyTermAccession(""); + addToNoURITermMap(label, term); + System.out.println("Term does not have a URI ---> " + label); + } } - - public static void addToOntologySelectionHistory(Map ontologySelectionHistory) { - OntologyManager.ontologySelectionHistory.putAll(ontologySelectionHistory); + public static void addToOntologySelectionHistory(Map osh) { + //OntologyManager.ontologySelectionHistory.putAll(osh); + for(String key: osh.keySet()) + addToOntologySelectionHistory(key, osh.get(key)); } public static int getOntologySelectionHistorySize(){ @@ -102,12 +114,13 @@ public static Set getOntologySelectionHistoryKeySet(){ } public static OntologyTerm getOntologyTerm(String key){ - if (ISAcreatorProperties.getProperty(ISAcreatorProperties.ONTOLOGY_TERM_URI).equals("true")){ - if (newTermMap.containsKey(key)) - return newTermMap.get(key); - else - return null; - }else return ontologySelectionHistory.get(key); + return ontologySelectionHistory.get(key); +// if (ISAcreatorProperties.getProperty(ISAcreatorProperties.ONTOLOGY_TERM_URI).equals("true")){ +// if (noURITermMap.containsKey(key)) +// return noURITermMap.get(key); +// else +// return null; +// }else return ontologySelectionHistory.get(key); } public static String getOntologyTermPurl(String dataValue){ @@ -262,11 +275,6 @@ public static void newInvestigation(String investigationAccession) { usedOntologySources.put(investigationAccession, new ArrayList()); } - public static void addToUserHistory(OntologyTerm oo) { - if (oo!=null) - ontologySelectionHistory.put(oo.getShortForm(), oo); - } - public static OntologySourceRefObject getOntologySourceReferenceObjectByAbbreviation(String source) { for (OntologySourceRefObject ontologySourceRefObject : getOntologiesUsed()) { if (source.equalsIgnoreCase(ontologySourceRefObject.getSourceName())) { @@ -295,4 +303,27 @@ public static boolean searchResultCacheContainsKey(String key){ public static int searchResultCacheSize(){ return searchResultCache.size(); } + + public static String getURIMappingInfo(){ + + StringBuilder builder = new StringBuilder(); + + if (!noURITermMap.isEmpty()){ + builder.append("ISA-TAB dataset loaded with URIs"); + builder.append("\nTerms that could not be mapped to a URI: "); + for(String key: noURITermMap.keySet()){ + OntologyTerm ot = noURITermMap.get(key); + builder.append("\n\t"+ ot.getOntologyTermName()+ "\t"+ ot.getOntologySource() +"\t" + ot.getOntologyTermURI()); + } + + builder.append("\nTerms that could be mapped to a URI: "); + for(String key: ontologySelectionHistory.keySet()){ + OntologyTerm ot = ontologySelectionHistory.get(key); + builder.append("\n\t"+ ot.getOntologyTermName() + "\t"+ ot.getOntologySource() +"\t" + ot.getOntologyTermURI()); + } + + } + return builder.toString(); + } + } diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java index e41c0bed..2dfb864b 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/SpreadsheetFunctions.java @@ -236,8 +236,6 @@ public boolean exportTable(File f, String separator, boolean removeEmptyColumns) Set emptyColumns = new HashSet(); - Map history = OntologyManager.getOntologySelectionHistory(); - for (int col = 1; col < spreadsheet.getTable().getColumnCount(); col++) { TableColumn tc = spreadsheet.getTable().getColumnModel().getColumn(col); // only hide columns which are empty and that are not necessarily required! @@ -249,7 +247,7 @@ public boolean exportTable(File f, String separator, boolean removeEmptyColumns) String header = tc.getHeaderValue().toString(); - OntologyTerm oo = history.get(IOUtils.getHeaderValue(header)); + OntologyTerm oo = OntologyManager.getOntologyTerm(IOUtils.getHeaderValue(header)); if (oo!=null) toPrint = "\"" + IOUtils.getHeaderName(header) + "["+ OntologyTermUtils.ontologyTermToString(oo) +"]"+ "\""; @@ -297,7 +295,8 @@ public boolean exportTable(File f, String separator, boolean removeEmptyColumns) String termAccession = ""; if (!GeneralUtils.isValueURL(val)) { - OntologyTerm oo = history.get(val); + + OntologyTerm oo = OntologyManager.getOntologyTerm(val); if (oo != null) { if (ISAcreatorProperties.getProperty("ontologyTermURI").equals("true")) diff --git a/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java b/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java index a3336cdb..67c1add1 100644 --- a/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java +++ b/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java @@ -1,29 +1,16 @@ package org.isatools.isacreator.io.importisa; +import org.apache.log4j.Logger; import org.isatools.errorreporter.model.ErrorMessage; import org.isatools.errorreporter.model.ISAFileErrorReport; -import org.isatools.isacreator.api.utils.SpreadsheetUtils; -import org.isatools.isacreator.configuration.FieldObject; -import org.isatools.isacreator.gui.AssaySpreadsheet; -import org.isatools.isacreator.managers.ApplicationManager; +import org.isatools.isacreator.model.Investigation; import org.isatools.isacreator.ontologymanager.OntologyManager; -import org.isatools.isacreator.settings.ISAcreatorProperties; -import org.isatools.isacreator.spreadsheet.Spreadsheet; -import org.isatools.isacreator.spreadsheet.model.ReferenceData; -import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; import org.junit.After; import org.junit.Before; import org.junit.Test; -import org.apache.log4j.Logger; - -import org.isatools.isacreator.model.*; - import java.io.File; import java.io.IOException; -import java.util.Collection; -import java.util.List; -import java.util.Map; import static junit.framework.Assert.assertTrue; @@ -91,8 +78,8 @@ public void importFileTest() { System.out.println("ontologies used=" + OntologyManager.getOntologiesUsed()); System.out.println("ontology description=" + OntologyManager.getOntologyDescription("OBI")); - System.out.println("ontology selection history=" + OntologyManager.getOntologySelectionHistory()); - System.out.println("ontology selection history size=" + OntologyManager.getOntologySelectionHistory().keySet().size()); + //System.out.println("ontology selection history=" + OntologyManager.getOntologySelectionHistory()); + System.out.println("ontology selection history size=" + OntologyManager.getOntologySelectionHistorySize()); System.out.println("ontology term=" + OntologyManager.getOntologyTerm("OBI:metabolite profiling")); assertTrue("Oh no, I didnt' get the expected number of studies :(", inv.getStudies().size() == 2); From b99df366e3a2e6cb5787db43b7036043d0d4664e Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 13 Jan 2014 10:57:00 +0000 Subject: [PATCH 076/111] Changes to OntologyTerm and OntologyTermUtils --- .../ontologymanager/common/OntologyTerm.java | 15 +++++--- .../utils/OntologyTermUtils.java | 34 +++++++++++-------- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java index 561c25ae..32193976 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java @@ -39,6 +39,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.apache.commons.collections15.map.ListOrderedMap; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; +import org.isatools.isacreator.settings.ISAcreatorProperties; import java.util.HashMap; import java.util.Map; @@ -70,7 +71,11 @@ public OntologyTerm(String termName, String accession, String iri, OntologySourc ontologyTermName = termName; ontologyTermAccession = accession; ontologySourceInformation = ontologySourceRefObject; - ontologyTermIRI = iri; + + if (iri!=null) + ontologyTermIRI = iri; + else + ontologyTermIRI = getOntologyTermURI(); } public String getOntologyVersionId() { @@ -119,7 +124,7 @@ public String getOntologyTermName() { public String getOntologyTermURI() { if (ontologyTermIRI==null){ String iri = OntologyTermUtils.getURI(this); - System.out.println("term====>" + getOntologyTermName()+"iri ===> "+iri); + System.out.println("term====>" + getOntologyTermName()+", iri ===> "+iri); if (iri!=null) ontologyTermIRI = iri; else @@ -170,8 +175,10 @@ public String toString() { */ public String getShortForm() { String ontologySource = getOntologySource(); - if (!ontologySource.equals("")) { - return ontologySource + ":" + getOntologyTermName(); + if (!ontologySource.equals("")){ + if (ISAcreatorProperties.getOntologyTermURIProperty()) + if (ontologyTermIRI!=null && !ontologyTermIRI.equals("")) + return ontologySource + ":" + getOntologyTermName(); } return getOntologyTermName(); } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java index 85006e81..841bde35 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java @@ -52,7 +52,6 @@ public static String getURI(OntologyTerm ontologyTerm){ ontologyTerm.getOntologySourceInformation().getSourceName()); - //TODO keep info about what terms couldn't be found Set set = result.keySet(); if (!set.isEmpty()){ List list = result.get(set.iterator().next()); @@ -60,10 +59,13 @@ public static String getURI(OntologyTerm ontologyTerm){ OntologyTerm oo = list.get(0); ontologyTerm.setOntologyTermIRI(oo.getOntologyTermURI()); + //ontologyTerm.setOntologyTermAccession(oo.getOntologyTermName()); return ontologyTerm.getOntologyTermURI(); //ontologyTerm.setOntologyTermAccession(oo.getOntologyTermAccession()); } - } + } //else { + // OntologyManager.addToNoURITermMap(ontologyTerm.getShortForm(), ontologyTerm); + //} return null; } @@ -105,9 +107,13 @@ public static OntologyTerm stringToOntologyTerm(String header){ OntologySourceRefObject ontologySource = OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source); if (accession.contains("http://")) - ontologyTerm = new OntologyTerm(term, null, accession, ontologySource); - else - ontologyTerm = new OntologyTerm(term, accession, null, ontologySource); + ontologyTerm = new OntologyTerm(term, accession, accession, ontologySource); + else { + if (ISAcreatorProperties.getOntologyTermURIProperty()) + ontologyTerm = null; + else + ontologyTerm = new OntologyTerm(term, accession, null, ontologySource); + } }else if (prevVal.startsWith("http://")) { // we have a PURL. So we'll use this directly @@ -132,10 +138,6 @@ public static OntologyTerm stringToOntologyTerm(String header){ } - - - - return ontologyTerm; } @@ -152,16 +154,17 @@ public static String headerToString(String header){ //convert the ontologyUniqueId to the ontology term string - Map ontologySelectionHistory = OntologyManager.getOntologySelectionHistory(); + //Map ontologySelectionHistory = OntologyManager.getOntologySelectionHistory(); - if (ontologySelectionHistory!=null){ + //if (ontologySelectionHistory!=null){ - OntologyTerm ontologyTerm = ontologySelectionHistory.get(ontologyUniqueId); + //OntologyTerm ontologyTerm = ontologySelectionHistory.get(ontologyUniqueId); + OntologyTerm ontologyTerm = OntologyManager.getOntologyTerm(ontologyUniqueId); if (ontologyTerm!=null){ return headerName + "[" +ontologyTermToString(ontologyTerm) +"]"; } - } + //} return null; } @@ -181,8 +184,9 @@ public static String fullAnnotatedHeaderToUniqueId(String fullAnnotatedHeader){ if (ontologyTerm != null) { uniqueId = headerName +"["+ ontologyTerm.getShortForm() + "]"; - Map history = OntologyManager.getOntologySelectionHistory(); - if (history.get(ontologyTerm.getShortForm())==null) { + //Map history = OntologyManager.getOntologySelectionHistory(); + //if (history.get(ontologyTerm.getShortForm())==null) { + if (OntologyManager.getOntologyTerm(ontologyTerm.getShortForm())==null) { Map map = new HashMap(); map.put(uniqueId, ontologyTerm); OntologyManager.addToOntologySelectionHistory(map); From 38cb1df5c75d31cb98d9cbd88c6563b3e88846cb Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 13 Jan 2014 11:27:35 +0000 Subject: [PATCH 077/111] Dealing with URIs and how they are shown in the UI --- .../isacreator/gui/menu/ImportFilesMenu.java | 8 ++++++-- .../StructureToInvestigationMapper.java | 20 ++++++++++++++++--- .../BioPortalSearchResultHandler.java | 7 ++++++- .../OntologySelectionTool.java | 19 +++++++++++------- .../isacreator/spreadsheet/Spreadsheet.java | 19 ++++++++++-------- .../model/TableReferenceObject.java | 13 ++++++++++-- 6 files changed, 63 insertions(+), 23 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java index caa18f3f..d3793358 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java @@ -49,6 +49,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.gui.io.importisa.ISAtabFilesImporterFromGUI; import org.isatools.isacreator.io.importisa.ISAtabImporter; import org.isatools.isacreator.managers.ApplicationManager; +import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.settings.ISAcreatorProperties; import org.jdesktop.fuse.InjectedResource; @@ -56,8 +57,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; import java.io.File; import java.util.ArrayList; import java.util.List; @@ -155,6 +154,8 @@ public void run() { final ISAtabImporter iISA = new ISAtabFilesImporterFromGUI(ApplicationManager.getCurrentApplicationInstance()); boolean successfulImport = iISA.importFile(dir); + System.out.println("********************\n"+OntologyManager.getURIMappingInfo()); + if (successfulImport && iISA.getMessages().size() == 0) { System.out.println("ISA-TAB dataset loaded"); @@ -166,6 +167,7 @@ public void run() { ISAcreatorProperties.setProperty(ISAcreatorProperties.CURRENT_ISATAB, new File(dir).getAbsolutePath()); + } else if (successfulImport) { log.error("The following problems were encountered when importing the ISAtab files in " + dir); @@ -247,6 +249,8 @@ public void run() { } } }); + + performer.start(); } diff --git a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java index 41682636..cb265980 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java @@ -49,6 +49,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; +import org.isatools.isacreator.settings.ISAcreatorProperties; import org.isatools.isacreator.utils.GeneralUtils; import uk.ac.ebi.utils.collections.Pair; @@ -363,6 +364,7 @@ private Pair, List> processStudyDesigns(OrderedMap, List> processFactors(OrderedMap"+ term); + + //} + } } } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index bc83cbf8..ef239d49 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -14,7 +14,8 @@ import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import javax.json.*; -import java.io.*; +import java.io.StringReader; +import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.util.ArrayList; import java.util.HashMap; @@ -137,6 +138,10 @@ private String querySearchEndpoint(String term, String ontologyIds, String subtr System.err.println("Problem encountered setting host configuration for search"); } +// System.out.println(method.getURI().toString()); +// for(NameValuePair pair : method.getParameters()) { +// System.out.println(pair.getName() + "=" + pair.getValue()); +// } int statusCode = client.executeMethod(method); if (statusCode != -1) { diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java index fa0a127b..14677bee 100755 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java @@ -621,7 +621,8 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { private List getSortedHistory() { List ontologyTerms = new ArrayList(); - ontologyTerms.addAll(OntologyManager.getOntologySelectionHistory().values()); + //ontologyTerms.addAll(OntologyManager.getOntologySelectionHistory().values()); + ontologyTerms.addAll(OntologyManager.getOntologySelectionHistoryValues()); Collections.sort(ontologyTerms); return ontologyTerms; } @@ -719,7 +720,8 @@ private void confirmSelection() { firePropertyChange("selectedOntology", "OLD_VALUE", selectedTerm.getText()); if (historyList.getSelectedIndex() != -1) { - OntologyManager.getOntologySelectionHistory().put(historyList.getSelectedValue().toString(), (OntologyTerm) historyList.getSelectedValue()); + //OntologyManager.getOntologySelectionHistory().put(historyList.getSelectedValue().toString(), (OntologyTerm) historyList.getSelectedValue()); + OntologyManager.addToOntologySelectionHistory(historyList.getSelectedValue().toString(), (OntologyTerm) historyList.getSelectedValue()); } historyList.getFilterField().setText(""); historyList.clearSelection(); @@ -856,7 +858,8 @@ public void run() { String cacheKeyLookup = "term" + ":" + searchOn + ":" + searchField.getText(); - if (!OntologyManager.searchResultCache.containsKey(cacheKeyLookup)) { + //if (!OntologyManager.searchResultCache.containsKey(cacheKeyLookup)) { + if (!OntologyManager.searchResultCacheContainsKey(cacheKeyLookup)) { result = new HashMap>(); if (searchAllOntologies) { @@ -867,11 +870,11 @@ public void run() { // only add to the cache if we got a result! if (result.size() > 0) { - OntologyManager.searchResultCache.addToCache(cacheKeyLookup, result); + OntologyManager.addToCache(cacheKeyLookup, result); } } else { - result = OntologyManager.searchResultCache.get(cacheKeyLookup); + result = OntologyManager.getSearchResultCacheValue(cacheKeyLookup); } @@ -992,9 +995,11 @@ private List filterRecommendedOntologiesForService(Collecti public void updatehistory() { SwingUtilities.invokeLater(new Runnable() { public void run() { - if ((historyList != null) && (OntologyManager.getOntologySelectionHistory() != null)) { + // if ((historyList != null) && (OntologyManager.getOntologySelectionHistory() != null)) { + if ((historyList != null)){ // && (OntologyManager.getOntologySelectionHistory() != null)) { - OntologyTerm[] newHistory = new OntologyTerm[OntologyManager.getOntologySelectionHistory().size()]; + //OntologyTerm[] newHistory = new OntologyTerm[OntologyManager.getOntologySelectionHistory().size()]; + OntologyTerm[] newHistory = new OntologyTerm[OntologyManager.getOntologySelectionHistorySize()]; int count = 0; for (OntologyTerm oo : getSortedHistory()) { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java index 41c99f62..32bc78bf 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java @@ -269,13 +269,8 @@ public void instantiateSpreadsheet() { } private void addOntologyTermsToUserHistory() { - Map referencedOntologyTerms = tableReferenceObject.getReferencedOntologyTerms(); - Map ontoHistory = OntologyManager.getOntologySelectionHistory(); - - for (OntologyTerm oo : referencedOntologyTerms.values()) { - ontoHistory.put(oo.getShortForm(), oo); - } + OntologyManager.addToOntologySelectionHistory(referencedOntologyTerms); } private void populateSpreadsheetWithContent() { @@ -1291,7 +1286,7 @@ private void rebuildDependencies(Map> mappings) * @return - OntologyObject matching the unique id if found, null otherwise. */ private OntologyTerm searchUserHistory(String uniqueId) { - return OntologyManager.getOntologySelectionHistory().get(uniqueId); + return OntologyManager.getOntologyTerm(uniqueId); } /** @@ -1640,13 +1635,21 @@ public void valueChanged(ListSelectionEvent event) { // update status panel in bottom left hand corner of workspace to contain the ontology // information. this should possibly be extended to visualize the ontology location within // the ontology tree itself. + studyDataEntryEnvironment.getDataEntryEnvironment().setStatusPaneInfo("" + "ontology term information" + "" + "

" + ooForSelectedTerm.getOntologyTermName() + "

" + "

source ref: " + ooForSelectedTerm.getOntologySource() + "

" + + + ( ooForSelectedTerm.getOntologyTermAccession().contains("http://") ? "" : + "

accession no: " + - ooForSelectedTerm.getOntologyTermAccession() + "

" + + ooForSelectedTerm.getOntologyTermAccession() + "

" ) + + +// ((ooForSelectedTerm.getOntologyTermURI()!=null && !ooForSelectedTerm.getOntologyTermURI().equals("")) ? +// "

uri: " + ooForSelectedTerm.getOntologyTermURI() + "

" : "") + + ""); } } diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java index 8a633216..4cef446b 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java @@ -50,6 +50,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; +import org.isatools.isacreator.settings.ISAcreatorProperties; import org.isatools.isacreator.spreadsheet.StringValidation; import org.isatools.isacreator.spreadsheet.ValidationObject; @@ -350,10 +351,18 @@ public void addRowData(String[] headers, String[] rowData) { String term = parts[1]; String accession = s.trim(); + OntologyTerm ot = null; if (!referencedOntologyTerms.containsKey(prevVal)) { - referencedOntologyTerms.put(prevVal, - new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source))); + ot = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + referencedOntologyTerms.put(prevVal, ot); + + } else { + ot = referencedOntologyTerms.get(prevVal); + } + if (!(ISAcreatorProperties.getOntologyTermURIProperty() && ot.getOntologyTermURI()!=null && !ot.getOntologyTermURI().equals(""))) + rowDataModified.set(prevValLoc, term); + } } } From 8045be1e8bd633b72c2ea8c0c24e285cfb6ca453 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 13 Jan 2014 12:04:17 +0000 Subject: [PATCH 078/111] Displaying info about terms and URIs --- .../isacreator/gui/menu/ImportFilesMenu.java | 2 -- .../io/importisa/ISAtabImporter.java | 7 +++++ .../ontologymanager/OntologyManager.java | 28 ++++++++++++++++--- .../ontologymanager/common/OntologyTerm.java | 2 +- 4 files changed, 32 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java index d3793358..dc23a729 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java @@ -154,8 +154,6 @@ public void run() { final ISAtabImporter iISA = new ISAtabFilesImporterFromGUI(ApplicationManager.getCurrentApplicationInstance()); boolean successfulImport = iISA.importFile(dir); - System.out.println("********************\n"+OntologyManager.getURIMappingInfo()); - if (successfulImport && iISA.getMessages().size() == 0) { System.out.println("ISA-TAB dataset loaded"); diff --git a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java index 179826fd..08f6412a 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java @@ -66,7 +66,9 @@ public ISAtabImporter() { * @return list of ISAFileErrorReports */ public List getMessages() { + return errors; + } public String getMessagesAsString() { @@ -206,6 +208,11 @@ protected boolean commonImportFile(String parentDir) { return false; } + + System.out.println("********************\n"+OntologyManager.getURIMappingInfo()); + messages.add(new ErrorMessage(ErrorLevel.WARNING, OntologyManager.getURIMappingInfoHTML())); + + } catch (IOException e) { messages.add(new ErrorMessage(ErrorLevel.ERROR, e.getMessage())); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index 710b7c99..1559209b 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -88,10 +88,8 @@ public static void addToOntologySelectionHistory(String label, OntologyTerm term if (ISAcreatorProperties.getOntologyTermURIProperty() && term.getOntologyTermURI()!=null && !term.getOntologyTermURI().equals("")){ ontologySelectionHistory.put(label, term); } else { - //term.setOntologySourceInformation(null); - //term.setOntologyTermAccession(""); addToNoURITermMap(label, term); - System.out.println("Term does not have a URI ---> " + label); + //System.out.println("Term does not have a URI ---> " + label); } } @@ -304,6 +302,7 @@ public static int searchResultCacheSize(){ return searchResultCache.size(); } + public static String getURIMappingInfo(){ StringBuilder builder = new StringBuilder(); @@ -314,13 +313,34 @@ public static String getURIMappingInfo(){ for(String key: noURITermMap.keySet()){ OntologyTerm ot = noURITermMap.get(key); builder.append("\n\t"+ ot.getOntologyTermName()+ "\t"+ ot.getOntologySource() +"\t" + ot.getOntologyTermURI()); - } + } builder.append("\nTerms that could be mapped to a URI: "); for(String key: ontologySelectionHistory.keySet()){ OntologyTerm ot = ontologySelectionHistory.get(key); builder.append("\n\t"+ ot.getOntologyTermName() + "\t"+ ot.getOntologySource() +"\t" + ot.getOntologyTermURI()); } + } + return builder.toString(); + } + + public static String getURIMappingInfoHTML(){ + + StringBuilder builder = new StringBuilder(); + + if (!noURITermMap.isEmpty()){ + builder.append("ISA-TAB dataset loaded with URIs"); + builder.append("

Terms that could not be mapped to a URI: "); + for(String key: noURITermMap.keySet()){ + OntologyTerm ot = noURITermMap.get(key); + builder.append("

"+ ot.getOntologySource()+":"+ot.getOntologyTermName() +"

"); + } + + builder.append("
Terms that could be mapped to a URI: "); + for(String key: ontologySelectionHistory.keySet()){ + OntologyTerm ot = ontologySelectionHistory.get(key); + builder.append("

"+ ot.getOntologySource()+":"+ot.getOntologyTermName() +" -> " + ot.getOntologyTermURI()+"

"); + } } return builder.toString(); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java index 32193976..3f70931c 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java @@ -124,7 +124,7 @@ public String getOntologyTermName() { public String getOntologyTermURI() { if (ontologyTermIRI==null){ String iri = OntologyTermUtils.getURI(this); - System.out.println("term====>" + getOntologyTermName()+", iri ===> "+iri); + //System.out.println("term====>" + getOntologyTermName()+", iri ===> "+iri); if (iri!=null) ontologyTermIRI = iri; else From a81d4fd83220ed1946b9eebf264b72f3ce3ef663 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 13 Jan 2014 15:27:27 +0000 Subject: [PATCH 079/111] Upgraded to ISAErrorReporter 0.6 and used info level to show URI mappings --- pom.xml | 2 +- .../isacreator/io/importisa/ISAtabImporter.java | 2 +- .../isacreator/ontologymanager/OntologyManager.java | 12 ++---------- 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index e95a09bc..5b671000 100644 --- a/pom.xml +++ b/pom.xml @@ -363,7 +363,7 @@ org.isatools ISAtabErrorReporter - 0.5 + 0.6 diff --git a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java index 08f6412a..701b47bd 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java @@ -210,7 +210,7 @@ protected boolean commonImportFile(String parentDir) { } System.out.println("********************\n"+OntologyManager.getURIMappingInfo()); - messages.add(new ErrorMessage(ErrorLevel.WARNING, OntologyManager.getURIMappingInfoHTML())); + messages.add(new ErrorMessage(ErrorLevel.INFO, OntologyManager.getURIMappingInfoHTML())); } catch (IOException e) { diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index 1559209b..4766af49 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -63,7 +63,7 @@ public class OntologyManager { private static ResultCache>> searchResultCache = new ResultCache>>(); - //map with used, for ontology terms for which it is not possible to find a URI + //map with - used for ontology terms for which it is not possible to find a URI private static Map noURITermMap = new HashMap(); private static void addToNoURITermMap(String k, OntologyTerm v){ @@ -72,7 +72,7 @@ private static void addToNoURITermMap(String k, OntologyTerm v){ public static void addToUserHistory(OntologyTerm oo) { if (oo!=null) - addToOntologySelectionHistory(oo.getShortForm(), oo);//ontologySelectionHistory.put(oo.getShortForm(), oo); + addToOntologySelectionHistory(oo.getShortForm(), oo); } public static void setOntologySelectionHistory(Map ontologySelectionHistory) { @@ -89,12 +89,10 @@ public static void addToOntologySelectionHistory(String label, OntologyTerm term ontologySelectionHistory.put(label, term); } else { addToNoURITermMap(label, term); - //System.out.println("Term does not have a URI ---> " + label); } } public static void addToOntologySelectionHistory(Map osh) { - //OntologyManager.ontologySelectionHistory.putAll(osh); for(String key: osh.keySet()) addToOntologySelectionHistory(key, osh.get(key)); } @@ -113,12 +111,6 @@ public static Set getOntologySelectionHistoryKeySet(){ public static OntologyTerm getOntologyTerm(String key){ return ontologySelectionHistory.get(key); -// if (ISAcreatorProperties.getProperty(ISAcreatorProperties.ONTOLOGY_TERM_URI).equals("true")){ -// if (noURITermMap.containsKey(key)) -// return noURITermMap.get(key); -// else -// return null; -// }else return ontologySelectionHistory.get(key); } public static String getOntologyTermPurl(String dataValue){ From 79048d2f810446ce2b06a874e525bb49cefe22cd Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 14 Jan 2014 16:11:47 +0000 Subject: [PATCH 080/111] Automatically correct incoming comments to have a space between the Comment and [] sections to avoid duplicates appearing in the interface. --- .../io/importisa/InvestigationImport.java | 2 +- .../isacreator/utils/StringProcessing.java | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java index d6525c45..84394c85 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java @@ -128,7 +128,7 @@ public Pair()); diff --git a/src/main/java/org/isatools/isacreator/utils/StringProcessing.java b/src/main/java/org/isatools/isacreator/utils/StringProcessing.java index 74448ef7..a4077d3c 100644 --- a/src/main/java/org/isatools/isacreator/utils/StringProcessing.java +++ b/src/main/java/org/isatools/isacreator/utils/StringProcessing.java @@ -127,6 +127,20 @@ public static String extractQualifierFromField(String value) { } } + /** + * From a Comment[qualifier] for example, this method with inject a space + * between the Comment and [qualifier] so that everything is consistent in the + * interface + * @param fieldName field to check and split + * @return modified field + */ + public static String insertSpaceIntoQualifiedField(String fieldName) { + if(fieldName.contains("[")) { + return fieldName.substring(0,fieldName.indexOf("[")).trim() + " " + fieldName.substring(fieldName.indexOf("[")); + } + return fieldName; + } + public static String convertStringToTitleCase(String toConvert) { BreakIterator wordBreaker = BreakIterator.getWordInstance(); wordBreaker.setText(toConvert); From 1aafe0daf781ace0767c0f6fb7b8cb179014d804 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Tue, 14 Jan 2014 16:14:06 +0000 Subject: [PATCH 081/111] Upgrade to 1.7.4. Uses import layer version 1.6.5 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e95a09bc..1fc4c616 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.isatools ISAcreator bundle - 1.7.3 + 1.7.4 ISAcreator http://www.isa-tools.org @@ -396,7 +396,7 @@ org.isatools import_layer - 1.6.4 + 1.6.5 uk.ac.ebi From f64d069b22e405e1358b0b48f06271f8912bf988 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Wed, 15 Jan 2014 17:22:51 +0000 Subject: [PATCH 082/111] Reorganised OntologyManager --- .../ontologymanager/OntologyManager.java | 278 +++++++++--------- 1 file changed, 146 insertions(+), 132 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index 4766af49..86ac2065 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -46,6 +46,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi /** * @author Eamonn Maguire + * @author Alejandra Gonzalez-Beltran * @date Feb 9, 2009 */ public class OntologyManager { @@ -54,66 +55,102 @@ public class OntologyManager { public static final String OLS = "OLS"; public static final String BIO_PORTAL = "BioPortal"; - //a map with - private static Map> usedOntologySources = new HashMap>(); + //All the ontologySourceRefObject, indexed by their (abbreviated) name + private static Map ontologySources = new HashMap(); - private static Map completeOntologySourceDictionary = new HashMap(); + //a map with - only used on the Merging facility + private static Map> ontologySourcesForMerging = new HashMap>(); - private static Map ontologySelectionHistory = new HashMap(); + //a map with for each of the ontology terms used for annotating the ISA-TAB dataset + private static Map ontologyTerms = new HashMap(); - private static ResultCache>> searchResultCache = new ResultCache>>(); + //a map with = history of the ontology terms used - maintained in the user profile + private static Map ontologyTermHistory = new HashMap(); //map with - used for ontology terms for which it is not possible to find a URI private static Map noURITermMap = new HashMap(); + private static ResultCache>> searchResultCache = new ResultCache>>(); + private static void addToNoURITermMap(String k, OntologyTerm v){ noURITermMap.put(k, v); } - public static void addToUserHistory(OntologyTerm oo) { + /*** ontologyTermHistory methods ****/ + + public static void addToOntologyTermHistory(OntologyTerm oo) { if (oo!=null) - addToOntologySelectionHistory(oo.getShortForm(), oo); + addToOntologyTermHistory(oo.getShortForm(), oo); + } + + /** + * + * @param label + * @param term + */ + public static void addToOntologyTermHistory(String label, OntologyTerm term) { + if (ISAcreatorProperties.getOntologyTermURIProperty()) + if (term.getOntologyTermURI()!=null && !term.getOntologyTermURI().equals("")) + ontologyTermHistory.put(label, term); + else + ontologyTermHistory.put(label, term); + + } + + public static void setOntologyTermHistory(Map history) { + if (history!=null && history.size()==0) + return; + ontologyTermHistory = new HashMap(); + ontologyTermHistory.putAll(history); } - public static void setOntologySelectionHistory(Map ontologySelectionHistory) { - OntologyManager.ontologySelectionHistory = new HashMap(); - OntologyManager.ontologySelectionHistory.putAll(ontologySelectionHistory); + public static void clearOntologyTermHistory() { + ontologyTermHistory.clear(); } + /*** end of ontologyTermHistory methods ****/ - public static void addToOntologySelectionHistory(String label, OntologyTerm term) { + /*** ontologyTerms methods ****/ + public static void addToOntologyTerms(Map osh) { + for(String key: osh.keySet()) + addToOntologyTerms(key, osh.get(key)); + } + + public static void addToOntologyTerms(OntologyTerm term){ + if (term!=null) + addToOntologyTerms(term.getShortForm(), term); + } + + public static void addToOntologyTerms(String label, OntologyTerm term) { if (noURITermMap.containsKey(label)) return; - if (ontologySelectionHistory.containsKey(label)) + if (ontologyTerms.containsKey(label)) return; if (ISAcreatorProperties.getOntologyTermURIProperty() && term.getOntologyTermURI()!=null && !term.getOntologyTermURI().equals("")){ - ontologySelectionHistory.put(label, term); + ontologyTerms.put(label, term); + addToOntologyTermHistory(label, term); + //TODO do I need this? --- addToUsedOntologies(term.getOntologySourceInformation()); } else { addToNoURITermMap(label, term); } } - public static void addToOntologySelectionHistory(Map osh) { - for(String key: osh.keySet()) - addToOntologySelectionHistory(key, osh.get(key)); - } - - public static int getOntologySelectionHistorySize(){ - return ontologySelectionHistory.size(); + public static int getOntologyTermsSize(){ + return ontologyTerms.size(); } - public static Collection getOntologySelectionHistoryValues(){ - return ontologySelectionHistory.values(); + public static Collection getOntologyTermsValues(){ + return ontologyTerms.values(); } - public static Set getOntologySelectionHistoryKeySet(){ - return ontologySelectionHistory.keySet(); + public static Set getOntologyTermsKeySet(){ + return ontologyTerms.keySet(); } public static OntologyTerm getOntologyTerm(String key){ - return ontologySelectionHistory.get(key); + return ontologyTerms.get(key); } - public static String getOntologyTermPurl(String dataValue){ + public static String getOntologyTermURI(String dataValue){ OntologyTerm ontologyTerm = getOntologyTerm(dataValue); return ontologyTerm!=null? ontologyTerm.getOntologyTermURI() : null; } @@ -128,151 +165,96 @@ public static String getOntologyTermSource(String dataValue){ return ontologyTerm!=null? ontologyTerm.getOntologySource() : null; } + public static void clearOntologyTerms(){ + ontologyTerms.clear(); + } + + /** + * Retrieves the ontology sources corresponding to used ontology terms + * + * + * @return + */ + public static Set getOntologiesUsed(){ + Set set = new HashSet(); + for(OntologyTerm ot: ontologyTerms.values()){ + set.add(ot.getOntologySourceInformation()); + } + return set; + } + + /*** end of ontologyTerms methods ****/ + + /*** ontologySources methods ****/ public static void placeRecommendedOntologyInformationInRecords(Collection recommendedOntologies) { if (recommendedOntologies != null) { for (RecommendedOntology ro : recommendedOntologies) { Ontology o = ro.getOntology(); - completeOntologySourceDictionary.put(o.getOntologyAbbreviation(), + ontologySources.put(o.getOntologyAbbreviation(), new OntologySourceRefObject(o.getOntologyAbbreviation(), "", o.getOntologyVersion(), o.getOntologyDisplayLabel())); } } } public static String getOntologyDescription(String ontologyAbbreviation) { - if (completeOntologySourceDictionary.containsKey(ontologyAbbreviation)) { - return completeOntologySourceDictionary.get(ontologyAbbreviation).getSourceDescription(); + if (ontologySources.containsKey(ontologyAbbreviation)) { + return ontologySources.get(ontologyAbbreviation).getSourceDescription(); } - return ""; } public static String getOntologyVersion(String ontologyAbbreviation) { - if (completeOntologySourceDictionary.containsKey(ontologyAbbreviation)) { - return completeOntologySourceDictionary.get(ontologyAbbreviation).getSourceVersion(); + if (ontologySources.containsKey(ontologyAbbreviation)) { + return ontologySources.get(ontologyAbbreviation).getSourceVersion(); } return ""; } - public static void addOLSOntologyDefinitions(Map ontologyAbbrevToNames, Map ontologyAbbrevToVersion) { - - for (String ontologyAbbreviation : ontologyAbbrevToNames.keySet()) { - completeOntologySourceDictionary.put(ontologyAbbreviation, new OntologySourceRefObject(ontologyAbbreviation, "", - ontologyAbbrevToVersion.get(ontologyAbbreviation), ontologyAbbrevToNames.get(ontologyAbbreviation))); + public static String getSourceFile(String ontologyAbbreviation) { + if (ontologySources.containsKey(ontologyAbbreviation)) { + return ontologySources.get(ontologyAbbreviation).getSourceFile(); } - } - /** - * Add an OntologySourceRefObject to the list of defined Ontologies - * - * @param osro - OntologySourceReferenceObject to be added. - */ - public static void addToUsedOntologies(OntologySourceRefObject osro) { - String key = getValidKey(); - //removeAnyPreexistingOntologySourceRefForUpdate(key, osro); - getOntologiesUsed(key).add(osro); - //addToUsedOntologySources(key, osro); + return ""; } - private static String getValidKey() { - if (usedOntologySources.isEmpty()) { - usedOntologySources.put("investigation", new ArrayList()); - return "investigation"; - } else { - if(usedOntologySources != null && usedOntologySources.size() > 0) - return usedOntologySources.keySet().iterator().next(); - } - return "investigation"; - } + public static void addOLSOntologyDefinitions(Map ontologyAbbrevToNames, Map ontologyAbbrevToVersion) { - public static void clearUsedOntologies(String investigationAccession) { - if (usedOntologySources.containsKey(investigationAccession)) { - usedOntologySources.remove(investigationAccession); + for (String ontologyAbbreviation : ontologyAbbrevToNames.keySet()) { + ontologySources.put(ontologyAbbreviation, new OntologySourceRefObject(ontologyAbbreviation, "", + ontologyAbbrevToVersion.get(ontologyAbbreviation), ontologyAbbrevToNames.get(ontologyAbbreviation))); } } - public static List getOntologiesUsed(String investigationAccession) { - return usedOntologySources.get(investigationAccession); + public static Collection getOntologySources(){ + return ontologySources.values(); } - public static List getOntologiesUsed() { - List sourceRefObjects = new ArrayList(); - - Set addedOntologySourceRefs = new HashSet(); - - for (String investigationAcc : usedOntologySources.keySet()) { - - List refObjects = usedOntologySources.get(investigationAcc); - - for (OntologySourceRefObject refObject : refObjects) { - - if (!addedOntologySourceRefs.contains(refObject.getSourceName())) { - sourceRefObjects.add(refObject); - - addedOntologySourceRefs.add(refObject.getSourceName()); - } - } - - } - - return sourceRefObjects; + public static void setOntologySources(Set ontologiesUsed) { + for (OntologySourceRefObject sourceRefObject: ontologiesUsed) + ontologySources.put(sourceRefObject.getSourceName(), sourceRefObject); } - public static void setOntologiesUsed(String investigationAccession, List ontologiesUsed) { - usedOntologySources.put(investigationAccession, ontologiesUsed); - } - -// public static void removeAnyPreexistingOntologySourceRefForUpdate(String investigationAccession, OntologySourceRefObject osro) { -// -// if (usedOntologySources.get(investigationAccession) != null) { -// Iterator iterator = usedOntologySources.get(investigationAccession).iterator(); -// while (iterator.hasNext()) -// -// if (iterator.next().getSourceName().equals(osro.getSourceName())) { -// iterator.remove(); -// return; -// } -// } +// //Used in ISAcreator.saveProfilesAndGoToMain and ISAcreator.SaveAction +// public static void clearReferencedOntologySources() { +// ontologySources.clear(); // } - public static void clearReferencedOntologySources() { - usedOntologySources.clear(); - } - - public static void clearUserHistory() { - ontologySelectionHistory.clear(); - } - - public static void addToUsedOntologySources(String investigationAccession, List ontologiesToAdd) { - for (OntologySourceRefObject osro : ontologiesToAdd) { - addToUsedOntologySources(investigationAccession, osro); - } - } - - public static void addToUsedOntologySources(String investigationAccession, OntologySourceRefObject ontologyToAdd) { - //removeAnyPreexistingOntologySourceRefForUpdate(investigationAccession, ontologyToAdd); - - if (!usedOntologySources.containsKey(investigationAccession)) { - usedOntologySources.put(investigationAccession, new ArrayList()); - } - usedOntologySources.get(investigationAccession).add(ontologyToAdd); - } - - - public static void newInvestigation(String investigationAccession) { - usedOntologySources.put(investigationAccession, new ArrayList()); - } - public static OntologySourceRefObject getOntologySourceReferenceObjectByAbbreviation(String source) { - for (OntologySourceRefObject ontologySourceRefObject : getOntologiesUsed()) { + for (OntologySourceRefObject ontologySourceRefObject : getOntologySources()) { if (source.equalsIgnoreCase(ontologySourceRefObject.getSourceName())) { return ontologySourceRefObject; } } return null; } + /*** end of ontologySources methods ***/ + + + /*** searchResultCache methods ***/ public static void clearResultCache() { searchResultCache.clearCache(); @@ -293,7 +275,37 @@ public static boolean searchResultCacheContainsKey(String key){ public static int searchResultCacheSize(){ return searchResultCache.size(); } + /*** end of searchResultCache methods ***/ + + /*** methods required for merging functionality ***/ + + //Used in Investigation.initialise() + public static void newInvestigation(String investigationAccession) { + investigationAccession = investigationAccession.equals("") ? "investigation-" + System.currentTimeMillis() : investigationAccession; + ontologySourcesForMerging.put(investigationAccession, new HashSet()); + } + + private static String getValidKey() { + if (ontologySources.isEmpty()) { + ontologySourcesForMerging.put("investigation", new HashSet()); + return "investigation"; + } else { + if(ontologySources != null && ontologySources.size() > 0) + return ontologySources.keySet().iterator().next(); + } + return "investigation"; + } + //USED in MergeFilesUI.mergeFiles + public static void clearUsedOntologies(String investigationAccession) { + if (ontologySourcesForMerging.containsKey(investigationAccession)) { + ontologySourcesForMerging.remove(investigationAccession); + } + } + + /*** end of methods required for merging functionality ***/ + + /*** getURIMappingInfo ***/ public static String getURIMappingInfo(){ @@ -308,8 +320,8 @@ public static String getURIMappingInfo(){ } builder.append("\nTerms that could be mapped to a URI: "); - for(String key: ontologySelectionHistory.keySet()){ - OntologyTerm ot = ontologySelectionHistory.get(key); + for(String key: ontologyTerms.keySet()){ + OntologyTerm ot = ontologyTerms.get(key); builder.append("\n\t"+ ot.getOntologyTermName() + "\t"+ ot.getOntologySource() +"\t" + ot.getOntologyTermURI()); } } @@ -329,8 +341,8 @@ public static String getURIMappingInfoHTML(){ } builder.append("
Terms that could be mapped to a URI: "); - for(String key: ontologySelectionHistory.keySet()){ - OntologyTerm ot = ontologySelectionHistory.get(key); + for(String key: ontologyTerms.keySet()){ + OntologyTerm ot = ontologyTerms.get(key); builder.append("

"+ ot.getOntologySource()+":"+ot.getOntologyTermName() +" -> " + ot.getOntologyTermURI()+"

"); } @@ -338,4 +350,6 @@ public static String getURIMappingInfoHTML(){ return builder.toString(); } + /*** end of getURIMappingInfo ***/ + } From 41e46bf10030678fce74b04e4ff322ea863e12c4 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Wed, 15 Jan 2014 17:25:21 +0000 Subject: [PATCH 083/111] Added update, equals and hashCode methods to OtnologySourceRefObject --- .../OntologySourceRefObject.java | 71 +++++++++++++++---- 1 file changed, 59 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java index 77add6fe..b34bf721 100755 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java @@ -37,7 +37,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.ontologymanager; +import org.isatools.isacreator.configuration.Ontology; import org.isatools.isacreator.model.ISASection; +import org.isatools.isacreator.ontologymanager.bioportal.io.AcceptedOntologies; import java.io.Serializable; @@ -56,7 +58,6 @@ public class OntologySourceRefObject extends ISASection implements Serializable, public static final String SOURCE_VERSION = "Term Source Version"; public static final String SOURCE_DESCRIPTION = "Term Source Description"; - public OntologySourceRefObject() { super(); } @@ -69,25 +70,27 @@ public OntologySourceRefObject() { */ public OntologySourceRefObject(String sourceName, String sourceFile, String sourceVersion, String sourceDescription) { + super(); fieldValues.put(SOURCE_NAME, sourceName); fieldValues.put(SOURCE_FILE, sourceFile); fieldValues.put(SOURCE_VERSION, sourceVersion); fieldValues.put(SOURCE_DESCRIPTION, sourceDescription); - autocomplete(); + update(); } - public void autocomplete(){ + public void update(){ + if (getSourceName()==null) + return; + String ontologyId = "http://data.bioontology.org/ontologies/"+getSourceName(); - BioPortalClient client = new BioPortalClient(); - String sourceName = getSourceName(); - if (getSourceName()!=null){ - if (getSourceFile()==null && getSourceVersion()==null && getSourceDescription() == null){ - setSourceFile(client.getOntologySourceFile(sourceName)); - setSourceDescription(client.getOntologyDescription(sourceName)); - setSourceVersion(client.getOntologyVersion(sourceName)); - } + Ontology associatedOntologySource = AcceptedOntologies.getAcceptedOntologies().get(ontologyId); - } + if (associatedOntologySource==null) + return; + + setSourceFile(associatedOntologySource.getOntologyID()); + setSourceVersion( associatedOntologySource.getOntologyVersion()); + setSourceDescription(associatedOntologySource.getOntologyDisplayLabel()); } public String getSourceDescription() { @@ -133,4 +136,48 @@ public int compareTo(OntologySourceRefObject o) { return getSourceName().compareToIgnoreCase(o.getSourceName()); } } + + public boolean equals(Object object){ + if (object == null) + return false; + if (object == this) + return true; + if (!(object instanceof OntologySourceRefObject)) + return false; + + OntologySourceRefObject sourceRefObject = (OntologySourceRefObject) object; + boolean result = true; + if (getSourceName()!=null && sourceRefObject.getSourceName()!=null) + result = result && (getSourceName().equals(sourceRefObject.getSourceName())); + + if (getSourceDescription()!=null && sourceRefObject.getSourceDescription()!=null) + result = result && getSourceDescription().equals(sourceRefObject.getSourceDescription()); + + if (getSourceFile()!=null && sourceRefObject.getSourceFile()!=null) + result = result && getSourceFile().equals(sourceRefObject.getSourceFile()); + + if (getSourceVersion()!=null && sourceRefObject.getSourceFile()!=null) + result = result && getSourceVersion().equals(sourceRefObject.getSourceVersion()); + + return result; + } + + public int hashCode(){ + int result = 0; + + if (getSourceName()!=null) + result += getSourceName().hashCode(); + + if (getSourceDescription()!=null) + result += getSourceDescription().hashCode(); + + if (getSourceFile()!=null) + result += getSourceFile().hashCode(); + + if (getSourceVersion()!=null) + result += getSourceVersion().hashCode(); + + return result; + } + } From 6dfd7b45f88b6f2dede20f51af17cd79e773f1b5 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Wed, 15 Jan 2014 17:26:15 +0000 Subject: [PATCH 084/111] Ontology-related changes in user profiles stuff --- .../org/isatools/isacreator/api/AuthenticationManager.java | 2 +- src/main/java/org/isatools/isacreator/api/CreateProfile.java | 2 +- .../java/org/isatools/isacreator/io/UserProfileManager.java | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/api/AuthenticationManager.java b/src/main/java/org/isatools/isacreator/api/AuthenticationManager.java index f4746d55..28e5496f 100644 --- a/src/main/java/org/isatools/isacreator/api/AuthenticationManager.java +++ b/src/main/java/org/isatools/isacreator/api/AuthenticationManager.java @@ -95,7 +95,7 @@ public boolean login(String username) { */ private void setCurrentUser(UserProfile up) { UserProfileManager.setCurrentUser(up); - OntologyManager.setOntologySelectionHistory(up.getUserHistory()); + OntologyManager.setOntologyTermHistory(up.getUserHistory()); Spreadsheet.fileSelectEditor.setFtpManager(up.getFtpManager()); } diff --git a/src/main/java/org/isatools/isacreator/api/CreateProfile.java b/src/main/java/org/isatools/isacreator/api/CreateProfile.java index 56301642..c490fd01 100644 --- a/src/main/java/org/isatools/isacreator/api/CreateProfile.java +++ b/src/main/java/org/isatools/isacreator/api/CreateProfile.java @@ -67,7 +67,7 @@ public static UserProfile createProfile(String username, char[] password, String UserProfileManager.getUserProfiles().add(newUser); UserProfileManager.setCurrentUser(newUser); - OntologyManager.setOntologySelectionHistory(newUser.getUserHistory()); + OntologyManager.setOntologyTermHistory(newUser.getUserHistory()); UserProfileManager.saveUserProfiles(); return newUser; diff --git a/src/main/java/org/isatools/isacreator/io/UserProfileManager.java b/src/main/java/org/isatools/isacreator/io/UserProfileManager.java index 3445f2f0..c4867ddb 100644 --- a/src/main/java/org/isatools/isacreator/io/UserProfileManager.java +++ b/src/main/java/org/isatools/isacreator/io/UserProfileManager.java @@ -247,7 +247,7 @@ public static void updateUserProfileInformation(UserProfile up) { up.setFtpManager(Spreadsheet.fileSelectEditor.getFTPManager()); // update used ontology sources - for (OntologySourceRefObject osro : OntologyManager.getOntologiesUsed()) { + for (OntologySourceRefObject osro : OntologyManager.getOntologySources()) { up.addOntologyReference(osro); } } @@ -258,7 +258,7 @@ public static void updateUserProfiles() { for (UserProfile up : UserProfileManager.getUserProfiles()) { if (up.getUsername()!=null && up.getUsername().equals(UserProfileManager.getCurrentUser().getUsername())) { - Set keySet = OntologyManager.getOntologySelectionHistoryKeySet(); + Set keySet = OntologyManager.getOntologyTermsKeySet(); for(String key: keySet){ up.addToUserHistory(key, OntologyManager.getOntologyTerm(key)); } From c6456b5985ace21855b21155a7d53dcf3eb9b3a7 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Thu, 16 Jan 2014 10:40:37 +0000 Subject: [PATCH 085/111] Fixed error messages to show which columns are not recognised. --- .../io/importisa/SpreadsheetImport.java | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java index 4a000162..5ca2bde4 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java @@ -5,6 +5,7 @@ import org.isatools.isacreator.configuration.DataTypes; import org.isatools.isacreator.configuration.FieldObject; import org.isatools.isacreator.io.importisa.errorhandling.exceptions.MalformedInvestigationException; +import org.isatools.isacreator.managers.ConfigurationManager; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; import org.isatools.isacreator.utils.GeneralUtils; @@ -50,8 +51,20 @@ public TableReferenceObject loadInTables(String fileName, while ((nextLine = reader.readNext()) != null) { if (count == 0) { colHeaders = nextLine; - tro = reformTableDefinition(fileName, nextLine, - defaultTableRef); + try { + tro = reformTableDefinition(fileName, nextLine, + defaultTableRef); + } catch (MalformedInvestigationException mie) { + + System.err.println(mie.toString()); + TableReferenceObject generic_tro = ConfigurationManager.selectTROForUserSelection("*", "*"); + if (generic_tro != null && defaultTableRef != generic_tro) { + tro = reformTableDefinition(fileName, nextLine, generic_tro); + } else { + throw mie; + } + } + Vector preDefinedHeaders = new Vector(); preDefinedHeaders.add("Row No."); @@ -257,14 +270,15 @@ private TableReferenceObject reformTableDefinition(String tableName, int headerCount = invalidHeaders.size(); for (String s : invalidHeaders) { invalidHeaderNames += s; - if (headerCount < invalidHeaders.size() - 1) { + + if (headerCount != invalidHeaders.size() - 1) { invalidHeaderNames += ", "; } headerCount++; } - String colText = invalidHeaders.size() > 1 ? invalidHeaders.size() + "The columns" : "The column "; - String linkText = invalidHeaders.size() > 1 ? invalidHeaders.size() + " are " : " is "; + String colText = invalidHeaders.size() > 1 ? "The columns " : "The column "; + String linkText = invalidHeaders.size() > 1 ? " are " : " is "; throw new MalformedInvestigationException(colText + invalidHeaderNames + linkText + " not supported in this assay"); } From fbd61cdfadcdce99832239a3c3365f10723e99f9 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Thu, 16 Jan 2014 10:57:19 +0000 Subject: [PATCH 086/111] Modifications to handle generic fallback on importing of files in to ISAcreator. --- .../io/importisa/ISAtabImporter.java | 20 +++++++++---------- .../io/importisa/InvestigationImport.java | 2 +- .../io/importisa/SpreadsheetImport.java | 2 +- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java index aaccef70..a05ccfc3 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java @@ -72,10 +72,10 @@ public List getMessages() { public String getMessagesAsString() { StringBuilder builder = new StringBuilder(); for (ISAFileErrorReport errorReport : errors) { - builder.append("Error filename: " + errorReport.getFileName()); + builder.append("Error filename: ").append(errorReport.getFileName()); builder.append("\n Error messages: "); for (ErrorMessage error : errorReport.getMessages()) { - builder.append("\n" + error.getMessage()); + builder.append("\n").append(error.getMessage()); } } return builder.toString(); @@ -114,11 +114,13 @@ protected boolean commonImportFile(String parentDir) { File[] isaDirectorFiles = investigationFile.listFiles(); - for (File isaFile : isaDirectorFiles) { - if (isaFile.getName().toLowerCase().startsWith("i_")) { - investigationFileFound = true; - investigationFile = isaFile; - break; + if (isaDirectorFiles != null) { + for (File isaFile : isaDirectorFiles) { + if (isaFile.getName().toLowerCase().startsWith("i_")) { + investigationFileFound = true; + investigationFile = isaFile; + break; + } } } @@ -192,10 +194,6 @@ protected boolean commonImportFile(String parentDir) { ISAFileErrorReport investigationErrorReport = new ISAFileErrorReport(investigationFile.getName(), FileType.INVESTIGATION, messages); errors.add(investigationErrorReport); } - } else { - //if (isacreator!=null){ - // investigation.setLastConfigurationUsed(isacreator.getLoadedConfiguration()); - //} } } else { diff --git a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java index 84394c85..b0436bdf 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java @@ -216,7 +216,7 @@ private List loadFile(File investigationFile) throws IOException { if (investigationFile.exists()) { CSVReader csvReader = new CSVReader(new FileReader(investigationFile), TAB_DELIM); - String[] line = null; + String[] line; while((line = csvReader.readNext()) != null) { if(line.length > 0) { if(!line[0].startsWith("#")) { diff --git a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java index 5ca2bde4..27d2f8ca 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/SpreadsheetImport.java @@ -280,7 +280,7 @@ private TableReferenceObject reformTableDefinition(String tableName, String colText = invalidHeaders.size() > 1 ? "The columns " : "The column "; String linkText = invalidHeaders.size() > 1 ? " are " : " is "; - throw new MalformedInvestigationException(colText + invalidHeaderNames + linkText + " not supported in this assay"); + throw new MalformedInvestigationException(colText + invalidHeaderNames + linkText + "not supported in this assay"); } return tro; From d0f34aa377ac6fdb109286d7151889d1292a048e Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 12:11:40 +0000 Subject: [PATCH 087/111] Changes to merge functionality, propagating changes to OntologyManager --- .../isacreator/mergeutil/MergeFilesUI.java | 31 ++++++++++++------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java b/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java index 16483e21..dbdabdad 100644 --- a/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java +++ b/src/main/java/org/isatools/isacreator/mergeutil/MergeFilesUI.java @@ -43,15 +43,16 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.effects.borders.RoundedBorder; import org.isatools.isacreator.effects.components.RoundedJTextField; import org.isatools.isacreator.gui.AbstractDataEntryEnvironment; -import org.isatools.isacreator.io.importisa.ISAtabImporter; -import org.isatools.isacreator.gui.io.importisa.ISAtabFilesImporterFromGUI; -import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.gui.DataEntryEnvironment; import org.isatools.isacreator.gui.ISAcreator; +import org.isatools.isacreator.gui.io.importisa.ISAtabFilesImporterFromGUI; import org.isatools.isacreator.gui.menu.ISAcreatorMenu; +import org.isatools.isacreator.io.importisa.ISAtabImporter; +import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.model.Investigation; import org.isatools.isacreator.model.Study; import org.isatools.isacreator.ontologymanager.OntologyManager; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.visualization.ExperimentVisualization; import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; @@ -59,8 +60,13 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import javax.swing.*; import javax.swing.border.TitledBorder; import java.awt.*; -import java.awt.event.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; import java.io.File; +import java.util.Collection; +import java.util.HashSet; import java.util.Stack; @@ -624,21 +630,24 @@ public void run() { final Investigation inv1 = importISA1.getInvestigation(); + //Keep the terms used in inv1 + Collection terms = new HashSet(OntologyManager.getOntologyTermsValues()); + + //clear the terms used + OntologyManager.clearOntologyTerms(); + ISAtabImporter importISA2 = new ISAtabFilesImporterFromGUI(ApplicationManager.getCurrentApplicationInstance()); - importISA2.importFile(ISA2 + File.separator); + boolean successfulImportISA2 = importISA2.importFile(ISA2 + File.separator); - if (!importISA2.importFile(ISA2 + File.separator)) { + if (!successfulImportISA2) { // status.setText(importISA2.getProblemLog()); return; } final Investigation inv2 = importISA2.getInvestigation(); - // add all ontologies used to inv 1 - OntologyManager.addToUsedOntologySources(inv1.getInvestigationId(), - OntologyManager.getOntologiesUsed(inv2.getInvestigationId())); - - OntologyManager.clearUsedOntologies(inv2.getInvestigationId()); + // add all terms used by inv2 to those used by inv 1 + OntologyManager.addToOntologyTerms(terms); // add all publications and contacts... inv1.addToPublications(inv2.getPublications()); From 6156071a8221fa2a5588219c96632a8672e0551f Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 13:01:25 +0000 Subject: [PATCH 088/111] Ontology sources not added at configuration loading time but added at assay creation time --- .../configuration/io/ConfigXMLParser.java | 10 --------- .../isacreator/gui/DataEntryEnvironment.java | 18 +++++---------- .../org/isatools/isacreator/model/Assay.java | 22 +++++++++++++++++++ 3 files changed, 28 insertions(+), 22 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java index 6e193566..2533c368 100644 --- a/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java +++ b/src/main/java/org/isatools/isacreator/configuration/io/ConfigXMLParser.java @@ -208,9 +208,6 @@ public void processTable(IsaTabConfigurationType isaConf) { OntologyEntryType measurementInfo = isaConf.getMeasurement(); OntologyEntryType technologyInfo = isaConf.getTechnology(); - addOntologySourceForAssay(measurementInfo); - addOntologySourceForAssay(technologyInfo); - String tableType = measurementInfo.getTermLabel().equalsIgnoreCase("[sample]") ? MappingObject.STUDY_SAMPLE : measurementInfo.getTermLabel().equalsIgnoreCase("[investigation]") ? MappingObject.INVESTIGATION : MappingObject.ASSAY_TYPE; log.info("Processing " + isaConf.getTableName()); @@ -345,13 +342,6 @@ public void processTable(IsaTabConfigurationType isaConf) { tables.add(new TableReferenceObject(tc)); } - private void addOntologySourceForAssay(OntologyEntryType ontologyEntryType) { - - - if (ontologyEntryType.getSourceAbbreviation()!=null && !ontologyEntryType.getSourceAbbreviation().equals("")) - OntologyManager.addToUsedOntologies(new OntologySourceRefObject(ontologyEntryType.getSourceAbbreviation(), ontologyEntryType.getSourceUri(), ontologyEntryType.getSourceVersion(), ontologyEntryType.getSourceTitle())); - } - /** * Appends the structural fields to the end of the file by default */ diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java index 81dd4d83..35328645 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java @@ -73,11 +73,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; +import java.util.Collection; import java.util.Enumeration; -import java.util.List; import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; /** @@ -133,11 +131,8 @@ public Assay addAssay(String measurementEndpoint, String techType, String assayPlatform, String assayName) { // get node DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode) overviewTree.getLastSelectedPathComponent(); - System.out.println("Getting assay for " + measurementEndpoint); - TableReferenceObject tro = ConfigurationManager.selectTROForUserSelection(measurementEndpoint, - techType); - - System.out.println("Tro is " + tro); + System.out.println("Getting assay for measurement " + measurementEndpoint + " and technology "+techType); + TableReferenceObject tro = ConfigurationManager.selectTROForUserSelection(measurementEndpoint,techType); if (tro != null) { if ((selectedNode != null) && selectedNode.getAllowsChildren() && @@ -268,8 +263,7 @@ public boolean addStudy(String studyName) { ApplicationManager.assignDataEntryToISASection(newStudy, ui); - Assay studySampleRec = new Assay("s_" + studyName + ".txt", - tro); + Assay studySampleRec = new Assay("s_" + studyName + ".txt", tro); ApplicationManager.assignDataEntryToISASection(studySampleRec, new AssaySpreadsheet(ui, tro)); @@ -589,8 +583,8 @@ public Investigation getInvestigation() { return investigation; } - public List getOntologySources() { - return OntologyManager.getOntologiesUsed(); + public Collection getOntologySources() { + return OntologyManager.getOntologySources(); } public ISAcreator getParentFrame() { diff --git a/src/main/java/org/isatools/isacreator/model/Assay.java b/src/main/java/org/isatools/isacreator/model/Assay.java index cbc7272c..4058dba0 100755 --- a/src/main/java/org/isatools/isacreator/model/Assay.java +++ b/src/main/java/org/isatools/isacreator/model/Assay.java @@ -40,6 +40,9 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.configuration.MappingObject; import org.isatools.isacreator.gui.StudySubData; import org.isatools.isacreator.managers.ConfigurationManager; +import org.isatools.isacreator.ontologymanager.OntologyManager; +import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; +import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.spreadsheet.model.TableReferenceObject; @@ -120,6 +123,25 @@ public Assay(String assayReference, String measurementEndpoint, fieldValues.put(TECHNOLOGY_TYPE_TERM_ACCESSION, mappingObject!=null? mappingObject.getTechnologyAccession(): ""); fieldValues.put(TECHNOLOGY_TYPE_TERM_SOURCE_REF, mappingObject!=null? mappingObject.getTechnologySource(): "" ); fieldValues.put(ASSAY_PLATFORM, assayPlatform); + + if (mappingObject!=null){ + OntologyTerm ot = null; + OntologySourceRefObject ontologySourceRefObject = null; + if (!mappingObject.getMeasurementAccession().equals("")){ + ontologySourceRefObject = OntologyManager.getOntologySourceReferenceObjectByAbbreviation(mappingObject.getMeasurementSource()); + if (ontologySourceRefObject==null) + ontologySourceRefObject = new OntologySourceRefObject(mappingObject.getMeasurementSource()); + ot = new OntologyTerm(mappingObject.getMeasurementEndpointType(), mappingObject.getMeasurementAccession(), mappingObject.getMeasurementAccession(), ontologySourceRefObject); + OntologyManager.addToOntologyTerms(ot); + } + if (!mappingObject.getTechnologyAccession().equals("")){ + ontologySourceRefObject = OntologyManager.getOntologySourceReferenceObjectByAbbreviation(mappingObject.getTechnologySource()); + if (ontologySourceRefObject==null) + ontologySourceRefObject = new OntologySourceRefObject(mappingObject.getTechnologySource()); + ot = new OntologyTerm(mappingObject.getTechnologyType(), mappingObject.getTechnologyAccession(), mappingObject.getTechnologyAccession(), ontologySourceRefObject); + OntologyManager.addToOntologyTerms(ot); + } + } } From d91a3691479c414503a59b68149f6b6a2bfe8a8d Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 13:28:34 +0000 Subject: [PATCH 089/111] Propagating changes to OntologyManager --- .../org/isatools/isacreator/gui/ISAcreator.java | 14 +++++--------- .../isacreator/gui/formelements/SubForm.java | 7 +++---- .../isacreator/io/exportisa/ISAFileOutput.java | 4 +++- .../isacreator/io/importisa/ISAtabImporter.java | 6 +++--- .../importisa/StructureToInvestigationMapper.java | 9 +++++---- .../isatools/isacreator/model/Investigation.java | 1 - 6 files changed, 19 insertions(+), 22 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/ISAcreator.java b/src/main/java/org/isatools/isacreator/gui/ISAcreator.java index 93c759d4..ccdef14b 100755 --- a/src/main/java/org/isatools/isacreator/gui/ISAcreator.java +++ b/src/main/java/org/isatools/isacreator/gui/ISAcreator.java @@ -39,17 +39,17 @@ ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) package org.isatools.isacreator.gui; import org.apache.log4j.Logger; - +import org.isatools.errorreporter.model.ErrorMessage; import org.isatools.isacreator.api.Authentication; import org.isatools.isacreator.archiveoutput.ArchiveOutputWindow; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.effects.AnimatableJFrame; import org.isatools.isacreator.effects.FooterPanel; import org.isatools.isacreator.effects.TitlePanel; +import org.isatools.isacreator.gs.GSSaveAction; +import org.isatools.isacreator.gui.io.exportisa.OutputISAFilesFromGUI; import org.isatools.isacreator.gui.menu.ISAcreatorMenu; import org.isatools.isacreator.gui.modeselection.Mode; -import org.isatools.isacreator.gui.io.exportisa.OutputISAFilesFromGUI; -import org.isatools.isacreator.io.UserProfile; import org.isatools.isacreator.io.UserProfileManager; import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.managers.ConfigurationManager; @@ -57,7 +57,6 @@ ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) import org.isatools.isacreator.ontologiser.adaptors.InvestigationAdaptor; import org.isatools.isacreator.ontologiser.ui.OntologiserUI; import org.isatools.isacreator.ontologymanager.OntologyManager; -import org.isatools.isacreator.ontologymanager.common.OntologyTerm; import org.isatools.isacreator.plugins.MenuPluginTracker; import org.isatools.isacreator.plugins.OntologyPluginTracker; import org.isatools.isacreator.plugins.SpreadsheetPluginTracker; @@ -73,8 +72,6 @@ ISAcreator is a component of the ISA software suite (http://www.isa-tools.org) import org.jdesktop.fuse.InjectedResource; import org.jdesktop.fuse.ResourceInjector; import org.osgi.framework.BundleContext; -import org.isatools.errorreporter.model.ErrorMessage; -import org.isatools.isacreator.gs.GSSaveAction; import javax.swing.*; import javax.swing.Timer; @@ -782,8 +779,7 @@ private void saveProfilesAndGoToMain() { checkMenuRequired(); ISAcreatorProperties.setProperty(ISAcreatorProperties.CURRENT_ISATAB, ""); - - OntologyManager.clearReferencedOntologySources(); + OntologyManager.clearOntologyTerms(); } catch (Exception e) { @@ -1022,7 +1018,7 @@ public void actionPerformed(ActionEvent ae) { closeWindowTimer.start(); if (type != SAVE_ONLY) { - OntologyManager.clearReferencedOntologySources(); + OntologyManager.clearOntologyTerms(); } } else { // need to get a new reference from the user! diff --git a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java index 2807ee6c..95689950 100644 --- a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java +++ b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java @@ -767,7 +767,7 @@ protected void removeColumn(int curColDelete) { protected void checkForSourcePresence(String source) { if (dataEntryForm != null && dataEntryForm.getDataEntryEnvironment() != null) { - List definedSources = dataEntryForm.getDataEntryEnvironment() + Collection definedSources = dataEntryForm.getDataEntryEnvironment() .getOntologySources(); boolean isPresent = false; @@ -780,11 +780,10 @@ protected void checkForSourcePresence(String source) { // if it doesn't exist, then add the ontology information to the defined sources if (!isPresent) { - OntologySourceRefObject osro = UserProfileManager.getCurrentUser() - .getOntologySource(source); + OntologySourceRefObject osro = UserProfileManager.getCurrentUser().getOntologySource(source); if (osro == null) { - osro = new OntologySourceRefObject(source, "", OntologyManager.getOntologyVersion(source), OntologyManager.getOntologyDescription(source)); + osro = OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source); } dataEntryForm.getDataEntryEnvironment().getOntologySources().add(osro); diff --git a/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java b/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java index 4ffc9abf..50158649 100644 --- a/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java +++ b/src/main/java/org/isatools/isacreator/io/exportisa/ISAFileOutput.java @@ -53,6 +53,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.io.PrintStream; import java.util.ArrayList; import java.util.List; +import java.util.Set; /** * Created by the ISA team @@ -73,10 +74,11 @@ public String getOntologiesUsedOutput() { }; String toReturn = "ONTOLOGY SOURCE REFERENCE\n"; + Set ontologiesUsed = OntologyManager.getOntologiesUsed(); + for (int i = 0; i < headerTerms.length; i++) { StringBuffer line = new StringBuffer(headerTerms[i] + "\t"); String val = ""; - List ontologiesUsed = OntologyManager.getOntologiesUsed(); for (OntologySourceRefObject anOntologyUsed : ontologiesUsed) { if (headerTerms[i].equals("Term Source Name")) { diff --git a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java index 701b47bd..1a047c69 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java @@ -256,7 +256,7 @@ protected boolean processInvestigation(String parentDirectoryPath) { if (builtReference != null) { study.setStudySamples(new Assay(study.getStudySampleFileIdentifier(), builtReference)); - OntologyManager.addToOntologySelectionHistory(builtReference.getReferencedOntologyTerms()); + OntologyManager.addToOntologyTerms(builtReference.getReferencedOntologyTerms()); } } catch (MalformedInvestigationException mie) { mie.printStackTrace(); @@ -295,7 +295,7 @@ protected boolean processInvestigation(String parentDirectoryPath) { assay.getAssayReference(), assayTableReferenceObject); if (builtReference != null) { assay.setTableReferenceObject(builtReference); - OntologyManager.addToOntologySelectionHistory(builtReference.getReferencedOntologyTerms()); + OntologyManager.addToOntologyTerms(builtReference.getReferencedOntologyTerms()); } } catch (IOException e) { messages.add(new ErrorMessage(ErrorLevel.ERROR, e.getMessage())); @@ -363,7 +363,7 @@ protected FileType inferISAFileType(Assay assay) { private void assignOntologiesToSession(List ontologiesUsed) { for (OntologyTerm oo : ontologiesUsed) { if (!oo.getOntologyTermName().trim().equals("")) { - OntologyManager.addToUserHistory(oo); + OntologyManager.addToOntologyTerms(oo); } } } diff --git a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java index cb265980..b4172e58 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java @@ -107,7 +107,7 @@ public Pair createInvestigationFromDataStructure( } private Investigation processInvestigation(OrderedMap>> investigationSections) { - List ontologySources = new ArrayList(); + Set ontologySources = new HashSet(); List contacts = new ArrayList(); List publications = new ArrayList(); @@ -126,7 +126,7 @@ private Investigation processInvestigation(OrderedMap, List> processedFactorsSection = processOntologySourceReferences(investigationSections.get(investigationSection)); sectionFields.put(investigationSection, processedFactorsSection.fst); - ontologySources = processedFactorsSection.snd; + ontologySources = new HashSet(processedFactorsSection.snd); } else if (investigationSection == InvestigationFileSection.INVESTIGATION_PUBLICATIONS_SECTION) { @@ -144,7 +144,7 @@ private Investigation processInvestigation(OrderedMap, List> processOntologySourceRe Map record = getRecord(ontologySection, recordIndex); if (!isNullRecord(record)) { ontologySource.addToFields(record); + ontologySource.completeFields(); ontologySources.add(ontologySource); } } @@ -705,7 +706,7 @@ private boolean validateInvestigationFile(Investigation investigation) { // build up set of ontology sources that have been defined Set definedOntologySources = new HashSet(); - for (OntologySourceRefObject osro : OntologyManager.getOntologiesUsed()) { + for (OntologySourceRefObject osro : OntologyManager.getOntologySources()) { definedOntologySources.add(osro.getSourceName()); } diff --git a/src/main/java/org/isatools/isacreator/model/Investigation.java b/src/main/java/org/isatools/isacreator/model/Investigation.java index 894babc0..1b1e923b 100755 --- a/src/main/java/org/isatools/isacreator/model/Investigation.java +++ b/src/main/java/org/isatools/isacreator/model/Investigation.java @@ -118,7 +118,6 @@ private void initialise() { assays = new HashMap(); contacts = new ArrayList(); publications = new ArrayList(); - OntologyManager.newInvestigation(getInvestigationId().equals("") ? "investigation-" + System.currentTimeMillis() : getInvestigationId()); } @Override From 1a014135a582b8ba40c590c90e13ef4b65ec8276 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 13:35:34 +0000 Subject: [PATCH 090/111] Added constructor to OntologySourceRefObject, propagated changes to OntologyManager --- .../adaptors/InvestigationAdaptor.java | 7 +-- .../ontologymanager/OntologyManager.java | 36 ++++----------- .../OntologySourceRefObject.java | 10 ++++- .../BioPortalSearchResultHandler.java | 14 ++++-- .../utils/OntologyTermUtils.java | 2 +- .../OntologySelectionTool.java | 44 +++---------------- .../isacreator/spreadsheet/AddColumnGUI.java | 2 +- .../isacreator/spreadsheet/Spreadsheet.java | 2 +- .../io/importisa/ISAtabFilesImporterTest.java | 2 +- 9 files changed, 39 insertions(+), 80 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologiser/adaptors/InvestigationAdaptor.java b/src/main/java/org/isatools/isacreator/ontologiser/adaptors/InvestigationAdaptor.java index 0a2c8e0c..9174c0be 100644 --- a/src/main/java/org/isatools/isacreator/ontologiser/adaptors/InvestigationAdaptor.java +++ b/src/main/java/org/isatools/isacreator/ontologiser/adaptors/InvestigationAdaptor.java @@ -3,8 +3,8 @@ import org.isatools.isacreator.api.utils.InvestigationUtils; import org.isatools.isacreator.api.utils.SpreadsheetUtils; import org.isatools.isacreator.configuration.Ontology; -import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.gui.AssaySpreadsheet; +import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.model.Assay; import org.isatools.isacreator.model.Investigation; import org.isatools.isacreator.model.Study; @@ -55,9 +55,6 @@ public void replaceTerms(Set annotations) { OntologySourceRefObject ontologySourceRefObject = OntologyUtils.convertOntologyToOntologySourceReferenceObject(sourceOntology); - // adding ontology source in case it has not already been added - OntologyManager.addToUsedOntologySources("annotator", ontologySourceRefObject); - OntologyTerm ontologyTerm = annotation.getAssignedOntology().getOntologyTerm(); // add the term to the ontology history. @@ -65,7 +62,7 @@ public void replaceTerms(Set annotations) { mappingsForReplacement.put(annotation.getFreeTextTerm(), ontologyObject); - OntologyManager.addToUserHistory(ontologyObject); + OntologyManager.addToOntologyTerms(ontologyObject); } } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index 86ac2065..dc757734 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -115,6 +115,11 @@ public static void addToOntologyTerms(Map osh) { addToOntologyTerms(key, osh.get(key)); } + public static void addToOntologyTerms(Collection terms) { + for(OntologyTerm term: terms) + addToOntologyTerms(term.getShortForm(), term); + } + public static void addToOntologyTerms(OntologyTerm term){ if (term!=null) addToOntologyTerms(term.getShortForm(), term); @@ -233,6 +238,10 @@ public static Collection getOntologySources(){ return ontologySources.values(); } + public static void clearOntologySources(){ + ontologySources.clear(); + } + public static void setOntologySources(Set ontologiesUsed) { for (OntologySourceRefObject sourceRefObject: ontologiesUsed) ontologySources.put(sourceRefObject.getSourceName(), sourceRefObject); @@ -277,33 +286,6 @@ public static int searchResultCacheSize(){ } /*** end of searchResultCache methods ***/ - /*** methods required for merging functionality ***/ - - //Used in Investigation.initialise() - public static void newInvestigation(String investigationAccession) { - investigationAccession = investigationAccession.equals("") ? "investigation-" + System.currentTimeMillis() : investigationAccession; - ontologySourcesForMerging.put(investigationAccession, new HashSet()); - } - - private static String getValidKey() { - if (ontologySources.isEmpty()) { - ontologySourcesForMerging.put("investigation", new HashSet()); - return "investigation"; - } else { - if(ontologySources != null && ontologySources.size() > 0) - return ontologySources.keySet().iterator().next(); - } - return "investigation"; - } - - //USED in MergeFilesUI.mergeFiles - public static void clearUsedOntologies(String investigationAccession) { - if (ontologySourcesForMerging.containsKey(investigationAccession)) { - ontologySourcesForMerging.remove(investigationAccession); - } - } - - /*** end of methods required for merging functionality ***/ /*** getURIMappingInfo ***/ diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java index b34bf721..fc793c82 100755 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologySourceRefObject.java @@ -62,6 +62,12 @@ public OntologySourceRefObject() { super(); } + public OntologySourceRefObject(String sourceName){ + super(); + fieldValues.put(SOURCE_NAME, sourceName); + completeFields(); + } + /** * @param sourceName - e.g. GO * @param sourceFile - e.g. URL (e.g. the BioPortal virtual id) @@ -75,10 +81,10 @@ public OntologySourceRefObject(String sourceName, String sourceFile, fieldValues.put(SOURCE_FILE, sourceFile); fieldValues.put(SOURCE_VERSION, sourceVersion); fieldValues.put(SOURCE_DESCRIPTION, sourceDescription); - update(); + completeFields(); } - public void update(){ + public void completeFields(){ if (getSourceName()==null) return; String ontologyId = "http://data.bioontology.org/ontologies/"+getSourceName(); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java index ef239d49..55c63dd4 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/bioportal/jsonresulthandlers/BioPortalSearchResultHandler.java @@ -80,7 +80,7 @@ private String extractOntologyId(JsonObject ontologyItemJsonDictionary) { return links.getJsonString("ontology").toString(); } - private void extractDefinitionFromOntologyTerms(JsonObject ontologyItemJsonDictionary, OntologyTerm ontologyTerm) { + private void extractDefinitionFromOntologyTerm(JsonObject ontologyItemJsonDictionary, OntologyTerm ontologyTerm) { JsonArray definitions = ontologyItemJsonDictionary.getJsonArray("definition"); if (definitions != null && definitions.size() > 0) { ontologyTerm.addToComments("definition", definitions.get(0).toString()); @@ -246,7 +246,7 @@ public OntologyTerm getTermMetadata(String termId, String ontologyId) { OntologyTerm ontologyTerm = new OntologyTerm(obj.getString("prefLabel"), obj.getString("@id"), obj.getString("@id"), osro); ontologyTerm.addToComments("Service Provider", OntologyManager.BIO_PORTAL); - extractDefinitionFromOntologyTerms(obj, ontologyTerm); + extractDefinitionFromOntologyTerm(obj, ontologyTerm); extractSynonymsFromOntologyTerm(obj, ontologyTerm); System.out.println(ontologyTerm.getOntologyTermName() + " - " + ontologyTerm.getOntologyTermAccession() + " - " + ontologyTerm.getOntologyTermURI() ); @@ -317,9 +317,15 @@ private OntologyTerm createOntologyTerm(JsonObject annotationItem) { OntologyTerm ontologyTerm = new OntologyTerm(annotationItem.getString("prefLabel"), annotationItem.getString("@id"), annotationItem.getString("@id"), null); ontologyTerm.addToComments("Service Provider", OntologyManager.BIO_PORTAL); - extractDefinitionFromOntologyTerms(annotationItem, ontologyTerm); + extractDefinitionFromOntologyTerm(annotationItem, ontologyTerm); extractSynonymsFromOntologyTerm(annotationItem, ontologyTerm); - + String ontologyId = extractOntologyId(annotationItem); + if (ontologyId!=null){ + String ontologyAbbreviation = ontologyId.substring(ontologyId.lastIndexOf('/')+1); + OntologySourceRefObject sourceRefObject = OntologyManager.getOntologySourceReferenceObjectByAbbreviation(ontologyAbbreviation); + if (sourceRefObject!=null) + ontologyTerm.setOntologySourceInformation(sourceRefObject); + } return ontologyTerm; } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java index 841bde35..64ce2cad 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/utils/OntologyTermUtils.java @@ -189,7 +189,7 @@ public static String fullAnnotatedHeaderToUniqueId(String fullAnnotatedHeader){ if (OntologyManager.getOntologyTerm(ontologyTerm.getShortForm())==null) { Map map = new HashMap(); map.put(uniqueId, ontologyTerm); - OntologyManager.addToOntologySelectionHistory(map); + OntologyManager.addToOntologyTerms(map); } return uniqueId; } diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java index 14677bee..de080e4e 100755 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/OntologySelectionTool.java @@ -582,7 +582,7 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { Map ontologyVersions = bioportalClient.getOntologyVersions(); setTermDefinitionView(historyTerm, ontologyVersions); - addSourceToUsedOntologies(historyTerm.getOntologySourceInformation()); + //OntologyManager.addToUsedOntologies(historyTerm.getOntologySourceInformation()); if (multipleTermsAllowed) { addToMultipleTerms(historyTerm.getShortForm()); } else { @@ -621,8 +621,7 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { private List getSortedHistory() { List ontologyTerms = new ArrayList(); - //ontologyTerms.addAll(OntologyManager.getOntologySelectionHistory().values()); - ontologyTerms.addAll(OntologyManager.getOntologySelectionHistoryValues()); + ontologyTerms.addAll(OntologyManager.getOntologyTermsValues()); Collections.sort(ontologyTerms); return ontologyTerms; } @@ -720,8 +719,7 @@ private void confirmSelection() { firePropertyChange("selectedOntology", "OLD_VALUE", selectedTerm.getText()); if (historyList.getSelectedIndex() != -1) { - //OntologyManager.getOntologySelectionHistory().put(historyList.getSelectedValue().toString(), (OntologyTerm) historyList.getSelectedValue()); - OntologyManager.addToOntologySelectionHistory(historyList.getSelectedValue().toString(), (OntologyTerm) historyList.getSelectedValue()); + OntologyManager.addToOntologyTerms(historyList.getSelectedValue().toString(), (OntologyTerm) historyList.getSelectedValue()); } historyList.getFilterField().setText(""); historyList.clearSelection(); @@ -748,21 +746,6 @@ private JPanel createStandardBorderPanel(boolean hasBorder) { return panel; } - /** - * Check to determine if the Ontology source already exists in the previously defined Ontology sources. - * - * @param source - Possible source to add. - * @return Boolean - true if the source already exists, false otherwise. - */ - private boolean checkOntologySourceRecorded(String source) { - for (OntologySourceRefObject oRef : OntologyManager.getOntologiesUsed()) { - if (oRef.getSourceName().equals(source)) { - return true; - } - } - - return false; - } /** * Add a value to the selected terms box when multiple term selection is enabled. @@ -801,21 +784,10 @@ private void addTerm(OntologyTerm term) { } private void addTermToHistory(OntologyTerm termInformation) { - // add the item to the history list - addSourceToUsedOntologies(termInformation.getOntologySourceInformation()); - OntologyManager.addToUserHistory(termInformation); + OntologyManager.addToOntologyTerms(termInformation); historyList.addItem(termInformation); } - - private void addSourceToUsedOntologies(OntologySourceRefObject ontologySourceRefObject) { - if (ontologySourceRefObject != null) { - if (!checkOntologySourceRecorded(ontologySourceRefObject.getSourceName())) { - OntologyManager.addToUsedOntologies(ontologySourceRefObject); - } - } - } - private String getRecommendedOntologyCacheIdentifier() { StringBuilder identifer = new StringBuilder(); @@ -826,7 +798,6 @@ private String getRecommendedOntologyCacheIdentifier() { identifer.append(ontologyAbbr); } } - return identifer.toString(); } @@ -858,7 +829,6 @@ public void run() { String cacheKeyLookup = "term" + ":" + searchOn + ":" + searchField.getText(); - //if (!OntologyManager.searchResultCache.containsKey(cacheKeyLookup)) { if (!OntologyManager.searchResultCacheContainsKey(cacheKeyLookup)) { result = new HashMap>(); @@ -995,11 +965,9 @@ private List filterRecommendedOntologiesForService(Collecti public void updatehistory() { SwingUtilities.invokeLater(new Runnable() { public void run() { - // if ((historyList != null) && (OntologyManager.getOntologySelectionHistory() != null)) { - if ((historyList != null)){ // && (OntologyManager.getOntologySelectionHistory() != null)) { + if ((historyList != null)){ - //OntologyTerm[] newHistory = new OntologyTerm[OntologyManager.getOntologySelectionHistory().size()]; - OntologyTerm[] newHistory = new OntologyTerm[OntologyManager.getOntologySelectionHistorySize()]; + OntologyTerm[] newHistory = new OntologyTerm[OntologyManager.getOntologyTermsSize()]; int count = 0; for (OntologyTerm oo : getSortedHistory()) { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java index 25c6c872..c70c6475 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/AddColumnGUI.java @@ -440,7 +440,7 @@ public void run() { if (varSelectOntologyField != null) { toAdd = varSelectOntologyField.getText(); - OntologyManager.addToUserHistory(selectedOntologyTerm); + OntologyManager.addToOntologyTerms(selectedOntologyTerm); } else { if (optionList.getSelectedItem() != null) { diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java index 32bc78bf..d18a31d1 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java @@ -270,7 +270,7 @@ public void instantiateSpreadsheet() { private void addOntologyTermsToUserHistory() { Map referencedOntologyTerms = tableReferenceObject.getReferencedOntologyTerms(); - OntologyManager.addToOntologySelectionHistory(referencedOntologyTerms); + OntologyManager.addToOntologyTerms(referencedOntologyTerms); } private void populateSpreadsheetWithContent() { diff --git a/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java b/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java index 67c1add1..19231dbf 100644 --- a/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java +++ b/src/test/java/org/isatools/isacreator/io/importisa/ISAtabFilesImporterTest.java @@ -79,7 +79,7 @@ public void importFileTest() { System.out.println("ontologies used=" + OntologyManager.getOntologiesUsed()); System.out.println("ontology description=" + OntologyManager.getOntologyDescription("OBI")); //System.out.println("ontology selection history=" + OntologyManager.getOntologySelectionHistory()); - System.out.println("ontology selection history size=" + OntologyManager.getOntologySelectionHistorySize()); + System.out.println("ontology selection history size=" + OntologyManager.getOntologyTermsSize()); System.out.println("ontology term=" + OntologyManager.getOntologyTerm("OBI:metabolite profiling")); assertTrue("Oh no, I didnt' get the expected number of studies :(", inv.getStudies().size() == 2); From 235a90ac1b57ef47254071ef31d20ced8b273ab6 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 13:40:29 +0000 Subject: [PATCH 091/111] Changes to GUI for OntologySettings --- .../isacreator/settings/OntologySettings.java | 33 ++++++++++++------- 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/settings/OntologySettings.java b/src/main/java/org/isatools/isacreator/settings/OntologySettings.java index 7c004252..e8b56b37 100644 --- a/src/main/java/org/isatools/isacreator/settings/OntologySettings.java +++ b/src/main/java/org/isatools/isacreator/settings/OntologySettings.java @@ -216,6 +216,7 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); historyScroll.setBorder(new EmptyBorder(0, 0, 0, 0)); + IAppWidgetFactory.makeIAppScrollPane(historyScroll); UIHelper.renderComponent(historyList.getFilterField(), UIHelper.VER_11_BOLD, UIHelper.GREY_COLOR, false); @@ -228,22 +229,31 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) { loadedOntologiesContainer.add(UIHelper.wrapComponentInPanel(loadedOntologyStats)); - // add list and filter field to UI - loadedOntologiesContainer.add(historyList.getFilterField()); - loadedOntologiesContainer.add(Box.createVerticalStrut(5)); + JPanel ontologyPanel = new JPanel(new BorderLayout()); + + ontologyPanel.add(historyList.getFilterField(), BorderLayout.NORTH); + // add the actual list containing the elements! - loadedOntologiesContainer.add(historyScroll); - loadedOntologiesContainer.add(Box.createVerticalStrut(5)); + ontologyPanel.add(historyScroll, BorderLayout.CENTER); + // add controls for list! - loadedOntologiesContainer.add(createControlPanel()); - loadedOntologiesContainer.add(Box.createVerticalStrut(5)); + Container southPanel = Box.createVerticalBox(); + southPanel.add(createControlPanel()); + southPanel.add(Box.createVerticalStrut(5)); + ontologyTermInformation = UIHelper.createLabel("", UIHelper.VER_10_PLAIN); ontologyTermInformation.setPreferredSize(new Dimension(200, 60)); ontologyTermInformation.setVisible(false); + southPanel.add(UIHelper.wrapComponentInPanel(ontologyTermInformation)); + + ontologyPanel.add(southPanel, BorderLayout.SOUTH); + + + // add list and filter field to UI + - loadedOntologiesContainer.add(Box.createVerticalStrut(20)); - loadedOntologiesContainer.add(UIHelper.wrapComponentInPanel(ontologyTermInformation)); + loadedOntologiesContainer.add(ontologyPanel); return loadedOntologiesContainer; } @@ -303,7 +313,7 @@ private int calculateUniqueOntologySources() { public boolean updateSettings() { - OntologyManager.setOntologySelectionHistory(userOntologyHistory); + OntologyManager.setOntologyTermHistory(userOntologyHistory); UserProfileManager.saveUserProfiles(); return true; } @@ -323,8 +333,7 @@ protected void performImportLogic() { JOptionPane optionPane = null; try { - OntologyLibrary ol = UserProfileManager.loadOntologyLibrary( - file); + OntologyLibrary ol = UserProfileManager.loadOntologyLibrary(file); userOntologyHistory.putAll(ol.getOntologies()); UserProfileManager.getCurrentUser().setUsedOntologySources(ol.getOntologySources()); From cd88aaea12b2d44a9310798215dafb794483e610 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 14:45:00 +0000 Subject: [PATCH 092/111] Removing local userHistory and using OntologyManager instead --- .../isacreator/gui/formelements/SubForm.java | 18 +----------------- .../isacreator/spreadsheet/Spreadsheet.java | 13 +------------ 2 files changed, 2 insertions(+), 29 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java index 95689950..5d5f0b9e 100644 --- a/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java +++ b/src/main/java/org/isatools/isacreator/gui/formelements/SubForm.java @@ -116,7 +116,6 @@ public abstract class SubForm extends JPanel implements ListSelectionListener, F private boolean createBorder = true; - protected Map userHistory; protected Set uneditableRecords = new HashSet(); // this will house the translation between Comment aliases e.g. Publication Journal [c] to Comment[Publication Journal] @@ -567,7 +566,7 @@ public void valueChanged(ListSelectionEvent event) { String s = scrollTable.getValueAt(rowSelected, columnSelected) .toString(); - OntologyTerm ooForSelectedTerm = searchUserHistory(s); + OntologyTerm ooForSelectedTerm = OntologyManager.getOntologyTerm(s); if (ooForSelectedTerm != null) { dataEntryForm.getDataEntryEnvironment().setStatusPaneInfo("" + @@ -606,21 +605,6 @@ public void valueChanged(ListSelectionEvent event) { } - private OntologyTerm searchUserHistory(String uniqueId) { - if (userHistory == null) { - return null; - } - - for (OntologyTerm oo : userHistory.values()) { - - if (oo.getShortForm().equals(uniqueId)) { - return oo; - } - } - return null; - } - - public void focusGained(FocusEvent event) { removeRecord.setVisible(true); } diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java index d18a31d1..fab410c4 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java @@ -1278,17 +1278,6 @@ private void rebuildDependencies(Map> mappings) } } - - /** - * Searches UserHistory for a unique ontology id (source:term pair) - * - * @param uniqueId- the ID being searched for in the previous user history. - * @return - OntologyObject matching the unique id if found, null otherwise. - */ - private OntologyTerm searchUserHistory(String uniqueId) { - return OntologyManager.getOntologyTerm(uniqueId); - } - /** * Add a listener for undoable events * @@ -1629,7 +1618,7 @@ public void valueChanged(ListSelectionEvent event) { String s = table.getValueAt(rowSelected, columnSelected) .toString(); - OntologyTerm ooForSelectedTerm = searchUserHistory(s); + OntologyTerm ooForSelectedTerm = OntologyManager.getOntologyTerm(s); if (ooForSelectedTerm != null) { // update status panel in bottom left hand corner of workspace to contain the ontology From 6ba001e327b04dda7c6819c73a1c2123a8ac2de5 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 14:53:26 +0000 Subject: [PATCH 093/111] Removed unused field --- .../isatools/isacreator/ontologymanager/OntologyManager.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index dc757734..baa34327 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -58,9 +58,6 @@ public class OntologyManager { //All the ontologySourceRefObject, indexed by their (abbreviated) name private static Map ontologySources = new HashMap(); - //a map with - only used on the Merging facility - private static Map> ontologySourcesForMerging = new HashMap>(); - //a map with for each of the ontology terms used for annotating the ISA-TAB dataset private static Map ontologyTerms = new HashMap(); From 794527fa9323c2850ab4e8e91cfdb56db8686841 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 15:00:14 +0000 Subject: [PATCH 094/111] Orcid images --- src/main/resources/images/orcidlookup/orcid.png | Bin 0 -> 3044 bytes src/main/resources/images/orcidlookup/search.png | Bin 0 -> 1491 bytes .../resources/images/orcidlookup/search_icon.png | Bin 0 -> 605 bytes .../resources/images/orcidlookup/selected.png | Bin 0 -> 507 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/main/resources/images/orcidlookup/orcid.png create mode 100755 src/main/resources/images/orcidlookup/search.png create mode 100644 src/main/resources/images/orcidlookup/search_icon.png create mode 100644 src/main/resources/images/orcidlookup/selected.png diff --git a/src/main/resources/images/orcidlookup/orcid.png b/src/main/resources/images/orcidlookup/orcid.png new file mode 100644 index 0000000000000000000000000000000000000000..60975ca0f2245a7219f6d6c55e95262724b41fe7 GIT binary patch literal 3044 zcmVNFQ;;r5rUWTvkdl%jB`H!Q!b+6_H_+HcKnft)vSb7?vH@X&;)Iajc`oB+cjxWw z?9ATY-bNPL+j%qd=Kr60^X79my?*`rt*ZX_V(lS+e>|W4``^_kf8IyUr!ViVy;>FY z-L`pP&yFJq?0tJ|Yir=0UB`EBJH($5rMp3!sz$)l>I{f4tsaEMhB0YHCu>Ds-=*JK~Yp#a{afc}yFXOA8@TMiAu3Fsl{qg<9oLs$Z^ z@-vH9s%dbdaGRbnO5;Q4gZ2%f2mth(3zy4rD^2kEdXL+Ba(FV3&l-e)-yUAQ{phN% z@>e9CV+YT@f9RZdWjqr=#h;$L&@I2-J36rhLo@}S1k9~mpIy9CeLp7#Yp$Pk&c}z& zkM5hu6-yBIM!?L2D>#}$PIU^xNgY3Y-b;x*5I~jx_5K%iH9IDhna22F?7QM)g`xz2 zJ4U~E9ZeIyHt+F^PK|yI6E?yonL-4BK6Ss|M&AUSdQS_W9Tef9C1)UnHs}LRar5ig z0&sY4EnF7p>9?R0!;@~VkqZIT{a=3nyx$LjgBeFdqSp z-4`mBTYr#)05ZVi>}Q`xKwkwpK$N2o!0yumGL;YnaN0)pO|S-w%-XBxEX1=QEXen0 z5Iq6?fu-`c1QefXK&|A^k?kkbb6?f3RoTx~SeYQ4&VutiYQT~lxU*MheCSKd%F;t( zzy)YF3TG3*Gy`*-Hfaem!V)VRLjtXJ2>O%|1ZXxhG}#1r>3HS+XhGNfO29fb3+yUu zf~i5#ml*`GwpFm>jb>(g-nON@Z6GEcLcC{1769dxB?4$c<*Y2O{#C_oLNaicp#Ufw zB8dQ-7G$Xh9;YCQFC>KadXNmGkpOm-c-+%4zjEDV$};OnuM+@_!Y0gg0_Z^4&*QP= zB*;`rvZmjCd@a*TdQ_uZNdcy5tdl+v3%9QXhlisR0I~MZD)mCPkKMv6M82k7Ehz-R z)z5c6F)jaRd&L+eOK#o1k-m`BK1cB7e;c)`k zzu#2P`89hw}I^`$3^Fsr(|Eq6fvr~pC&&gytlqwToikM8w{tY=YFkE^*8??@) z>I2B>1SoP+hX7?0V{(1?6B?K^aNA;K4;MyHcY7TI zqK(2np}I<{{R1?Ja0S$Wcf26(X$Y5DppD?|-=f{7uTrB1dllM!07D^PiS|%Bm@jBx z;yrWS8(Spr>ToNyg1t>Za-qsC#a@g>n}CL&?tE%mF;#`)D3aVz9Lla>Zxg`Wh(r83 zMWHpY^Hs1jpnqccqTeDb*jwaX&Jf(M_90Tcxo}C~fO!kQh6vaJzfC}h!t`jGG6y(C ze#_M+pg((H0mqreZ%q9Go~z$R0QfC#gcP*t!yqh!;Q0HUDFXbKx{tFDffkC4hi>W& zSklll$wCU2L4e7$eVqY<=M4pQqQzbV3HT!1Ad!;#uJTU1SaemjlEPq zg_W{YdEq6nw+TR^@kC=VvH!jvC# zP_VZNX!>D|AdbJV{q6R{t8k!&3qB~=RST%r7hVe%%sD#fbF--_I?I!OPs^xrMw%428nyLWCo$ov=f7YJ;!1AXoqw2{mu6Fq^v zK>&?{E7Ef%)Lr2Z$G#1!0G7vl-B${0`@_#pAHWlh!ZZL0TFz=FPOlpZ{oSXv{dt1` zewZd;tBFw{tuQ+r*z?}&YHed6Z1X* zZ}kLTY6Eqy?Q4d=uM>D<3dac;8JytcxW^ffSbmlINio}}k(Q@SXEFS0izf!Wu{7fZ zAjDL7=IQ-dDn0a*%8r$1QI`{nB@g~n@1-d3>SA2)t($ixsp6Q9+~7MGBc8+ z7YwClr(RtgZvkWzs1Z=_+{)k_(Ji|`u~Mr)d2NgXq8W3SP}EnA1~tzP2mq$Ko+%kO zod6nvur85IrFkPGAgpnw6F_o|3G|$`oO%-~BLIxT6oZif5+ZDxUH)nSizA2y3CSh6F>_( z?)##mOtoqt0BExDQDw{~069Ka@Ak#|8sO+w1iXGr#HnnE-vj$!n-n zrlT`KRI8?$V*MuI_SJ!WEkI!k$@IznhOb;+XD7v_1t?W$2W(oB*HUDq>k;Z^d34!b zT7Zh&^atQj5Pec`CxFO`gTD1mmB*R4*HzV5|LbmobP`x0Y*9TH4t1e2AAA`A4+JP( z*-hl}{8VQ7yDPvoh z)YTkec9>!I+vj;EKyl8+%k|sZW%?+*O*I!}f)JpZ!p()tC2u_w%2_0cRdv>N{Z@Rf zPbdOZ2JE?HqkZpgw+3`}ln8qoG>*;>VF^GjoK(D{)X%9qD_ufFI$QR#;qCAcG`rvg zDD8WQhSH!{$dp8Yrh%{8^Ii378YK)4`}f&F9=g^?n^dU;=#1$bO52sMGZh}N@|+wB zYU@q8cZUF_4efx-k2sprt#Jc>Jtsyvvlz(3F@YX^-%SFv9*POR@LG=By1rTSRCjUL zWv>JQS{okVVEydMtjF^d*mO>5b3YF^#8hp^apeezl0nPh4?g(bmipXQCMybS65&KV mcM^g)=B0}kCR&`-=l=j@>LVE;jYj+c0000ZEYJH z;XnjGLVFmEDI#5JEojACEcHwQ*O_IOOs9KrRQgAlWU_ZNv-9!1&-=XZEWmuZtr8aM zz^La^Oz0t^Dxj*M>K?7^9G0guj~lP8YcbJj7k(dAjvA++G54bW7NX-`^go@N|CaVh)(RURT`TCI;qt;0d0<;Q zA!WzA+fe-oxL3)>;l8J$nP*+nB(DoXDhKoEy1KSP$2Q!wJ1TYMYMB26z(DXjG z_-4wuaP~ky49K)4G|-MT*TZ863QwxadJ@8V)A>i(ggAbnF4G}SYu+kcUtd$YYY1Y99kubn$jebPg&oyDnk4KU2E!-#Qwq7{(#X>R(< zNIM++z7GBwc>q$Eh;UyFIM#MVV9Sa-SGUr+or|%!6Kw=PU2G1B+Ev=!D2)**9Xf=@ zImtmpBX=e8AX4mdF#*F9g1rPrQ>S%RZQ_GxKh&&bS`ZJzC@@qP?9y1arSesH|Lc1A z^?C=mKOKix8e3sgWd$sYFM!0TG=<$15pX-@HXLD%X9iv|$rJ*BJdL|LDX?*pUVA5^ zcenw~`;oiKy}$h|=Ll(9TT$Hsjd4|lyJ49*9IVmnfM58a);Dq^0M5^9z;*f(wvYv- zEJ-YQs3w!c=prn#X#k^f=~VJ9P|Tyn-4Y~~uv6vFqZ?7A z=F=s@O|(*`=HL9ET$N_s(Ut~H>+)A+L2>QtTH{;UhvDzoZy`C+46#vn!PwZC)?Oe+ zYZ}J{2aytT8Z?K&2Lh3)90eTfDmnnd6gLqsHO54kC{aTA znLLmU0B*_^Eu;nnTsR+kX7KYFs{k`NUJ(SG>8V zg?DE8aXPVRXNn&M2h*JY9*5l^A=cy>C_Akq?K|^br~G1lIiScZ5=LPi^Q_||lr@ip z!-D8ACvw+)bN)jnxukPcDA)5f51nx%rqu*)sM1;AxZLLWB6%LTiF86Bk*9l_51y0v tLy~^Xe>x9Q6ZPwkWN`ocUzL9a7yur?fPny*r!N2i002ovPDHLkV1f=iz|sH! literal 0 HcmV?d00001 diff --git a/src/main/resources/images/orcidlookup/search_icon.png b/src/main/resources/images/orcidlookup/search_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..373c70ea092eabf2ada4fa1872abdfe6e662c1c1 GIT binary patch literal 605 zcmV-j0;2tiP)NLx5uaqwF?)U>H&hT~5bFzmeB z!SMLg1%}$PHlWuT7#^MZ4_D8G=DGrO=YDv`fE-S6aPIjU23dXsa5%oci^V{o>+E3> zfDE{WutzC73lEt7^__u%m4gAR3mvd&1bOM<>HnyPG4n7uD&#PnxVM_&5l~J_hY_cj zF@Pjc@wfL33};sSW8nNJ&R{8%z~G@$!SM9WZHA`uNeo;<3dG^Q zeadse{5N+Qz=qjoqPmF%ExDk8JBR+kV-S>V_@x*bo?nIVHQg8)1f)?S>jFmB14hh! zAf*6egJSOR^nYM+Wm`rDeSf^6^8us}nDsuQtC|2y%qQkU3(x@cRcOhAk2Z8g>DwuMuCQ1OOBA24G-2fDB~g#9JU;Ku>Orc#5ukXwFf<5oQyR rT}D)Sh?Ij2ka7{Y+@o8G4G>@esrIL?ASG?~00000NkvXXu0mjfI$#T! literal 0 HcmV?d00001 diff --git a/src/main/resources/images/orcidlookup/selected.png b/src/main/resources/images/orcidlookup/selected.png new file mode 100644 index 0000000000000000000000000000000000000000..41d9ed7dbd5e84790b6d44379af327a35eb6c622 GIT binary patch literal 507 zcmVJNRCwCdmCaGZKn#VKGyomo4&pPH zq=UEvFBRYecg&qbr~sz|oDS9(&ZdLVf$0Egc$yKL{mT*0?ATsQpR{kavN8Ylx=MX~ z`PgjeW@*$Ia-C>68pGq=G+hKI=q)?a*s5u#p8ffbf_!G-1l|FBqp~|h>^cNm5a1An zlf#;BGhW&FHK!~2JkV{A*M@wKXK*sQhL)VM4P_gVkF##DT7Is`_nW`3lx+v_z7Q;{ zWa&m4z4(ib4_{zZ0(OAavN!OzP~jJjl4HYBmPB)H0a&gYB|C`rI&&$l5r8)~#61T# zsHkW0XWe~S_*#&$#k-XN8SuS2T(XigxWQ%)YKjBA7k~{kH)6L6=?VuOpeXQnnpUsQM2~}%{aNhLfGSl@v+9~#RT&F1J{JGx x(0m$bSO-jItZa~ebkRRFpsj51RO0g^zyS43#ew_9nEe0%002ovPDHLkV1iGL<8}Z5 literal 0 HcmV?d00001 From 534760b66c260182404bae99dd916476fa754092 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Thu, 16 Jan 2014 16:42:20 +0000 Subject: [PATCH 095/111] Dependency injections --- .../launch/ISAcreatorGUIProperties.java | 57 ++++++++++--------- .../isacreator/orcid/gui/OrcidLookupUI.java | 1 - .../PublicationLocatorUI.java | 7 --- 3 files changed, 30 insertions(+), 35 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java b/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java index 63e0e994..d1d3703e 100644 --- a/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java +++ b/src/main/java/org/isatools/isacreator/launch/ISAcreatorGUIProperties.java @@ -48,65 +48,68 @@ public static void setProperties(){ ResourceInjector.addModule("org.jdesktop.fuse.swing.SwingModule"); ResourceInjector.get("archiveoutput-package.style").load( - ArchiveOutputWindow.class.getResource("/dependency-injections/archiveoutput-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/archiveoutput-package.properties")); ResourceInjector.get("gui-package.style").load( - ISAcreator.class.getResource("/dependency-injections/gui-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/gui-package.properties")); ResourceInjector.get("common-package.style").load( - ISAcreator.class.getResource("/dependency-injections/common-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/common-package.properties")); ResourceInjector.get("filechooser-package.style").load( - ISAcreator.class.getResource("/dependency-injections/filechooser-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/filechooser-package.properties")); ResourceInjector.get("longtexteditor-package.style").load( - ISAcreator.class.getResource("/dependency-injections/longtexteditor-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/longtexteditor-package.properties")); ResourceInjector.get("mergeutil-package.style").load( - ISAcreator.class.getResource("/dependency-injections/mergeutil-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/mergeutil-package.properties")); ResourceInjector.get("publicationlocator-package.style").load( - ISAcreator.class.getResource("/dependency-injections/publicationlocator-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/publicationlocator-package.properties")); ResourceInjector.get("wizard-package.style").load( - ISAcreator.class.getResource("/dependency-injections/wizard-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/wizard-package.properties")); ResourceInjector.get("formatmappingutility-package.style").load( - ISAcreator.class.getResource("/dependency-injections/formatmappingutility-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/formatmappingutility-package.properties")); ResourceInjector.get("arraydesignbrowser-package.style").load( - ISAcreator.class.getResource("/dependency-injections/arraydesignbrowser-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/arraydesignbrowser-package.properties")); ResourceInjector.get("effects-package.style").load( - ISAcreator.class.getResource("/dependency-injections/effects-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/effects-package.properties")); ResourceInjector.get("assayselection-package.style").load( - ISAcreator.class.getResource("/dependency-injections/assayselection-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/assayselection-package.properties")); ResourceInjector.get("validateconvert-package.style").load( - ISAcreator.class.getResource("/dependency-injections/validator-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/validator-package.properties")); ResourceInjector.get("autofilteringlist-package.style").load( - FilterableListCellRenderer.class.getResource("/dependency-injections/autofilteringlist-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/autofilteringlist-package.properties")); ResourceInjector.get("common-package.style").load( - ArchiveOutputWindow.class.getResource("/dependency-injections/common-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/common-package.properties")); ResourceInjector.get("factorlevelentry-package.style").load( - FactorLevelEntryGUI.class.getResource("/dependency-injections/factorlevelentry-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/factorlevelentry-package.properties")); ResourceInjector.get("gui-package.style").load( - AssayInformationPanel.class.getResource("/dependency-injections/gui-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/gui-package.properties")); ResourceInjector.get("gui-package.style").load( - ModeSelector.class.getResource("/dependency-injections/gui-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/gui-package.properties")); ResourceInjector.get("ontologiser-generator-package.style").load( - OntologyHelpPane.class.getResource("/dependency-injections/ontologiser-generator-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/ontologiser-generator-package.properties")); ResourceInjector.get("formatmappingutility-package.style").load( - OntologyHelpPane.class.getResource("/dependency-injections/formatmappingutility-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/formatmappingutility-package.properties")); ResourceInjector.get("common-package.style").load( - OntologyHelpPane.class.getResource("/dependency-injections/common-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/common-package.properties")); ResourceInjector.get("ontologyselectiontool-package.style").load( - OntologyHelpPane.class.getResource("/dependency-injections/ontologyselectiontool-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/ontologyselectiontool-package.properties")); ResourceInjector.get("ontologyselectiontool-package.style").load( - OntologySelectionTool.class.getResource("/dependency-injections/ontologyselectiontool-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/ontologyselectiontool-package.properties")); ResourceInjector.get("common-package.style").load( - OntologySelectionTool.class.getResource("/dependency-injections/common-package.properties")); - ResourceInjector.get("effects-package.style").load(OntologySelectionTool.class.getResource - ("/dependency-injections/effects-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/common-package.properties")); + ResourceInjector.get("effects-package.style").load( + ISAcreatorApplication.class.getResource("/dependency-injections/effects-package.properties")); ResourceInjector.get("sample-selection-package.style").load( - ProtocolSelectorListCellRenderer.class.getResource("/dependency-injections/autofilterfield-package.properties")); + ISAcreatorApplication.class.getResource("/dependency-injections/autofilterfield-package.properties")); + + ResourceInjector.get("orcidlookup-package.style").load( + ISAcreatorApplication.class.getResource("/dependency-injections/orcidlookup-package.properties")); } diff --git a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java index 20819413..e317788b 100644 --- a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java +++ b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java @@ -58,7 +58,6 @@ public class OrcidLookupUI extends JFrame implements WindowListener, MouseListen resultOver, result,filterInfo, leftFieldIcon, rightFieldIcon; public OrcidLookupUI() { - // this.parent = parent; ResourceInjector.get("orcidlookup-package.style").inject(this); resultPane = new OrcidSearchResultsPanel(); } diff --git a/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java b/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java index 4cc28215..50004df1 100644 --- a/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java +++ b/src/main/java/org/isatools/isacreator/publicationlocator/PublicationLocatorUI.java @@ -66,13 +66,6 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class PublicationLocatorUI extends JFrame implements WindowListener { - static { - ResourceInjector.addModule("org.jdesktop.fuse.swing.SwingModule"); - - ResourceInjector.get("publication-package.style").load( - ArchiveOutputWindow.class.getResource("/dependency-injections/publicationlocator-package.properties")); - } - private static final int PUBMED_SEARCH = 0; private static final int DOI_SEARCH = 1; private static final int RESULT = 2; From 6922800f5cabd3266dc2c104e62422d273dcbcb7 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Thu, 16 Jan 2014 17:18:20 +0000 Subject: [PATCH 096/111] Added link to Ontology in info panel. Updated images for investigation, study and assay help. Added information to tell users why loading takes longer. --- .../isacreator/gui/DataEntryEnvironment.java | 73 +++++++++++++++--- .../isacreator/gui/menu/ImportFilesMenu.java | 28 +++++-- .../isacreator/spreadsheet/Spreadsheet.java | 11 ++- .../gui-package.properties | 2 + src/main/resources/images/gui/assay_help.png | Bin 9910 -> 3223 bytes .../resources/images/gui/general_help.png | Bin 0 -> 3932 bytes .../images/gui/investigation_help.png | Bin 11133 -> 4017 bytes src/main/resources/images/gui/study_help.png | Bin 9832 -> 3798 bytes 8 files changed, 91 insertions(+), 23 deletions(-) mode change 100755 => 100644 src/main/resources/images/gui/assay_help.png create mode 100644 src/main/resources/images/gui/general_help.png mode change 100755 => 100644 src/main/resources/images/gui/investigation_help.png mode change 100755 => 100644 src/main/resources/images/gui/study_help.png diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java index 35328645..d316d6f4 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java @@ -38,8 +38,10 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.gui; import com.explodingpixels.macwidgets.IAppWidgetFactory; +import org.apache.log4j.Logger; import org.isatools.isacreator.api.utils.SpreadsheetUtils; import org.isatools.isacreator.api.utils.StudyUtils; +import org.isatools.isacreator.common.CommonMouseAdapter; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.configuration.MappingObject; import org.isatools.isacreator.gui.help.Controller; @@ -71,8 +73,12 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import java.awt.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; import java.util.Collection; import java.util.Enumeration; import java.util.Map; @@ -87,15 +93,16 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi public class DataEntryEnvironment extends AbstractDataEntryEnvironment implements TreeSelectionListener { + private Logger log = Logger.getLogger(DataEntryEnvironment.class.getName()); @InjectedResource private ImageIcon loading, visualizationIcon, visualizationIconOver, addStudyIcon, addStudyIconOver, removeStudyIcon, removeStudyIconOver, removeStudyIconInactive, navigationPanelHeader, informationPanelHeader, - warning_reducedFunctionality, removeStudyDialogImage, investigationHelp, studyHelp; + warning_reducedFunctionality, removeStudyDialogImage, investigationHelp, studyHelp, assayHelp, generalHelp; private DefaultMutableTreeNode overviewTreeRoot; private DefaultTreeModel overviewTreeModel; private Investigation investigation; - private JLabel statusInfo, visualization, removeStudyButton, addStudyButton; + private JLabel statusInfo, link, visualization, removeStudyButton, addStudyButton; private JTree overviewTree; private JPanel navigationPanel; @@ -131,8 +138,8 @@ public Assay addAssay(String measurementEndpoint, String techType, String assayPlatform, String assayName) { // get node DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode) overviewTree.getLastSelectedPathComponent(); - System.out.println("Getting assay for measurement " + measurementEndpoint + " and technology "+techType); - TableReferenceObject tro = ConfigurationManager.selectTROForUserSelection(measurementEndpoint,techType); + System.out.println("Getting assay for measurement " + measurementEndpoint + " and technology " + techType); + TableReferenceObject tro = ConfigurationManager.selectTROForUserSelection(measurementEndpoint, techType); if (tro != null) { if ((selectedNode != null) && selectedNode.getAllowsChildren() && @@ -671,20 +678,57 @@ private void removeStudyFromTree() { } + /** + * Sets the status pane info pane. + * Also hides the link. + * + * @param info + */ public void setStatusPaneInfo(String info) { if (info != null && statusInfo != null) { statusInfo.setIcon(null); statusInfo.setText(info); statusInfo.setHorizontalAlignment(JLabel.LEFT); } + link.setVisible(false); } + /** + * Sets the status pane info pane. + * Also hides the link. + * + * @param icon + */ public void setStatusPaneInfo(Icon icon) { if (icon != null && statusInfo != null) { statusInfo.setIcon(icon); statusInfo.setHorizontalAlignment(JLabel.CENTER); statusInfo.setText(""); } + link.setVisible(false); + } + + public void setLink(final String uri) { + + // remove the old mouse listeners, otherwise you'll add a new one ever time, + // meaning that the browser will open up all links where this method was called. + for (MouseListener ml : link.getMouseListeners()) { + link.removeMouseListener(ml); + } + + // now we can add the new one :) + link.addMouseListener(new CommonMouseAdapter() { + @Override + public void mousePressed(MouseEvent mouseEvent) { + super.mousePressed(mouseEvent); + try { + Desktop.getDesktop().browse(new URI(uri)); + } catch (Exception e) { + log.error("Unable to open URL " + uri); + } + } + }); + link.setVisible(true); } /** @@ -699,7 +743,7 @@ private void setupWestPanel(Investigation investigation) { // setup status pane JPanel statusPane = new JPanel(new BorderLayout()); - statusPane.setPreferredSize(new Dimension(200, 200)); + statusPane.setPreferredSize(new Dimension(200, 220)); statusPane.setBackground(UIHelper.DARK_GREEN_COLOR); statusPane.setBorder(BorderFactory.createEmptyBorder()); @@ -714,13 +758,16 @@ private void setupWestPanel(Investigation investigation) { UIHelper.renderComponent(statusInfo, UIHelper.VER_12_PLAIN, UIHelper.DARK_GREEN_COLOR, UIHelper.BG_COLOR); statusInfo.setPreferredSize(new Dimension(175, 160)); + link = UIHelper.createLabel("View Resource", UIHelper.VER_10_BOLD, new Color(28, 117, 188)); + link.setVisible(false); + // setup tree westPanel.add(createNavPanel(investigation), BorderLayout.CENTER); JScrollPane scroller = new JScrollPane(statusInfo, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); - scroller.setPreferredSize(new Dimension(180, 170)); + scroller.setPreferredSize(new Dimension(180, 180)); scroller.setBackground(UIHelper.BG_COLOR); scroller.getViewport().setBackground(UIHelper.BG_COLOR); scroller.setBorder(new EmptyBorder(1, 1, 1, 1)); @@ -729,15 +776,18 @@ private void setupWestPanel(Investigation investigation) { statusPane.add(scroller); + + JPanel linkContainer = new JPanel(new GridLayout(1, 1)); + linkContainer.setBackground(UIHelper.BG_COLOR); + linkContainer.add(link); + + statusPane.add(linkContainer, BorderLayout.SOUTH); + westPanel.add(statusPane, BorderLayout.SOUTH); add(westPanel, BorderLayout.WEST); } - public DefaultMutableTreeNode getSelectedNodeInOverviewTree() { - return selectedNode; - } - public void valueChanged(TreeSelectionEvent event) { if (overviewTree != null) { selectedNode = (DefaultMutableTreeNode) overviewTree.getLastSelectedPathComponent(); @@ -773,6 +823,7 @@ public void valueChanged(TreeSelectionEvent event) { overviewTree.expandPath(new TreePath(selectedNode.getNextNode().getPath())); } else if (nodeInfo instanceof Assay) { Assay assay = (Assay) nodeInfo; + setStatusPaneInfo(assayHelp); if (currentPage instanceof AssaySpreadsheet) { Spreadsheet spreadsheet = ((AssaySpreadsheet) currentPage).getSpreadsheet(); @@ -781,8 +832,6 @@ public void valueChanged(TreeSelectionEvent event) { } } setCurrentPage(ApplicationManager.getUserInterfaceForISASection(assay)); - - setStatusPaneInfo(""); } else { setStatusPaneInfo(""); setCurrentPage(newSubmission); diff --git a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java index dc23a729..6167e83d 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java @@ -49,11 +49,11 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.gui.io.importisa.ISAtabFilesImporterFromGUI; import org.isatools.isacreator.io.importisa.ISAtabImporter; import org.isatools.isacreator.managers.ApplicationManager; -import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.settings.ISAcreatorProperties; import org.jdesktop.fuse.InjectedResource; import javax.swing.*; +import javax.swing.border.EmptyBorder; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -76,7 +76,7 @@ public class ImportFilesMenu extends AbstractImportFilesMenu { private ImageIcon panelHeader, listImage, backButton, backButtonOver, filterLeft, filterRight; private JButton back; - private Container loadingImagePanel; + private JPanel loadingImagePanel; public ImportFilesMenu(ISAcreatorMenu menu) { @@ -111,7 +111,7 @@ public void getSelectedFileAndLoad() { if (candidate.getName() .equals(previousFileList.getSelectedValue() .toString())) { - getSelectedFileAndLoad(candidate,true); + getSelectedFileAndLoad(candidate, true); } } } @@ -119,7 +119,7 @@ public void getSelectedFileAndLoad() { public void getSelectedFileAndLoad(File candidate, boolean loadingImagePane) { - if (loadingImagePane){ + if (loadingImagePane) { showLoadingImagePane(); } ApplicationManager.setCurrentLocalISATABFolder(candidate.getAbsolutePath()); @@ -136,9 +136,23 @@ public void showLoadingImagePane() { } - private Container createLoadingImagePanel() { + private JPanel createLoadingImagePanel() { + if (loadingImagePanel == null) { - loadingImagePanel = UIHelper.wrapComponentInPanel(new JLabel(loadISAanimation)); + loadingImagePanel = new JPanel(); + loadingImagePanel.setLayout(new BoxLayout(loadingImagePanel, BoxLayout.PAGE_AXIS)); + loadingImagePanel.setPreferredSize(new Dimension(400, 400)); + loadingImagePanel.setOpaque(false); + JPanel loadingImageContainer = UIHelper.wrapComponentInPanel(new JLabel(loadISAanimation)); + loadingImageContainer.setSize(new Dimension(125, 256)); + loadingImagePanel.add(loadingImageContainer); + + JPanel infoContainer = UIHelper.wrapComponentInPanel( + UIHelper.createLabel("

In this version of the tool, we automatically upgrade ontology accessions in use to URIs - " + + "this is an artifact of the upgrades to BioPortal's new REST web services (version 4).

Loading will take a little bit longer than normal during this upgrade.

", UIHelper.VER_12_BOLD, UIHelper.ASPHALT)); + + infoContainer.setBorder(new EmptyBorder(0, 50, 50, 0)); + loadingImagePanel.add(infoContainer); } return loadingImagePanel; } @@ -239,7 +253,7 @@ public void run() { createErrorView(reports, false); } finally { - if (loadingImagePanel != null){ + if (loadingImagePanel != null) { menu.remove(loadingImagePanel); } menu.hideGlassPane(); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java index fab410c4..bccd36fc 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/Spreadsheet.java @@ -1631,15 +1631,18 @@ public void valueChanged(ListSelectionEvent event) { "

" + "

source ref: " + ooForSelectedTerm.getOntologySource() + "

" + - ( ooForSelectedTerm.getOntologyTermAccession().contains("http://") ? "" : - - "

accession no: " + - ooForSelectedTerm.getOntologyTermAccession() + "

" ) + + (ooForSelectedTerm.getOntologyTermAccession().startsWith("http://") ? "" : + "

accession no: " + + ooForSelectedTerm.getOntologyTermAccession() + "

") + // ((ooForSelectedTerm.getOntologyTermURI()!=null && !ooForSelectedTerm.getOntologyTermURI().equals("")) ? // "

uri: " + ooForSelectedTerm.getOntologyTermURI() + "

" : "") + ""); + + if (ooForSelectedTerm.getOntologyTermAccession().startsWith("http://")) { + studyDataEntryEnvironment.getDataEntryEnvironment().setLink(ooForSelectedTerm.getOntologyTermAccession()); + } } } } diff --git a/src/main/resources/dependency-injections/gui-package.properties b/src/main/resources/dependency-injections/gui-package.properties index 3b40aa03..8238ed48 100644 --- a/src/main/resources/dependency-injections/gui-package.properties +++ b/src/main/resources/dependency-injections/gui-package.properties @@ -68,6 +68,8 @@ DataEntryEnvironment.warning_reducedFunctionality=/images/visualization/reducedF DataEntryEnvironment.removeStudyDialogImage=/images/gui/remove_study_dialog.png DataEntryEnvironment.investigationHelp=/images/gui/investigation_help.png DataEntryEnvironment.studyHelp=/images/gui/study_help.png +DataEntryEnvironment.assayHelp=/images/gui/assay_help.png +DataEntryEnvironment.generalHelp=/images/gui/general_help.png # AbstractDataEntryEnvironment - these are actually not used since I don'columnValues know how to get the static # Variables to work with the Fuse API. diff --git a/src/main/resources/images/gui/assay_help.png b/src/main/resources/images/gui/assay_help.png old mode 100755 new mode 100644 index b3ee7cd4ba606fc4eacc867da6b65f9e525b72f8..d53eb752144cb74fd914412780477209ab4a1aaa GIT binary patch literal 3223 zcmV;I3~2L5Nk%w1VaWib0Qdg@=;-O}?ClwNJ-6D1=I7|T*OblC%c#(FHpUYvU&T@RXORLU%zSy1D*xBps?4{3au-1CP-I@AmWH?B=h` zibRfU=;`Vtds30TsLu$=>+Jgb`}X$t)Z)YyaYdoVw6V~^)YaE>s*wHu{!^EC z@bK~J>FW9U`ttJgm&s51`ud{EZvOuMg0r08;NkG`@%Q-nz|XJt_xIY`-0|`99(PR0 z(ZQ9-QoGKj;pX0{)Nc%LJDJE^kjF^H;-B5#->S=ix6Yiz(7599&)nqH_xJd;)rs-) z^Rvy9+}+=u%wO*A@0Q6>uhW0;@bQ<*RK?q=%iXlr;>q>)_O{BvtkHF*(QKy6cg*6j z#M-Ex%vqw*W0=ZN*XzBO$xe~SN3qy^H;X~z?&#X$((?G}<>uzt>%E@MTHxX1lE_NS z-m%!(+TQNStJHAhX5Ub zs>HYB?AE;4l-uCnoXcL--^rH9PsZKS)atjF$xfWZvF-Hb)6~}L>g!IQMo5rus?%`Q z=H89QL9^F`=H}+)<>n`VKhWU1#@Vdf?Ze{c-_X>~)7{7M_w>Hlo4?$cq0MNc&uO^T zk;v4%uhe#N>(ZprWyRs0$=tK)^4zl2h}Gc8&fC4| z>g(s|>Hq)#A^8LW00930EC2ui0LcKP000R80RIUbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2ANwTELlPFWFT*0!Y6Z zmodY%z&QnxeyBlu*p9oqckAINULnsJlKJTtOw{$xSJL14uA3ta=^2cmg1IQU?MH@=sEKS1Je5IZq8GFKHf64>LCOfuIA zkp6&jP$R-5LsvIRO4sC;J*olaDKGM+PLe5bX(otX`twIT0QB_*naiCiCv#r@;ms|X zxJhP#bM}c^nt$vfBwtaGsimKDrU_&geN94UnTYoJB$RZ3B?S$bN`aB1WJb#5D!4HB zBc)mShl31EoS^EetjdrD0AVu!6vGz)Sn_C`o*EcSIn3dJ1F2QT06+z-7Hcf4OyHm? zLNsKtY6XungKMr#+Cm4Ej8^5vs%?zn!x}AwD{i<}_%H_-2CT{if&_iBssUWcqRjyp zpkVL45FDWI0S$QKi8T};Autlpz+mvf2q&yC43!Lw#Fkz_Ip|a@fWw9rXqce!#vFI7 z@fkjZal*0%5fR23XK1X*y)3uvG72TcEc47X*KBjm7XX5X!2+*iUINVknI}~&IP!wW zNGE+j3JAGC0VNx+{PNU^Bm%R|BFJ;I%$hi}_17g70tg_wFf1?up!kD>9aXUa^99^wa83st&_nzq6}^JIRYuIveDhJL z;6y?y6ft=Nf=ghA86((xNA}v6Aju^kNrMU8fE6cfVG1sgU-JSm0~N5qAx7AN7F+<0 z!5M=D_u`-S1~3kg2#|nYVSxxoXatN5V{n|np7sh60+9$17=M}G)KYk_VC)VPs2E8! zOpu1ZTmyIZ+Fb|#z#|ej@bE9W03zWS2a9}|#E1g`Oug$L@B6f#g?T}1Y5&E4pm}^*8!#jxO>3iZq|X8 z94{v^paB4gAOjg33t5c>zzt$m5gOP50F6x5BURN%BESkjAArE%G*~kaP~%kF+T;l; z;3@!op$ivDBmfFv0!ONn36Y#6NxDFURI2iqCy>DnNY)T3+`yK=RAmKlK!ZyRu4YuQ zmpIau%wsVj3wB@^LwM=SF_@s5#S$hlHPQuSf)kiB80SG^fP-^ZvjP(coy?+%0tlqS zottDrn;1g>19Pe>4By1(s+6^nE*L8eT$qCotT3*PjY|;bLYJ}DwGdyb3SMmZ*0?fe zf-{J#Tt47J8;oTD4ZQ3QGP~CVrlG2C`M?L`5`)IXFs_%5feXhX!a`_ZtOa-h2Xz3# z4Tj196&Q7>LnQzXOyLD$OjMf{A;LfBfHAsRb*5HegUD1xNrM>SqHGX^Os{Iy7WiPK zs^Z7gQVNfEi~(h2wdxtxFotI>M5-rPfGKY91*56}9exe0U>yadv1Q!$wRX_lMqB`;KKKo4%H@S92=NKdDMSTOdP67<09@sM z;{X)s1C$>4k4Vfhh>~z4<@gYX^NO&L zBS?CEB~-|zo4137M0(S)qqIhx5CBkbt_Yb{Nc2oSxg#*-2+LzNkY?~cg&3jKvi1k6 zJ930iUpfFss5L{3poLgpx(HK%DngtPKT~Vr&;f(9Ak`6x!4W3-=OQ!^+77Wcw)ed4DQrR5CNY8tZ@UE%ek2AW+<|S6AVPeP zT7*Zi?G8lf?ThFe+_vpEyy-*nid+2R7|*!IH_q{nd;H@d54p%kPV$nQ{NyPAPr1rh z&hnPK{N*r@xmId01erHv2`g9u4{W}W9Q_@xCj4@==%k3UZKn z&2ye0JP?A z2NHxJ6lC&y7YOqI5d^dgr+_=hfd!!iSnz=$Sb`>af+(1RD!76y*n%$j Jf_xDW06Ub*i#q@S literal 9910 zcmZ{KMNk|J(Bw_sEf5?Acl*EE)7HPW zhnBT3Zb~aiz7S?`lBQ_!c0HeO5jHI^j>S+)fBxlHLa}A*b!#t_CvjA{5 z9fGET*jAh^Gt#G_XwOI+E?I?8PvEAlMO4~QDWH%kv*(T;-oKa3mMEyg9_Ot%P+0mA za||0Lu}C9cW_*=b;m1-)gbX}nJ;2 zwB1VsO;m1YYHo!6w=sr|#Uq}jg=8VSZkJ4xYDE3tTQ8U6)S2%^!wyy|paOLN6||h7 zQd|miB!2A3Ba)A=xt|WW-g(bXyN3}6bMGj`I6kkh&V6m4*T6!J6l6uLi-{mX;#Ljg zK)R)cmk8U)FbB9n)l&PfJw>AcMLuvFcA=;oSz6sBud3NK-1E%orRo$s)};U1qj&M|Yi<4gd;! za+xQQ-6;J$2s{3H#@#_xYP90I{jEk(4seMm8b&Dv#UXNhEv3VJQcFzgx&>1wUX8@| zPQy*gbHaW6=V+P~_`?g_G+f#kC*K+2aL}CIG~L##H@|U(3*13m%g|H=k67DG%C6`M zpR0;|4iUwRLlE9=Q1RZPe_87TQM~0gf=^%i2q=Y9h(Jpo8o4UhM<-F7yrlu;9KD58{wL;kgiff zg|TlVTEp*@wZ&c#xVDGv;%hYF3mWFbH`D>$AX&r_q^UR2yPjS)l2!sXy&?F4- z*F^?^;Z(IlhlW|3Oekm#{5oUx5}UvuA7D}Gedba)q3qI^3H6{TOcuaMGFv*PRuo)J z;Q%INZUhTo=v7n zdHr{?{840Odm{dGol(NwV%RsytqyUT^SPVCOLK;EGo^GygqBA2YKo;G4%7IvroX)` zJG~N3qnHY4zrKC2xWCrf04fYuM}Pm3#pC2j)ubK8s~ZgwvL|4dEzF$OwWK@pk8kAR z7E`v`@;=xDF5;4xl2|edd^lj$i1kviO20Ig^vXXp&f-ZG1OILM_@%x|bwhboeTl-a zxE0&O$)YD!(pIH9d(A6SX;pdZ9%0OcZgcha9_&C5j*Cvtu3($1;piZ#+u`&=%JA1e zBkGpU5@dOe2mUB<`)20Drkd7AKSoB*C}Vd>#vOGq>zX|BMN!C|+vEqTY} zkQ&L1#am4MU@uxWHjU$)joB+!%WeewdmnMs?5VaM!DQY@ed8(BudG zDjPzdFEyf`X6cv9XYI|MH=9FgKC;G7 zJN<-?Nx34rOUbVHQcw+k=MWuGp9VNq=ok%4A$c6V-~!Zt4w`FRjOY5wym1eKiFDd= zUKGuL31r$wJ}a(mr%i`XNcEUuPPhG?ohHY!xco&c+ehE-(kmW5`}SaQYZ?3agA~X$N2T)} z=J^JF|9YFqa|!DWRd;WU&d*1R=VzRQWXqeqoWUqQ#fO{hox9N)%il-jT7SZbf7HfP z5S5$rGRYIEvxQ-SAb9)DB^q_7lPQBrJmMnN^@dssdmY@IVPdEQUrI^&mkRLF9pMj3 z64=OoT8#MHh(u7Vr#al*2V(nOvvjQ(Ldy(xqy8;3OEF6fw5_Ey9A)B`qKrSLcpv=W zpKK72B6?sav@5d_`Dwo!7%6{b62p4IEuD1@5dUi2$xB{7{rGzPN=m(Sc1*kktxbNL z3`t&`wA2-+*FgB^E>?iJtBGSXkOr5f!68x9Ze-w|LS;dzb+KkYIvzj$`wEpyj&b-# zX^DN$RZQkqVfuTETYk}LONN_|pjOJXC;!0!IEgYJoRc_pvOiFtCi#TSz zhkZAAb;wKjo?9){Da$~p3Lr6a<;5UC)V9skIi<2S`poEXcqkZz3e(X3Z{kHgPYje+o^U_uW7>yE# z&&Kx9Xb=*$W&Hgg9~2xmKtoIRQE=yP8v?HcoxJIvCcsG86uj=DZLH3dmsj4JdvwIT z1mq;jK{}3>L)M||K?*s#aIka$lAcWS$9TZ@g>SckEul(WBFX|hZO%0Ma_x)D9+9FcUGID!8Lo&>-Dm_ zG7watZdR^WHuebga-t7HjeE+pT}1`-j)xJFu+p0lf6M~ET>XgHu_o(siGb!ID^b#5 zfx3MSJ;V9<+(nhEy{@s>8GFpWn_=2L4g$|Ydz4SqH~|5hMiplZuNL?r^$ z?W+`&2=XstL<69cCle+J@VbW0Lc3#8CK2*vX%!xe!361giD;ssXAo8 z90u5z?QB*zrx>>}AN(fwMcW(C!mf;7yBRAMsr*=*e)EavdHW|5Owc*otX>o|zV@eT zH1~m%(>bRYE7L-w$HEhR(0dwRhvo1}`QU0_&-h$%LW6`NYP2NJKYYZ(e-ND|vcJ$K zVxnSL!9zK}HaT8US5q3e4zO37+TgC41q`TBgYseuoq9gRS~|zl|~9 zUz?-zMsxfC^s6{zshDlrrVfk+9$V$C?d&uN1 zT7hTYa-i*_)Z8(?`VkCD#T#=Cc}q|lJMk&+Sg=sINIm`NYD&i~*^A$upY*Y0I0&*Q zBH4ZY&n$|FfaLRNN*q>eXITWTB(dD0{Wa#}nY&9|W_Ws*V=;AJa(B(37U@-Wsjk{` zYk?nnm(7p%M<&x}7OVlkcNUyi5Ycxi=gHBXFO3Uf+A68+c&?-v4DRci~h9W z@rCnO+ZW@HN#0`rR@)crf^D|(Ytc~O4u5W9UwLcus-z&)P9IIMhh49!hlAEF20hBa zT4Q4YM`oKio?FJ^Ct*H1RD?F)=Pm>-c300*esiz5`idROmy#w46Od-f=V_UDZ@ISI zS?i{K`rk{oUzuTI%}hhZH;S73jv)KKb_+`KXtQT>r&-Uh87UQfnCLM%G*vFqcFMO=t3 z~%G7+%5crOJ=<0C4fYRL7H?ptErlUkQ*4ot{5Uk^`nbT=Xv^yeYR!b?SC z>tKZ#Yg^lnc`NV+m#~biBXKeG+PdyBNl{^p3bcj$!;8lt9C59sPK$u#s>l8@c=%7U zgaI?mgbs){oWjqFm=nkl=~sa5f3J^Mil>$AaJ>$O65{ zF16sJqzbf8PKUJ+GeBJ%h|AjL7z&#ReeJU~7|0!N&}^jn(~D9dpgDB5;jGKqH>$99 z_CZP{y5afyYoo^GZQ^eshE|E>28Hi~-BMErgy8+dcF#&{Bc3Y}QMRU_99Y_OiMYk* z0}?i#Lgs7{@(N|PTh$b{`&O;@&#_@CY|{}I^>bQTwX@M?f3S31Jjec1>({8s?CiM- z_S!x}|3B^iztub>3ljr#A?)q&qDJk~E>a*pt~mEisCtrzE|JB}xOmG7=bR$*Kl$32 zDKP^-5J@FeC^V)+t6${=k7Qm$4k0lt-f_ z7wk-CT5eZG>t zw$M>qbl@Ei>4%U@toG+~d=$=E8|Gz6+=XYh`VV)EhD*`bjzl~OLqJXCfoIOZQXqz_ zZwe|NEoGlx9Yv-IWieANAc4$NQ?$lfps#0~t01hoTc80DyBpOt0}Jun15LYDJ%ngO zxUD4`E&yT5o>v3q8^eYr&^+D9up1*qW=Aaa`Maf;!0Q4MwC)Mduxpg@Ujxj@pxY*z zL#4E;^v#xb;M-RBTl4KR_3Nd}pKX)_FNv7Nu_9DjXj7Er6C&KMdsCOoblnZvbntxt zeW%V*dBzHM4LB8X!W-VK>m*;wcS7#uUOX<4_-*Z4y|P6=8!={Af)dbBF9(pc5Y;;i zA&VJ>eocX!R?~ehsRv>FiM7|OJ~h}x+j_k^H|XxZ19sy`TNzFvV)msQd zW^)6eOXRLa@F znw!=&6jB0CMSa?48eELJgS}2H4QMvy+O70qEksN2JLwQ06AG(;$vy@@mJ-u<+!lUt zem&iEoJg4|Ouzby`NDtoX~+yX{xTxlB?LuwF(SrK^lt|g~XQtRix4lJV{d(cz zm^B1ZzM*FPlM9onAkWI%h$^af2S>m3&Xbp$8I8|apj$21_d9h2ECgy(KUyE>6~0>O zK9;|>X9PAknxvYqFNu=rOK8l{-*%h-0g&QcmPFs*yH6=e!mCrdZsh#r>(km6R=rIRoYYT7vKIYi zqhr50tO{rL?c^%&>y6l@xhi{{g4uZjg8}(&R%U5*C@5zZ+eQw2QKv+hh$5mzcy z7A5GYCGdKQ-J4#&0*A6;9b6lY)#Z|Qa_KF7l`WoAFG-?*EA(j1!?s0cqvavy@%;Ae zig+|hAuS@mN&us9@WY(=&923UIO4iCw;W60dp%gEB~q1o-q#hcz;YHr1l7d!(qfza zh2RE1*0>88HRG0)7J6jUCu`8_D=?6$WU*PrhwYfvzfk`KI-Bh1brpB9wFVW zhwBV+ug9<8M!}wqzfp^6$L8&Rl! znzHE9-+?uR3CU4BjVNMN4Kdi|q9Z)Wg~I@%ftjo~b>CPWv9$`uiCDEOqab9I``g|9 zN`Yz8ZRoyL7QC6_`z9QGduaK0$YtOjd^sd6_K#~2qRO@N+xSX!pl2NS4#jf(D)8owtNRU zHB>pIAcVfgT)bQk10a$*BWB!pdWq>@%Oc&l#$|hORBXz*W=dx3`Jv|0ZKQ>K_v}*O zQ*64^%o_m&)oftcvtpcBM39)b_k-|k_-b_)W|;Vy(h1P zyCK8>t@$MFIuyeRB_?|RCibYy+)^_gMaFDYEVzS(fIHjRHd()T*xg}u)r-REBlfbg zq}Q7})R82st1eFRzA$o_=V3BpCfEU=RmZ_|P9W1LBQQGy+~~;*JZFBEB-qM^Eq<{a(N9(aG?0Yu0BLx5o@C3MLK@n7*J~1R zU+5o)lL3l+fQHNv{QfYNE&D+o%`34GcMOg`(JkGQ-+lVlo-^SkSpWk}3AAI&4g0L) zr=+d?%p17Wcit_D!ZeZ=ZT<0`W>6DgSPEIGlqhv6jIImejXLATd^3ri1{&8nY& z;-ZiL{%{in8*N!UYxTD1f^)w-jKvC{s(oUFw_X{oxc-lkofaXf&v|g}u(V01b4u9b ze#7KQ%O5j=_p`o>)BC7qn~z-(1jw}Q`|II}}A`jWNTq6I~)2`gN&|tFP*c1im75sa@2v4CDU;ERr8MU*CuzPd0$62)%HBHn<-NGljx|i1A<@2@kM+brT^?PKD zhx)qLlx%0X=d+ZMPeu9O&Rp6?(>njL1&yoZVcm9{zFK&qv z41(e(UpR$zdWjI&vyiV*PC+j0R-519D;%VgY6AkU9gSumI-{dvF{syUHJi|@l{yS( zt8@NJksh}!%evl41xM%iid46PM$)TE61MP%zRuQt_C5^TnRf??CIK;-YSuv#UbtnC zUmUBKIK5*jyvL82SB@4R^l6p6;1nCj=3XMC?aj%lPPJ8Ec>bDXnO?t!(7ZF+3@loZ zO_>5EwrNDKTu9ii#1kmV-t+UAmowmC_=Vm-L(d=r{)H=-tBAryfQ$*k?Xp&FYpzX*yFEx_wbK7hjh}w#tiB$MI;b-R}jw6Idf&C z8-(m#)eT&%UPc$C?EJ_JrUHX64SX+E41@SpE@uj)R~Y)DY+!`9`!@NwP+!gY080n$ zCf!$TnB@=dWa#EPPo=UN&ffNdN3g-*Nh0>c!!ij)eqLz9hdDa2Bh%*b<2Za%`9IxO zmp`tbG~U$BeRl#CXW%jKF|qz^6-53Dhf?~)Ns~<^H=gjmI!P_p&Ee804F6lc+iF47 zEEc85PXCD*cvb{Wa(RL3v^&?VD3*JB@WiC)6{^9 z)XsM_p2Dsg>M8kc@U`^T zk4>G7A51y1Ymev)Ic%U6&Vb#IlQ=k_mMadG1oi8mBfItZC}v5g&;R-7*GvLsO>n55 zMFlQtYiM)Bhp#>6o{Yhiy3LAokZ=-S;H}1YgC`8$b(LsBvyOh*#mq1xc<0VhlBDB~iu%Ui;9^ zb^Y_Xz9Lss3_!D*YOjG?{3_b$Sa;){Qxzdi#;e#oDlEMkr^DkjROXK&f%9%$fLPKZ zV$+ZLQDdWG;R3Yg1sCR^=4hbJddF>cX`215j$QShl*L@y8F#s>2{VGs$Vu`?fU}dR@1Iz#mDBpteBHY>bqksh+M4V==e>Bb2i_| zY*Jd6Z>eVnfT~?09hnF$>cB%3Eg6G=^Xh-pj);0XHb(pck&3rzNg;AW+u4|C1>}u7 zIxBjDERz(8n12z~kGHxa%`nJFxd1|8{WzWnWLPu__$jG-d+W_LBt}I6p)lnpd!EM? zRLFT(7Z5w6gOxQQpn?ZI8xa+`Q~jOJqKyl#oV^K&C;~Bp{rRTuL@40k^#bAOD4$8> znk=+|74aNn%rc0B(0SIT11u8~_?}Q};N?T%o)xCdM>6mv%K-R7sO)ZfV5rd7gM$NP z({g1tI+?WaD?e(kd5W(jp3NbryYM_bjt~20W7UZ;Z(xey=A)2YRXab8-II5*oL&^5 zOuWb@ei7FJ7%i>TEA;Sh5A4IgLfl}#!Gus7KOPOUP@$CvUW4W8$ySn$HIR@I?%eQ& zcwc?v)rGF6)T+Cx^R`zpk*YUV^f(WBJ8HgCh^2E9I|Q){o9B*=%4J*}K2N2`J6tx* z%(gaV+t;B(IoSgClt`Q$!3<^^W6dI@}OA^(6DA{c~`)1q`r4c(qiL zk?uk<_zrx`)*Qc35n58P^m%NYb$TyaPD?Uht!Hi9Pnc0WW-(xvA89BoerGEtUGX0& zon*k~Z^SdF;rFac<@*?PH{Abx{JgyxfkQD#cJV2E>SS3x+cVS7LxsAjk3T>u z@A%A1Y6U6QsJWemfvv+A5!v$#Cj(54Kt)|`3VMAU!}9VF`}_@44eGuhE5KNQtdh*wWN`siT%+*#GBo9>-#?!U=HJ_cX&)dg5ht2{dxzf{~pl* Nin3}lHB#nb{{szbI;8*r diff --git a/src/main/resources/images/gui/general_help.png b/src/main/resources/images/gui/general_help.png new file mode 100644 index 0000000000000000000000000000000000000000..e71024e5301b34a71fe7cbf26c238da3c74c3c68 GIT binary patch literal 3932 zcmb7HX*`q<7ezyZ>`U2V#$y@V-(J=jL-S6*Kap*a zEgJitwL*+R-oC!?xA*tE_nZ&+e!3sdxhKKM;5rinF9Q`76%&ZXnEd75zg-5W`->XY z3{iiHCqVaBfT@pLK(M2qE0wm3kCUqq=p(x zStQ}2D3db4@J4K|oI>;GN8bj|a^SJnTJ58E5|Q=4SkWGq^G z<}N2Daos5E|Iq?#i8(tyd?>65Ld(t7EbNSlBasPQ~i_`#{(m9F`j@>x1zWMe_T)@OTn%WIZfYdBi^oojj2rs69`S zT3O@}{5VT;wv>w&Z*YG(HL+w(5LGGv@$2S?p<6cv{5`lR5OhPA(ZiH}h|9lv+H@J0}YkrSP?&GR=5haG18yCohaal4$WY6%20X$;t^@ znTl!R04PePZ9g*`r&Xy=$H}uk)?@&o#45sb^RDA7CcpUJ-jS*m2h)H$aU_2|K|ATX zd}~pVnF75G94ZU&-z*o6C~)~A>Rp46pc~C*g1+A0OrEIzRp&+jb^^i z299XAw5Bh<4&0EW;jh2*#mnC+2S70fPXD14)Xhe|ehQ$H8D7;s^+bk_i2|UpcWtG! zd!4o1X2+WFx;9inBe_yVcj1EfU_d&6*Da!t3)7T=fYicSOaK{x%Mw@;)lDhE9Vo6+pn=>C7^Iju^k8pg0pE z1|Ez8fyz2o*D1`PpWA~3+_@p%#V-#Q`2J41{0Aw4wjNX6-Oof34+i{bRZbx*Hrn3H z2MGEI_Qi{ODw`A1O}%q_VF(aCNdi(i=02t~1%7N>w-JV7YKMnVoQ;!RaSFIgwOA;V zfHzkecy$-w0KWY<_$3(6g2`PDSnO8%{&iN3slMo^KBUMJtfKeDAj@LD&OXB4`z_&} zF5t<5=)p4+aK5krF5^xg29O=ec6KsV?6N-)`aXZG#>VMNnT+(J!UqVz@ZME2?%>C) z&qt0_vUZww)fd44`nubkg^P+a)tY@&?qwF#5UMSnzS*l~)Btkf(~ZzTrl#|&Ri(;n zC>fUxRNlV|YOx7{CQ&Ev&?!YkR!>4tMQE<^eFHsCqTBBq&0`$pkw7m^J>oV4p(mY@ zV64ZJAg@8K-PbIJmxh3PWwwVdt{l1#hA}*DV-jzW?VZ%m0}=5iM~^gyxG#po!szYo zGu9@e3U6UE8{yX;&EuJUSzq2Q&9QK;IZ5Jvx128q?lLUolk9wQqNLJwxO4sRi~whi zVn?zi&$d?-zboY$%a>;`&}1^xQu|pGP6npVVC>Qksy&t((p5~ln~|yo?4?D3AMSs$1tL!>6o0#&j_m4e%1`sFPx~SNn#N8YM9&(OuA86%$5{ltYAZLS+ zd`wWDv4e1q36!bU)3Ouka_=){Z+xLX3nK)d(8WR~32)4fA4gQ1?OtXwEEKKzZfj}v zga6lg&FE7B8(Z!$))g}hw&NT<8t;eo9wB9j-$eE#`#=D~7@LN6*fQ64P{!h3x4;X0 zM?h9DD8nO5e(42s6srLx(I*K|5i#!E$}|6R!t3dG;V2dhNu=w-c8w&LLRc#f(|BG* z{Z-wC&_M^nHFin4n|0D#B7gPB#`v|KF5D~*{~7T$;&o0oV^qAbDbYfm@U2A z4crKFkdE!4+VS;aMydb4%-}3v+f#y}F2C)}3uUh5B$9YUs3+m`7ftI~5 z7?Vdt`J8h^QW#XiEqp)5n`8SV^lJ$m9qidW-L%`nuCHrz8XkP5Z%my*w;0vCHu=1u z?>eLN%2?5eP8hzT5}ZCwVH3qpRf?6YmX=Mw?^z~SXzpm8WPQg^9C=3EWfl{7WMr*I z>-!;!#9VIw!XPl16HVT^84mcy-yW)INosJf*tEM^w)v9Gw@fgHzPyNHyEhHr!9Yb!HyyXn<3fTSYa9H=$@GDmI zWkOrTU<;XZqIm*V8rqLMC9+Smgwz*|RS|xL^OxSEmM6u`sX9>ucf@j@NPD;rArsZ} z9b+Fr0GA$|pzamLq7^Ik2jBn8kd%U|Q|j|Vgx20Uh9BaiH{+V0+fyN1A|}1ghezi& z_78swv{C5k|Mh;lZ6NuZ`02=Ds9(eA)9OUs}42O7Ea?F1_SK2zD{g@E^HH2Iln})z24)zKTVyHaFo=Y&j@{jz)o# zmr7Nfkv72+)_R|9Mr%ZHLwe>`H~;w@eCy`Ix8kXw#d5_0qWiBKVR5bf`@j~!`W{BFx6*o0s;SLk6Y&B`Jy)j{db!HkZNI^xjq|GW7p?|#I_ufrv_;kF$Nni{tuU6twiz|jei7hFN02I&Al6Og zgx2SzTRqo#Lf708|M2OsRPN@FSJlQ--NutmulM-kBbelyBQ98aRlB#utoLB~G^v z6!#ZmrrZXF97lw-rdkKrl9HcK3-um-j`_C}al@ot6t7xxIGW4e`KUG!5y_~pMWb*` z!*TmAeJ9QDDNsRCHjd(HpypKcM)jRPj&sYeC1R|&948TjI;0QA>&-9E3^U`^y-4&Q zF1n-P3U3Ara;j5EzyoVB|IxGJZktj@zL_y=`}3xstS1`d9nd!FWE!N_wXx&qX9@Yd zpILF`Y5ipV_JvZx=AAelu&&52iSoLFLEt!gfUQ8GceeCB^YB*BP z)F-@e{G7to)$95Z#JHMP7=e7FOSZxB?fCfkcWZI1Ja3s= zh^9M@d!h8dR}ET3J&R-Ju-7!IJ_K3QJch5CuIZJEs>lFFyR+=^w12WEU)Q-ROC!ju zdkxr`F#TFO@mLQZa+}R{^w&8p3E^tf7fhS&+cQs@xd(r%(z~sUREka5kq&kF@LnRL zvvuRy)|+;Rif{86_jX_Z#-hUHW#qj2dZgA9h-;7(;YneduUo+w&%z-iiaarqv)SJ$ zqH>=R*mlZnZ}?H}WWu0LF7L5BetF^l=(hUxEI`n zAVGgiXLF6b;}$m_#WbIMiwbA-cW=V^Y#vulK}&Cyq!?BJl*7rg2RqO`aVC~YHhvf? zrRDgXS;aYb{pY8nX`6lzTCOG2YBSt(PWZ7vIDj~?CfYsNd)qpp=|>W|kI$K&-{P)g zQ?WYs3+GXYS?F@{6Zwtp*J@;aIjn+IH$amUsgiY zD4z|k-aTIX3B5Cb1cT%^+g57ZDh90LRc`foWb(L`M01YfcUk7XS)DJot=fihTW|6@ z?X0T~Wov1w+-8s3Yt>j9yRvToTZ!`A9{H2 z=VfiPk0*E39wwz8D0tGP=EZna9(^;(SFppeCxjHL=@!R`b3`PuN|Md4fC%~ja_s*J fqv?etTST?DWq@|jg;n4nnKp>%wii`MwZ6DW|wrN znS&Z4bZlcC`z{I%&db~TPrT3f=XyTf&vjq6w$#7m(G3&>KUn}b?$Ykw-tx*Soz-`E zcxayN6Wy5mu+C&)e*Dy9L)k!E&e0F{#!|t@ru3dG-}ZmB^fJQ!GF1${etdj9H@^_e zFm+7vo!jYO-`Eg)V$n7CYHEJ=Vyt`11fgQ+v0o)+b$7!5jmgVC=hXM*@{i5FecLV^ z^cJi2~>VVh%obab@y{YURo zRZvON#AZj_YpQ*YscM|j4Vv-PH2YzGjAK^dzyJRGVJ3ZPd1Yd9S{9F~8w=h4`SV_t ziKxHfrAU{+zcG9J`<0z7w@XY?n+u~mQ3yPGbL*Q~rZH=La)v!CjmKGgDPJLZoS(6Ge(k2@XFHI{% z7%eU>6S`2GgM+QT1vYzbWo0$H_oj9nN(^tR8D}CFU?YJ??fl%GUsyDz81L+SM^Q|+ zcXq}%{+^y;8r!>-Z$;KuWW7z=I=H?c@1}o=xd4fG-PC+%Z z;%NOI21L)Eg$ngZ)T=KZp6wQ&7c0vK2{xIi=vH40;qKKOdaOz5^t9H(R6if{p92X_`gT~00II47NGXO<^M4OKu>^1K545u8Y2cOs&boISI|L# zDcIy%)faXpNN9UcGV6;zr6A47($)>d-RVk>mAAVaN&(H)hTFY<9 zYzYTd+_l}FG#i7&qs;}jmOaZON#`0)o#D@h`<;}c3XMot=(h#Atbs(TmRY_d%um3Q z4UBzJ`;JzOk2rCC_>4yv66p_-{ylal7a&m|xGS0Oj=(_&4)mFbWB6>xSu?CC{rOm| z(i~Ayd}R=RqqBtuFzn~CTIC0@Pq7LOsIw%w_PCiOBN2{+v`UQIxr%_C2)He#`gwt@ePI8B0QO zTf}Mi&T5^Jv7pM5QJb8NS|e91ntC+C`n`oV;xpLB{lL7Y2$~WE7J|Iu)2xI22%YEA z&#hC>Hfo^6ecE+Te3B9VJqRPd=`|_dA+K^9-rG zx~c!HFYVi>-^*;8%q=e`_;;ikJi734M|W4V1~bF)H+Rt9+-4vHLv`x@&~DP{@num| zL?6t&+{Y*tdw1N@X(BTqYxyS|7c51w18bw`O#J$kOq`p>Wz9)f%&h>fTV`|Ney<&- z>4jJ)HZ6bPf^LdmF=s{`A+#}lUnhK-k8`Y9xFnV2d&x4@^FLxsfx3StaVxkpel`Ri zvn{&rI(D|sP(1D%l)JkOV0N@;NZ*zdJc|!A^37PhPR&P2=~?ooOKYvss1VH)D7B@ZMI{yX}mt5_kGkzP?xf4?Wm1TIzc5sHt+Nu#NjR zco_M${kXtaX>VOl7yI)=PoEvq_a7Q@Lm>m~y&XOHgH~g1RoD$Gi5?pRAo(<|sM+;+ zz0PQE|AFX|Bx0=c?gZ~i30?u(M2i<^f`uNJLr$^Td_$)kR>BM4i8ir$ZCnb)TZpwX z;X+{+>2elSSfSuW5U&fnP|}acrAcB6npQ9njc-31cn_XZAETe{D94a&=@JH3MKZjs zuJgI52oqM6Bgs;J(u9<&*25+V7 zsL;rUu?@)<)DF z`GV{ag2JyUDq{KPip{TORM*JN{t@=u@6<#A)eeB3<+Pd)lmLlxw-g_W&XqG1%pr{8U0UNf7c(-?6 zf${?(;P%L84IzA>dMo|4+cE$+M~%+q_uc|8d^8mYtG}#9_Yl3dM2}^QRrldKb>0B3 zS%vbgqnhZ@C*SWB^XO##=&OQBVl0nlxB0^7*=T{IVckyM%Dc^Ln#MG@+yx-(uzD-N zf)W!y^vqn!zEH<<>Ak<~0{HAojlGQKM7|o0Vel-H$EF&#j3IHGa-xJCvMJm+pvyqk ziz z;1EsyzY&PfJt}kgf{*z;34BiswnOK_XZAPqPAe^=mID1*fr2Ubq3+9aC=7P&D?^9CiVTz&w(fxzSVJ>M5Oe&MX zSXbggP(b25?}H&>`4Gr*nz)@FU!dP=Y)QXZsnuB2{cIG$8;S!CTAk?2e8^yT!cj;9UGKH39e8fll{4)=y7xZNYLP(> zof19<#DX?OU>2Lqn zxEnHc;rn+MI;Y&g%IsGoQyKxEioGIEgTP6=H?8Q-hn*4LzeT9u2j`rN6t4$L&fGNS z{bN{rGz>@m@jkcNhRyod|RrkgAV&!vO$I1PTBs8e9PY6kr5DD-l5o zh-(Kx4FF<0AZ|?<)E=l2e)Wl9c>+J0l!k+GX#&3bFm61N4^4V8 zMoiHUp;868e%T`Omp%fBI-)iJ#45oA06>l+7|kKS)rUoJ$OIRl4GQ=`0Uk}596f;> zO9X3y5%h#+{Y1aFWIPAZpeKl6NmXOyT8V_(EOM0+$cG7tAVFYxP~cc1fFz;lptQH- zSPt;sio}WpM#o6LxWue-!n+kP0!h}!l14en(sWQ>Ik{5_hN6JxnIHr^epWwuk(2Zs zn$pfBvnYwLm>@z>g0?11gARfoq(V~3;DQtu1*Cz3i6F@k`IJzqV1Yht$R(voAJ%g6 zmLRSS6O2rK$(zil4ATith_%XK4W#o>GI)@Q;8_aKHi?BzW6@FqtkS?*>2GiV3Yqvx zDP7}_^k8Tviw+8ONyi{E(s?sda4)2@1;4DsKb0UqRVI&c$jwTbhqxEc%4FjMkaiu} zjg$#(jlaH{8DpJ}YYp-yQSoEx0(6k->I(q*B3&sF&mx=;PPF7B%XFt?w`L^c*6HBwH5iQgQ2gGBg zG$t-FZwyEv0&)W+A!S%24!{%BpcIe@7Lc<~CU5`*mZFUWA(96&yCo=u?9`qELZL)% z87EK>NhZ0FcdXO7v6)#bWWXNq(Fgv<5lVuR5J(cYeZt-f_%jo5LF5Biiky7{^c`)l zoXDjGuA$};l?uRGuW&(d@plD!48UHQu(?`rA(c?DLUyw*)YSs4SwK#Cp{8Wf1%slC au0^^bMfxv`4BizPjTf016oEj1;eP@9el@26 literal 11133 zcmV-@D}vOCP)7K)Tu;@BaWWE|CzBCvI1jT@WbBojr`v;?Pao5{FCuu0oAbw*G|iIks? zK+ADtPgH`D$5rem#5OAB)}jf@vL(@^iIpglB1IA4F1g(0V$plRa~B79@B0HDu=sgr z<_&i7@Xo#O-t(QGd(XWWz$1@5^2j5PJo3mRk390oBab|4SqgYf&{$gZTMupz+`m30 zuFULfX9{in9?yw)2#a?Z?Y8p$o)|Zr;^K;kE80eY*r5DBB0ggDE*)RK2a<&W30|o- z0LO^9E|Wmc(T!(cJxhWZ_u_QWpOnf|LLvsd680rWME=A==sLU`48FveT33SB5dSr-4 zl<|vbVu!r^E&E+wzH6Q3M_C(&=({8-CzVo)#lrvN2EX+{(gGAD;Tk24IZA>ZWFSb> zXG{ZM~J%_Dicl zpGo>%q>l0tY;oy|(Yx;?E0tgXl!WiTo9cttZfeJv2a?u}S5zU8LK33;hooDgxHwUA zlL}1u(;ELeLzZX*`#*x3QzJl5sSH&09jFc&Bkhl_4{7cQv#9lyuZvZZipAya0h%@s zc_3+TQeCbn7XI-ynY+LJiA70@C7HCFV#G z&wUcmx|pPf^06!&#R_Q@iEFd-o+W8K<)AW$!CeKNDH)+t=GsYDDNb%p(z7HU zbvr<0vZM^!Gf>F|3){)A?e+%TfJ1>Uq&~P^uU%}0x@+E>)o-7=ps5ArW?!rEZAf=%)7J#|3-o&4NXXSFcGTL zzQVYV(|M22|$eQ zrwmqtA!6m2`4}^CNrm?qjfS8g^GUBgynM0-QOQ@PW^3vz$GoFVW5#H*DMNx5)K~&J z0Vc=$Gc>U^0+rP79Mz{lWlC!iqW4Rw@6CL7qq^^+?^DzUVczBn1%b^eusY;HnP4OV zj^35VdPWF6y!=H&HX*27ufS^Cv~I{z0ArOy9}OY0LMh z*OH{5vM43PG)4$26Hq~FCQi(K~8Y-b*vP5-B91zCm(iA=c&F|8wiJ0?d< zptAZc1C>0bxs_~eWg74$o^W#&-VOtcnP37KQrclmmPx#&a)`49Qb3x@XP~X*GYQ5c ztm)t!Qx;$&rYTzx>?69=H65eUa#CN7Dt)k5?OzgF)XqD}Iz&N}smqoFr}*FWj(h35 z2vp~ih1vbR#5ZXbPeNtc^M2~XFePJhiz1a#kWy7_y+>Ujp+zwVY1fLlMtF`Zo$DkJ zl)kzINr*H*A7@ur<;nl!q)9^T`>dj6oM_Z26Y^04g}Oc=hb*5Hu_9e5&8S^u17rd8Ftb6S!bAtU`>2aOT5Vd|yp83pHC z0-5p8*V9-egdyo7N{#Bm$dAr7%PrtYmrglkl=v2u{&D?1dNgL72baNSv<8+ZIy%pM zWgdu1jUmBXkn10$&yS{>t3 z&#~Y+$;^J*g*LUKG|O`kluC`{lcPfHJ3dS* z`N`)KnnspBc~+z0ldPlT8cmdD0ec4Y>m#I<;{yiSdVOR9ogD3o8^kcOFZY>@n5peA z-PVjI2GQ|O(?Y5^^-Y-7DM4*4EqjvE-=#8+TYwLrP18U|in-^zl{zOCUQXV_IY>w= zM4*z!%=dB1Y22@rff-9N4GiqL9B*XhS-D>m@L^JFtPpd>a!jbB%z9**Z;#LI70+ea zuxw5Pl-<-3VOA$O+<1sOUB*6H>fD@kdFXzO34hglv$|`CfHm!uGjVYf9jv@d@x5NXZ+LZ zJ#w{#5M8}F9m`nFD%K`scPBuPEZcay906?Ccj)#k;FvOmoueUM45TnV-KBMzX)aOm(IF?@*B3^sxdmNq(TOD~|!q@hBC|=;+7$M(40#~Tv*`dlO+H> ziW8Y!dsE_OTvK0}r5gjyDP8Q~pz>Z`JSByZJm%r4CbY#qt~{Co5^7w&faWRs{!ysR znpWjfK_%^7&cr5IgQMn1Dhpx&D!UQ}`F)+Kru%Xs)00q{b(Wemt}Hy-$L=NAvxn(9 zdBRkNEgYIVfeQ123{vck+Tcmja3NZZw8Lhb%C<{E<$RK)GBdBEkZSP^_QXv?WoN}h zHUv((Q&<d2JQv2I5FWm8$iSXn8`0C<$@AWy!k*~;ir z<)4E}>T!Yulpkv*zmG7pD>G#iP)RRIL-lgjG~0wA#N3i3@l3Jx0o<%7h+mdHFLx`< z(fz758noyp1eG+5412{0t5eyfV4#)2PJt$U!J-XPtgM8AP$xBI1{r9Rnzk~c6an&} z?ze13WEv{@Ov5&0dyGTDb&a6j_cuVseWWMYu7d#&1#mlnzjMUWX>7nQtfALoRMX6AD!BK zRMS>EEiQA%5>$sWPvu~rENSF1%1GvA8WGRSl1ZFufSq8XGY&TTSNlYt!8C2RJYQxnEL1lqk95iP( z((2V6(v7Qgd90oOa!S&w=iJz$NCk;e=j3&PAt;*@)JdF|t{zUx;$}VpwJn-*tqu6b z3?y7BaFNJb#G$e(ZbxJwO^i$6*G!SK)>mBErTVl^%tFoxP$5yb$g9_ znuhguDTN-F!LbrBg`oBYL=i;v4cHRM$a%XX6kqq!~UW(7WX*qGpPuu&ocG4caO%u zi_z$g92v+{>=31ZQl9);UQ0pGglZ@|OZ;*qXj}l}bdT?ym2}{v#wdWBJ3CK33*Cg| z;;xux{NJz*Y?%Kzt)9$-W^1EbhMVaJeMz%A>s3PzYjrPncmZB;a!1Md4 zoT}Mk(zrX=Y_b|Bsl2Mnry;;J(;!)sdZnQH|Pkw+eR!fkCY%;YKM30^wF&tI6L@egPkJ*JepHLdpfnet^o;7M$yLKPCym&AYhAh zM@V#1d2^&Y>8eB(NtW!vVvgk^!8~u+9qvXtQR5|@gt`(8*n4np0xi&$zMapRH zI`NR3M9XIql!7nY0n12R@s@kpvj3}gLbU29gFem3_qN%78=$g#yF5{AFI(>;d1t8q zHxRD~R2IU?B?%)?$$-w8S$MUd=xbehhO$WiKMHJd9n`p_+Q^b5p>k*rzD&l!iLxQ6 zti|U1lEkl^M8`H#PSG_Dj%PZ>9R`cyBMphF5P=>A&?W^Cgh}_q@v2&Z9jR467dgH{YFSABlH^|TZJiC zYWk$BOZ_NME6XrmQM>(QQl4qdL-mPKnQ?G-;FL8;WYQi9kCPLvLR2yJbS0SsCNoQ8 z?3}$gTZ^JAFUmR%pt5Uufu2j*bdy3P#08uAJaJ%a)~Wo2L0M5?%T8&XhnmEgq0HPd zhrGdseoE0A_kxr5Bda4*{qrWmEpz=2uzt=#g`1Qj_a);NV0nO;)UqUj!;AL5=Ckqr|oH(pJh!mhJ>T8(~K-*s0S2N-|7SwrSKx z2S_t*r!B%Z%z3Ux-rzz%@v?2TAKURH3;KjfP})$let0MM@v%*x zqjHf)lz7T_0`(pk?80K!PilEqvPkVK2M=WZ>pEeqYPhhTlS(!G4!f}!zukzeV9CL# z;DYv(N6rIxkDLpwJWMkSmCfCfZMiDWBTJBEz}>?{v#@Z-95<6>JR|+yRD-wpbi1EC z^2j5PJo3mRk390oBXh_Nc=_0+f;Kk~V*?S%AZt zUT?vaM~xue5b(U+|8%=7N|y%oJ1p|_6P(ozDr+~4c0lCk_2qzuRSnJv%(4@nMp#)n zP5rCR4YYbU`aSXq(sSPV?w%#7q6`VC^y_i|+63Ipr8>+6Ngg#;zNg`nU~W%B3Lo)H z!Ob+4%Ut`@-#Pky1}cXF%~=cfeU7bPj}dSpP`#CBkS%t~&|)62dN*KeFTh)==z+xI zJ_>V+&ZF2!Lbr zl+l@Gbv@2p#~3Rs&eBB8-VIn;`#mx7Kw{+M50j8)<>C|)L^-2ePP((3Kg6;~lMG0s zjAsPc2~+Is3rTW||FCqCKy$#1LRq#bNxF7n8}9}LX3x#?$TW8=thi0Uz#)Y;PL?1; zEAh-I$b_GhJg~>=Fr2VvP$5&}dt1F5fS2-77k&B2_5ty+L|lu-)kmLZ@-{B6qPVWn z-;-b5Hd<_TkVt{ip1(oDjtgVT2Z`dR#TgRvfYR-3;r_5CQgeEDdO)!n0rDe7ISdcHzu22cTi_&q= z$BAE(@kQ?WjaTPJZ&p27l)y{3y72CRwbm*P8L9>gQIV6wAd#~!k$q0$q}!V z67)yd=oTpP%NTRH5>VL=hX>kusI0il!TfdEmhZ-`mhxQIgG9AEC9W;v&pXAn5*okk z0{i-QER$Thrjf6eJA#H~(+y5J_sF?hbsGU=AqicvTr=D-UyFg_AXFw1BT&7R*Q138 z$O-~TD=pSLD}ZvYn?NEL^9KnmX%8SRV?9Dp|6!<&v?`|>H5%sgM8G2pfb@!wO>lEK zx0Pu|TqgujCOwdN)J%Zj$ki5TpS=(eC}#vvF10mCFxgRjY$fyE?}=h-(qNyjXX~1t zHGUriTBS|_KTHn~z}Zc=Lhja8KC_|VoSQ)LH5ni{g!_;Oj@G6ni+nvFSrJ$f@cWu} zG{^NDr5nXkY4+-LY2Ij6Z@?E=6o5c~k8csy$>)QqpSlHJeeiDI2@{ql1yBlY1rpld zHRg%n9La2hkg5gY=A6ue3|Itw;M=mgXQdF#o<@V>^5pEb$s47a@u`ySVccE;mcc%M z??9ig_v2fA-?{gr{`VUlqcjsFF>q-ySDRBGS<|q^?+_?2i)*TxmAida&&vKqzD14T zJzXr#2k@`c`)#3v3-4{GjX+r3%us8=%sG7lgCw}|U8us4*7 zAX+1?7n)^N)(-gx8UYXl$A$6PiA&dJ-5z-gQS5PvX5rT3uBbG73&)m z09x&Vq&+A?LSIE+c<`4Yv|?@f`jzm{>7K)99%yvs)(r)Q+>SYZd~xRDxhu01#S+wf z%C3k976$-UiEFtK)*;_bh2b*;3%Xe1;<3tFnhbpxPa z40482?L#Ezm`+pEvIx(TG>5ht-3TrofY;CbxP0N?2GnoHqaMQ1ECCYN+$?mj#x55N zZU96BmJ7243?aDv!ZZYjo_JtHTx-SEs{sqfa_EBLNY_fr9`HcYqO`{7#s=YL{fCEt zy?o){Ce)C;snvu2rEblK2?uM)1 z0DvrZ!-`-Ga$#cjT9ey!Mp%?fWFdMKnGO+9PF;ECyF~_+nn3JXlIGC)Rs_j#zpw7} zARNWQAbo+_b%wc8Dh-lVse2Wp2a@&y$y;s*?1TOOxLVe5tiL-hph z0w7l=TfmCUzIG-f|L*&l+b}j-X`=jt;y2S%ubr9nK+-~l+W(UiYkqA-vH$LMHq@kb{c_&|NiM_B+w}9vHh;8<)2vu z{(&OQUjI@5<-d8SZ{qKua;$?&2 zzveaT7ba%MuTGb4v_KQ*1W2m(LleS(Re)dxm``sYP%ew#+Df5s<~#}d|3ph!5`p*$VNFm&ZiNn> z#MD`j?=AgcbjDZGX)OfJB?8SD{cW1WhjsLJ7t1{H@>s#9EuPOb0{QB(m4<}0t z4H6vf`|6EnUp=F{i7|%_YtkovQ$)*SRoFso1R<04I?DChG&MAG`}N`9k=6s!feyys$QZfUcR@b9b%_thjZVzowC%u@7e7Kk@#8 z#v?d_^_BpLX%++Kaly?r6;quft~cbYe9M5O6X~(XK8Kr!Cs-%OUU=bahniSEp7@nw ziYFn;H#~gk%SX0vszXWrs1bWxxlNQ6{4pCp{Xl?Z%mYc|gmZ+1Q?6G}6F>?JP?uq< z3qNED>vCKJ65LCxmh|`;0g&VE(mw(ycYwW3^?o3LVmR96O(xc7J+e?adLk+Wa_2$- z1PRN<@(Cn)s#lik=@w14SvQT_{GDkEy$6yStcSRcG4~3sN2rN*roU70Gs^yy#3jk)8bbwlh{j)W_D^|$}mn8uw+&~pnCdpNNw z;$tU^RistX#ww@BeFNWq&;Q89>%NC?%=&Jx_~NDU#XWFz%TVdBcZP~MXEWVqUG2p3 z;XuX(FDAJOkSCd-n^8glWj_IAI|*B8p<@p>VwL4vuKn&u9=co>h_9UrY(G)(B}(8k zjZyjorK7*FZuWEEc=YgzcIt0oA?~yJ(`zCwd9&+5A^`FnINL=s^~fu$^X*_gY=EU| z1gwAgjX(e1&t5v4oA4(buqmG#Ba}xw1@BGR|6=Q>AlP>^-!MNl0e|(@x1lgynS?!k z>m;ns_s0L>nHSssNID*?WIuW(t^3U<*WCl3ytNYJe^s={JL6RuFJWrS{T(POCVp0P;VhUxs^DZLa$Mo2QRdfduLQ-c<;9Qe(XI32l4||Me43z`q>%r`7(IP#k~y z`a$)loeC1ICFvG-D>_eO3T-I?@+Zgt2R#1w{|&zS=HIDW)A0FDYY!v|kbivdI6U^P zedYG}$Fr|%-7aCBw|AhN^mQdj$bX)ff-&4z*&pEHjoZqf|NfO{41Mtq^TR`CH$S#= z6Wk-N|NOn@;RhcW?lm3mM0wF|9MKJyMBAC){K@};*Dszd|Gi;o4gA?J{98Ek*=Ngc zST_j;C$y+#jUW`r@BZu;%IzT)h(QqF4%AyOgKhvxPWL6o9oxR~MA^;aU{QT?M%hkp zD72*iQJ9)2 z$0QiAmr)@8M}VMJF?hZmXuu67U6Yow^yyzb2(=C6riIqr*@5lxXf48yNsl{2#cj_& zoOz=S+^vxs48hqe&wTe>w*~H!Vl@QcS?JIcg9Y$0O(o?NAlq)4eSBnjsjt?vKAH%S z;Tk=qV%G)kOehLJ|Jw4@ih}I}olwh0IxJwXqDNj?o!s({y^|LLzS3C)$fs_dm07@R zTm1EE9iqP0wIF%yvCr*Vdc7yP?FY-?&eH>FBUfY1rCxa8jbL5~P@Zu?;riSW6R)y6GLx@ zm(M;P`{+z$=efbeN6sz*|K&xG9RKfY)TO}dTl5uc-W*%RBNJT*5)~jXyzsT%{Qk;9 zFKjr!IEO=;lqDOXSfnF?q5=fpmoFY0zPbq3ru820x0-D zZnu-S0hB(nD8o$x$ZDv6PGkm5j*|0x0O>rS)B_Mkm$(}xfP!bCWA^7sX;my@l+Cy? zcO%^|0g&6kow=I4+0OEQ4Kvv}}YG8{|FRa7e0w^mQ z01$Ms+&XCWoT>Zi0i<();ub&*gr^*DVB(+vN>N;R4>N(!3ZT4b0+jNpQUWNhfCYg{ zyT!YecJhJQj`D2{l7#?BD+8qg0Fl;YToL%q=;q*%s|1U<-Vi`Z_72SaD+8d&SOvi{ zBCgwN3GONWuzQ?>-B{#|)sI?wJ&9;Y+_omfIzA^lWUO9*2)<~lLzmuK9KZ5zU(^?X z)YD%&w7Uku945h($1g7y(JEycR7jzBKad=bxdtVGFrvIAM2`^AP1+vH%B860UP$1WToN z>HPQh0tpE)n(ioQ(w%1}{n=CBS{@#Mug@_+2y_V&vU$N9+{_G4pl~<=N>6_=vwGxe zc*Pyppl?VU|K*79fg0NcwQ>yfTLIew2{1ldZHnBo zx!@Op68y+yYTd`jVaY1(A-!mwaLFTXa(6+r%XE{$QLcliudU6$eJutM^;k1QD&+cd zzxTOsZ*;)h?q=EL4YKVDG->w~*xPcbEW{N2+7;ro9p2Y2E`s8eFS7qvzcXr+H){MO z*jsmz6hL{#LRibgsGqtoP<-Idp5JrO)-ll@hZr!>a;>0x^)*P;Y@LIivZyivjPeMBm>SC_@Gq@TLFdU8FCJJ=ZW{2+ihK(Ej|CA{%ZOUtpxYqeYW?{ z`g?u%IpO``c9?qn`_dWvG2l<1VC(`UE*&MfNX%;Hd~02D`Lib57f2rgw6xj3D6meg2F8y!R1+>I`8{Pdu{dH=P2cTW1Y(P__+PBZJYabI8n z9$X)T^+RD;EqGs_nGn%uw#@tDwUhHeAo%XKtBp4;`vly*`XN}gWHSu+uYtn#^YFuq zFT<;6v@(fq*Qj0I$a9;hH|Kp)w8g8U-c!X1+g4EUp0^=}Z0q&IH@&)d3t2dN?r*eh zojp~&^KXyLtX2hD2>IGie|*tPRl`}Lts|k|F1Isp>%+OH;mXwc>XEc-rI(T~PVa95 zKrT6b$ln408P;j~yM(Y|ry)R)u#ux%f4?k<8trLhDdq+LeS+V8Yd=%whlKo5Kz{YE zWVusSVKYgun0J%|))#r95F_Cy3N{Lgo#&N$SMwg4&l}&vfOpKqip=Bv(}Ir#h)VFrg+jsbrogA*W-eEiMG@c68w?rhTT@mV^V<5(`A)+?zjiQX!2!}L?v^$vMQ!u- zAI9O2UX4KdtuM`ekBzR=%65efHQ3?PPs3k)|1o&_|2+(ETzGk|16M8G?1cBcdVgPN z-O@D9eX@ z^U6fa%-b3*lmxg6K)>HN_$%9b?rSxG0JO&DbcVvR?Y3BzhLa}Tz!$guJz5jgW>PD2 zZH?}LMz9Vk8rksJ0qp#THvdl5chVZ#shg4Ini8&xj56KO#V$fBiSgbvL6A$4hU!WIaxbI-PO@Agy9avO3p- z#~^rFSdp9wZ>>9r{7}CV{CKucSN6T0e(wtQdjKika zN$Ak@<8^&z!i1&g48PWB=hD4 zFhEDmgF<}r!&l1Mbcg~;CAiLt&cD}$_hHqVpirSOpr%71k)v8DjLP^url&k*z;}a@ ztBCbP7o!|Y5$}uWlUFQ);oJ`6omJxs9R5ZCVjZzf40r?a9y8#LldlQ0ww3`mwvRG* zlo5P)n6&jVb#TCLTj$QtCcg5W8{c#ob6}c#!*|(irL>g80FKAX%bB-kS++H%j#z@v zNZ@Reos<{M6sRQ&0TU_rTkt*x&X2dVOnITUc6=h(_36^lKm7Xi;}+HeN2o9{a$L8| zVz+>Vr=7bdY&8PKb|PX8d0|PxcdyMhamw2;L!i#Kwp2!DUV&9xXHOMB{kKPE#tjAq zCKg&YTP+KCm^5?Th7iY`tkZCit(zomTyVg957j$pA!t<@uMS+%qz&E)BiGQRt&=uD zm?5{*Xb}DEJZ%oIJGTwQ{JLzOCiALyR#5+V+ zPS%;~U8sY1l+|1E&Jpia9lUv4N0<`I65r8QYio}@^2j5PJZdlc{{jpEuv<+2!j$e$33y{r>$M zcGGxbQpjuT*xK3(tjMsAxg+g${O{ktYwPRZ7Z!g0`qkORSAXKb>1?>mHrMd7>ihET z`}c+AWf8mV?dET{GD zpFe*#H-Aq}&+sP)M@Gj6hewpWZGsyt1_y^%R@Ww0y07H~KYM5Kpom$AB7MHNox}0D2 zdHwkLvu~a=w?5>MZpLfxsI00{cz8Usu4G_vcyVcYX=(XP@{`YfU)lXnTUy)d>bVPx zOYgajEfZNo!z0|rW_2>5v#Wb>Xyk5YP*d~AN={8|J&Q9G7E+SZ+{zmr8-LPBFs8cH zysH;ZO{2+{LyJu_v-86vqn*>mg7Jy7*=D&t*93xzD@l|Clz#%7@kPxX6|!Y@O){AfpCZQM;!;H=$Bb!4WZtiR z_x@Y|;GO_eo3Lx5l@-DGWEH2D+t^gxQQpwl+|=^%4ZEWJEobS6aC~C&bh`QO2X-wV z+xiEFiaYDhWt-b4;yb2_)X0QS1AQj+Ys`x5hOu;yoZyvT>(`6TdHjxFzgKzfokN1L zkugDb_tmUVS4-IyCJ`2xN0x^}@X3`0V@sW_BfaOd&B>*13k!=I8=KGHB)1D+y?9q_ zm1uS+gQoxF6rO3$F0ZVud*44Wh#^~#jZY|(@n5D#YijF_EA6o%=4YbsSu^pvR14Dx z{P_5!PJo#P+3NY5n96~WO9kd7Z^|pa1sPH;2~2!XZ(mfa#oYY&?d@&g|43sKgaE)A zaNvLTe@_6C+rW&J8j+pd5G1Lf>&j#2G=(Ae*k=&Sa$6#m58oc8!3B?^j0Rzo#aWlT{HU~@`4^t& zI{5A&Dw@l@9Ual?WN=lSmPZ#iJX}A>!uJ=}OL+ttH$7P+qN;-!2DN$JvGNjWM8zF4 zceia927r(?MgF}YCE2|++@)y|{eE`jYdIQ>7jy<5#!v#F%C??l-h)0nM85_>wMSMY z={LK7vdL=~ik$`d3zN)7;1U{xOrb*UZu;J&n-jEMW|)>|vU1eOBgpf4XgQU$F79Zp zH06nlzo%yNXuGd--6O>$^CEE!ho&^WqcJ=Ja9~R^m+q8F&ps+6Z>)xJBKHdEdxV&& znEO9m_J!;CSOaP}BE&k$dX@bGVaj|J8{!#vQ~TnL>C|akN_#w1F7Y)cM3Qb0dUL0_ z%uQ6U`C02cD5v9fR(~ws$du#|pH?jO^CC*BdJ(n3+{k;VEot0s4IA-2|=2OGP- zMy{4l-x%J}y5n@Pclorvt3h+l^nspF7I$3T&^)?n;w8#0t+^ZzNgo^3*31RHSK2=nmC)2*+^5m;`w&5ei42pcJAD5 zgMIs5+DbWMt%&qO(6QgaanUKawDyA|%B$M6|M-XZLQunSYO!XUWplRgjp2O7xp~y{ zCZ(RsiF|gQZkg)&q-!FCed}q1Kp{2p5N4axePLUZj#V?UfznYz5#^kCmvS4+$y6z4WXMYSek_ zJhe9zxSkM*xV)8Pt<06hrg+Ct`!x5+kS(&f*OX`u9-R*c13T2sBZYGn)AopfCZ&jD>u)HZow%!fH#h0Mi@3)Kf*P5&L+pkQ-76!zo9v z=!ZOMiZ6iAUrjpVvCr^To`RStF8LU*5q0hY)I5p?b_Yvn)@~rBV`84jmEn&bu7T}Q zdl2`62m@QCQqmKAGWZU#-6r1uxT0x@nErjH<>YPffJb~P5;fi#_=@S$*d%>SSsQEx z;AaxDGmjjgp&Z8PE^Z3ac09t-cg*;!jS87a9F=IN+xsYHO-kjuwzUh3<808JDsl_4 zurN6(&rHad+Eu6-BMSDm4b(A`Eh70!(e&L8r<+lUf4_!(46b{?BJI+as&eb~ykDUu z9$j=k=lAE(y`+G9u5>$&{a40Ux)xSn&y*tyE`mP-hpp+yzHyF+(9e`mx^CQcUp-41 z6-ZsnzD3Lmck(CvcnwFf{+>@fM~MTF=&oWC;$XZ4_(j^Z;MGoGrBjsxQDSYt&g!#~ zNio<`=&c1Df($-p{t%ZS>z$It$IEQ<6Tr*N5|0WgF!UiZWS{1+<#S};LFLDs$!Cz; zm!P09>0FI;xbyC%>yq`xdNAJ>!ar^Q(jI>TA!Zo8b8GOC5OBrLs`^{~I;je#wYS9a zi-D;k>H^c_QM0%%?nbi_Z(U^rPjI6oX5bP?t&}HWD84TFtFeEc)mHV z1uu1l65=eM3wmw<;@Z?U zp2&Whr`a9a3k~?I(zuh(B??JPctn}{!IH333t|!tNJnfLqqFmS`qpC!M`RN^;?&~p zZa-OfIzdEyE4VS#Ot8W=>AXI*Sp~KLyDCQShMgy`@c6_f7rqTF4 za`}1sknAVsYW->VAY^kB?3A)KW~)ndH9$k{F#V%}xPijq=E;eb6q>f;s3-K%(>v-uyKag@w$p!hbzQ|sW5Ur;JR!t zH|nh9pOTvzOBThC5#7~HQm8!#&4UW9APaWM;sd9BU{TxS-|w7$W~zmyotPD@FuyhE zDev}aIW3rzW^MJTLZTYtg~A9#{j43sdneKzlH32Z@5}gREQYquX889V$=XnUtG?Hj zS-bXVr$89Xwzw&&pCU=VLR}sAmh=kKa^*n9YUr!NKKG zSPElvd!>u&AGKHGr*T-|yl;S?j?wnSH^TrMAH*Ngu`!sRbI{+gEO7Hmz8u?5;yE8& zcBZbl`TzAqHF#2GaDEzGP>Od8#S0{;VLrOmPt{W>k4PZ48g-QWEO+K%0Erg<5oR%qI_Vae zATQ|=uQpJ+B;Yz0 zNx&k}OhCaqqGAK}o`QsNBM}g2fpXLb9!iS@U`R*|3E;Z`a4dp{L%^}o(5p~=AR3Jk zV^JasQleobu{In^RRGav0;*V~swnD^TU4J;B-A?^Iv(@gMVyaA5J-R#7I_YcoWh|9 z*#Ms?_FV_rghPHIGS);4&=FS70)QIGmNHW*2Rh1vh{ZCYWz7D5=zmzu^6DsIbyUsG zSS1=mh(oBUFu(?;{#+ci2YQIl?5D>mRW!uv&&3|T5U**BG~z=QZ$WVvP=AOC2Tnw- zv7^STA^OzlLzo1yamZ>l;~XZ@W)3NZ7sCKhEdd0*ANfWSS~Ht~CW#%%hLq?aD=A4B za`fuWXqX`W!T|CJo(U5`4w0E_0Q9U%+!1`DI!R0m8R!2B0%OMLlH*Ta0LERC50)h{ yRTM@yQsUd>XIucHZ>oVKtc#bLt&)~&oR)tf?WJ!TD>bdCChhe=TB0%%IR0N#fEBy| literal 9832 zcmZ9SWl$VIv#u8j!QF$iz@kBe+v4u-vbcu;i@UqKOK=Ym+}#NTcL);P_2fIJ?zwgE zkD2b8>YA$lG5yZd)e*{yQfSD;$N&HUO-5Q=^`9O6w~7%F{_TQQ$N~Qhk*kEZtD2*Q ztGkH{1R!eeXbPc_u{W`Vs6tH4q0XZa0RVs&Sw>t`-DBm{03}{e3o10%)!A-1So^!z z0?&?wpQj#-ExlH(sf!GQU4@Gv@1f0-L5bR=f=o&%OXp(3$5|31fJW2Ant%ksMiyrw zI)*K87RbiMW)cRIEY&yr4qu90ovpN=_}siKz3aU4@!cOA9?3FVPYZWZpZmPrXTQH~ zzVj#zaazw6%Oue%Wd0uqqBj28;;=O==5T#$Gizf*fqYF}AzE0zQSF04a;t8EhOMB1 z7WSYNN)GeSV4k;US{Lo%bZ7CQcF9;6oesPc?lBE1uV&4ch{zR)bzUyJv4u8rkhn)kS#QQ z5>O}N_Blizv zv=U}G*1UQbsyp`ZLVi0KuE93M>%9*S5Z)$LU1Jo%)bs~J?q7+4nQMi(o(YJwe^RKF zFQNg6mn5%$O#bk~Ow_?nIJbXZpqSl5Hu0cNW}8a6R1WFE77{JmPwk)4}d330|hz9{Rul4Zp3YccV=r7nB~cj?x?yj4&0+P(v=VMO`eq-5FLSc>D|O9CQOm;eLfmdoqs= z(hlJ!oA<;*kG^`KO+8BFZ1pF(KnRH*BX6fMi2}IgDKN;ZIiT*C zDPB?Fg=C|87vfF0aqEuZs%+I|^YsK`41YcG-jd`R0DH&G&I zVWi!GYa!k>ku?Wq6vrPi+s=mF9Vz_6XrL%>h4O4KUkYEYo+FQuDH+mCH>sn)p(eS=uM*Z- zghUl`^oR%S@9~1G#w68=RhEHQm(q*V4B{v_A>$Or-XkBY3jWBTCFH7=D#sJ*=6Dsm z_h2Fj=M;o~g9~X511b35y!A<)NYt8u5;<*S$LRg{)pXhcSL+gen9h#yXcM$yqgJyn zh5AL>j@yE&pdw~H&Nk2Z`K1Di zFOcL)Z=YV-J=>7D?xz;A&itMsh;gFZBbzX@kT-79B~-cewU|VYl|+v*N9~HB4Ksr$ zb$#^NSd|_dl8o5)3m~Fw!XE zIW4BKgM<6;Hj0S@@Q+y7$PjtlFaFMZ>epmL^@U+L3?zdOoHEyVd-N``2Bz?!wwg>1 zOuEIfDtfj^q&>GeT+(4``KgcE4$9f2*e+NRPT2iGO~vmK)P`!na(6VKc#X^pUPO!D zIjEFz#}hnTu5)&uE~FHQFRA{;1e-rHojq8V2s?rdOH;hbGvT=(=zz9+%PBJh-wl8o zqMNY;Q@NvFUyCQ`vCOV_5w7%M$JdmEtn^`8ITPfhk-4b{U?rt>=xdv(P$QDOii!5b@I@E}N-Za3Q+#T6+gC^c!Egr1U+%2J z5>|#xu`6(d9Yg%h{P+2GI7K)WY!y{2ai#oE=knzLuRfJ#$jl&x|6SoQK>sAY>0e4D zqNv-F|BYT-bpND0$%M#Pvp~U0KfOxxYeRL>`7yFIgF;0CGRLTxsH1Nc3`FmKQ-kXW zneXh6c;+OsEuH67l50BmR9JY!ns{b;!Q2S9$TROqb|9+|98Ok`o`jS3pp8c3X9ji5 zO{@euDYon^FzuzCWt*X|@OU*E%~&Q7=jVWT6zaG_a%6@A%pl)zu)u{O-zZ~XN1--d z>n5E-#|p(p2qb3LyzDR2QWA4+nShyi*VvPpRXUxXw|)A4+_$Km+J_&|Z$CWFshPL~ zwccps(!G~p+ZM9uuw;Ru&f|w- zB<@={BQMXod~%V<5Z7@SQ3?!Zx48Wr&pf7&3KvcNO?h%(k2Q5P0XZ?6wkMr>ei zi7uJs{UM%Ptm%tn$d- zNY&4TRAJDgA2|`yC*u$}?4+uJ0BexQuS6b|CiAf3xSz4w609tl9n@i4;}&)25Or>xO*N@aESD?G2-2)pWy>SVcf|KOo! zP-|F~ZqrEiX>^2>w?n&{dPC*li__aDut?BFkX7em12!F4r|A^Jl+068_m=PPo}WmB ze2@qpF`nFV|8D-8a?afUpaEvl7?%ko95auQNDdH9>xj!|T&K}x8=?A06+wWU46a-i z1C*;uuDCw<6S0;oN16i6SE|;~=|THo3!K1#$OBUh5odE5UibR7Y$UeJQy3IhU7|3~ zP{A96cDuz*txy$quUZ^xYQJuQwgt6TykVdloo-|ka1F>1Z}p0eMA5&P4){5XYY)Ma zjd6CD9XLyDjw*m)CB+R~J;@ve0okVT_6w6b;m_4GTx3k7(`XAM#0x}Ra)^kDMl1^n z+by-y|3s8tifskG$*!7`ypRsnVVRNVM^VcnlId zN(DS>3XSP&cQVt$phUSF*4Me)PcuR0h=i1J zjOfuTQCpS8y=jgF&V_o$MMwCd+FWr{KCIL0cWGbM#SWJw<*znAObyaO)~}G|!UQCS zLd25js*TEcNaVgF99=i&hG@t^H}7=qQu-pCDl0E?!z`|X+mEu9uq`<}-ooW@Azy}u zOy;i%e&{-KlQ;*j41zd}^Hil#jR9E?N!Rs%_l%YukRmd`u;HWm1Qc7T| zf;@XvBIR!7B`HN%u(DNlIPjP#@tB-;KPFL7AsAKMXP}F9NcX3CT18-ku|c8ufr^V? zws#pKG>=e)siwrBO4uL48ta?EP4Z;wX9~y|6$^0>q zXQG2;IGw?TQMO>wKy5PRT-@>?^6|aiYnjAGn#(1n$7OmH;w(_$Xb|9N&^=U|^vIme zL><01UhbCQ9IrtEcN?x-l>O0`bkUk|-2V5TsF_~@pJ~$qDkeYZ zyXn%TG!q}QXUSl=X??9xFrug?=6-&s=`Ch%P_!gk!VFM$NZj6p7LN8Z7j^l0nvM%Z zsMjH5_WPypxWE$U8C`PZC03ztp287yF3I;^6x=YfO|Z@v$Y7S9V7=s_v^MypUT&xTe8kjtjeO_#xKeE`CNI|mGfH_dG}+EL4=Xzi9- zv=(FPl7)oN$5F1Xhk zv~RI~Tk)U=lAra&rH@0k;m9AHfwN1dL*HI>bI%74Nsw*{p^pl8>4%?fhaNQ8<3* zQHh6N+;?{AT$0gIHuPzW&kb#r?~=Th zAUHlBMu?Cp7wxGyZMqEg9cD$s8wBH;!bk{bp(lDx4QL zp)i(}vjMI!t>M2zyN_Qd- zI{JeY@ek@aJd~2lB5GfzqvD4qiuOILHlL8n< zYQeE7KeeC+7_Ti=?qA&5+*T7y=xnnXobI-Cr9B?9u*cqicvHU3uE){B1I%eq`jbf6 z`j#f{hsDQ`KR@~zi7F#sUH)XA$t@P@2zQ~*&W&ZctB&&TVTeN4G8-LX*0PAI_$oD@kr=E&TUKFqw|tOYtL*()(Vkt$-8il zKNWiNQ+wxziNJu`m1BzFx1z?+pSt)-EDLUtph}_#8S60N=Dpja77U*>Xa(Gp?cWmj zywnoqG1IrqZ)<)78M_svh3WWxU80MIdvg?hLxvI8HdyLotSNqVz`zn^J*6RA{{0XZ z1mP0Kzbw*#!N2Huo=uwQPh~?(^n{CmL)QFmhoT=1noA+EL!`tPra%&=k`RlRGYB)b zPV{$406-EDWd5oSp?#>LkY3BDPEnjf(pJ38+br5qgRQITo00#J9Q~h&3VhK(A5;gA zgn4}|B@MNF63~L!2=q&^$#}UIOn&kTT&<|8FoleIzP`+@7U+k_a6WP1Xh2~zQUJlk}6FNUL(gcvQF z^;eQlrIo)jA!)2CMjFLzRMp4+3)_n~Fng5hR)7zj!lCGX&&!{bmy_`0`nU)e9w=UV zduOKO_1+=? zihG!RRZX#7-gB}&QiflZTgF4SW8ZfYY`7o!Za{+_z^2g72~n;JQFfmV>PSBe<$xB= zEx{8^CMuY?t9!c!Bj;pV!)$hTWVvmqu2>6B?f3b{LMJWh!|IPC8n^uleNp(Ko z>*{nQ4ktI{dCBxX-?LcTEjd zm$h*p<>ALW`TJ|MH)8d|xbAi>+t%`}lX2qCaqxD$$B0G1$+2{>ukY)+nJ;pUW4MQA z(h7#I#Z7-w>}uWdHtZe?)cjI5dD8LC)-+LpbGf#PYeFn_YdgNxo)>AMHq~Hn>@F?kMdfAkKj|_jpW98Ba7YoLcC&J?ve&+< z&Uc)lOulU-{bginiX$h@<`OdZ&ZAwNJ#~Jwm!w<%Gs9EqhQXiwRpP{JBf0A)DJWJz zc6BnUSNXT~nLROd+iI}_kdkj4bHWGgXfXy!hgtSW{T_}x6n#H}BkkY#af0Fck-&V# zp`7cSa(?hGBEe|Q>5P6`V?`|;lJ+;~7Py;Kb^Ai7=j)u!Oiouhc+F~7 zJlL=3%GD@HqD}YUGrwGjHz0{z_BfyNVfMPgMrKRXMyc*^ z8DjibB7q`0zoq-O3?-m%=Z?>~&o{@yll&h;ca7YHnKxIyQygWEQs}4{v$Zwj0v?}g z$m`e3jJT@4n{ypq>wVH86M?1Z7Wgq9KWd;=Ytk*ywaRoF*qiZ+R!XU~bCGc=;15w|x8Z(7q|udzbx%w6wWS^czGnQ2dcCkN3g$ z$MY@R(7TuAXYMCOq~8%r{YXob{vty z(~^)5v&nnmL7~S};k^Kf*iob$J6F*FI-mRbJjkZcV|Q7PDP^2z!J-S%1bn>tBp6v* z9V1WJIv7s^aR?)ZGhRMagO2>UXqw0b)O2y1C(Qe+#{_)jiC(~DwJ5K!c0W4G06a3L zfyg1r*pf1ek6wA0-KU%uF>XRgpe9EJq!tvFkHtA*ilj6Gi=1krR~=QjGd6H0AA+?- zjCs4eo~;|jZyyohM_DHs8>oXM6=9Luv5Ky`VJNmVgi+8zhbU|A^El<{UtoNVCs<_~LrUKL_jA-Fwt2^y6rPE7<+J_?O8Gz?fK0<)(Mj^%R#^jj$}1i9+4XFldjwgE)t-v+q0s}Qr&pbcgNwnw9b8Ff_BLJ=`H}%xvOkBN4YeR zPosjMO_?*vJ&5IXZ;N6A*iVw*h7V{s)h??q99ce_T{z>$=<5hib6DffdQ@_KSY?5# z9am|ngV&hLT6Vm{-VH{Oy|#szSO9{IHw_a%X{|ihu$fS$^hJ>do2uKN}peY1~IUh z@0YQ^mdK8u1f~L%E}wiw<;kusGN*4*n>)H~`@Blqymp9o12o{K6{4Z{9vJQ~(EH^@ z+l`k(N7swH#yH~ApD}3Xqn;RAb*)44Dm8Nb=y{A#=hN#=k1pf+u}EELmA=hST+`Pl zFYb%H=ga8_jIR4V$veTFxTVeZ#RpP5nd=7H81_#X8z>50GJvsfAKQyw5K|k^9I7#E z(C{H?S-vr^+i||mtLl~~S&N(eNZr-DxxM#K!$uR7C#O-hFHRd70cQ5IQ(vo>9&>a2 zmX4LOIr00R0iSBif04{aCI9qVlIFs>*HsQjW8$Xcn@aI6TDNrWtfFAR_UJ7hUnP?# z5J}V~hoi7K2~<$TcZmEt`K%;7{~DU`9ZL~|YrXSi6=iV6Q0_nMB88^$O@(O4&v?kc zn8crxN;w+2Ud+O5Dm$G(#nj25WDn9a<4$7*Giy_~3yA1c#W+_DLjzYf?l<*CN)Z*Dips7D3t! zwuHprgHDk8yOSKRa(;+)clLrV00L?LihCwuoNDf#VJH8Iyn~n`=3_FuAfm15h6<`6 z>UmE9tY7y;aT_nKh_zVUoEnWk6Nm%DuWB@$4iqXK-vMnTA3$B>W|6gMA$-^Vu##A$s^nwo2-NdCD70My* zd1wJuZD1BH;9%X^91?M%G5XHxJ^8iJ7mvcf<4!dtUtfkRg`KaAmiG;sQ>pVs6j_r_ zqUQy-*xo^9jmjxer_IRCHrT-LJ;n)OdA0-F(?agsW2FOlgxF?Y1jIm=v4zTw{^6iD zY87R4IuUCJawQgRLEQBAD_GmC>STA~M+bTpTH};{`A#d>rvVg$E;D{l61d|!o=%#E>QS>cIrooIP6AxTfn%FKG|k1J5RLx z()v*0!|V<^xttTs<}Q^8C?pEz15Bd%lq7GE77{KTGK1dAzxK`5nY-TN;b-|bp1b~8 z1qpE4gpptIZ3J!Yp<7r(=!^p+EZmd!foUgWGev$iYh@|6dsBKnHW``;$aL^I02=^{ z+wY>IlFgfkuw{8y3Qs4y^_Owz)5+cfVf}KWfcxhCSt^F!+T2TdyIz+ztOzP^XxHP% z7H5C|**1K=YKAt`1K)N)IgwIf!;PcC1I!P*DSJELL-xguwLwKRQe*zuf#u3W-;#!0 z-xP?Z&hC#=7Ppf`Ry}t99(<>bezPEfIz^%mqi(1CtzGA?Pk(iHOSIO8G?`nICi9x3 zZ<{`wFK;KEmMpc@AI36#!|tmQYVQa*BsO#ydj_Npe(hMJ-VOTENpbkfIc{&ALw7RreOL{Jx&d1k0wmo@Br{F7y zU)W`?yv!wPu0o)qR1k^5C7{F)MeECh6#$b0)5U5~3spj0TZuzSCH|$w*_WH;$-fr^ z@gXSC`+}Kmw`gq4V)iRZf|3X{fB?jX`4VUvRQMZe$lxw?z8um~Kt|iqk8fD)f3L?& z4uh$J5r4b0{8%2pbaLeT{+D@)U6UtSsII9zpUvED72I!yJMy&BmtRoX$)JbGhag=Y ztT$GSTQ#ZnS>m^_5P^Awk5MKc23Si6(msZOZ}(gvwcP#cAn0|&?Oxwm_Cvv^=P_qI z`+@~@f8Kh#?zUAanbF;NBGkX~$v^M>`^1<_&=O!n*?1 zJG4K&(ykH6pUC)2??LBb!C-r#47inEiBD%3&m7zqK%vubm0@yt z7VyBSv*=?`vqjtX2iO0Q#fMhwWNhzlww`bM=Yg;W<`Hevo*N#s*^6 zz-)d3%)BhERMeU&7s1$>HC=jpv8}sOi0rzQ( z*>W&SW>61hnB-t`>V;|6#M$Ate5kIiu7$F|mVM%9T*k)MgR<>- z3Kc`?m1^99VscvRTTE@APs!^3`{K{Ti)R6*qnlVAh~fwo7)fh(k&2ddO09c>6dhwf zOY-N>WM*6r=utVd(2M3oZ4pWSJvmLgi8WEtJeX#Sd@K9KdY2W`H4U($sss;=Cb>tN z_5tk1%x?-}Lh(xceYD(C?M{_NAC?h5llu;DD!HyR(hU?!CdzY5(vFD$0NQP&< z%-0uYb&u%i{}A}YlQLm|*ak+86)erD=xLVd-!2{NwmJ>&X!F(cQH_s8Wd7X?Dq8Tx z=vVuab@7)A1+O3*(^Q1_!}-$V<^Xm2-CxWNdfr<914jTwGM2e%Ul!%LFV4oyBXM(L zvvjMdkm{yN;&o>~c#(g92&TP3F)usZ_s}vemmZ6R_3b!03BB(pTto)@YBYb4W|5s7 z37;yiw*|6g(kUu5AOW@{8tfmCoE3SoF`9jDZR9$FGPdGuJ9zPDFA77L>uD5w?CXks zt;$KYUI8{d3H=vT(%O$1gE#VYZP5c>IA4VZs4XlnfS#;n9lL`7D&ky{FY$Pw-*>m2tQx#{`x2Lr2(>Oux6PW!td$zav)*$~W(@sDPwKlfyNV-(UZYjsavO6vb=6#)1C@ DryI`f From a31f763468de586d6b38fd1b83dced61d09ba71b Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Thu, 16 Jan 2014 18:43:33 +0000 Subject: [PATCH 097/111] ORCID stuff now seems to be working. --- .../gui/menu/CreateProfileMenu.java | 111 ++++++++---------- .../CustomTreeRenderer.java | 2 + .../isacreator/orcid/gui/OrcidLookupUI.java | 111 ++++-------------- .../orcid/impl/OrcidClientImpl.java | 36 +++--- .../xmlhandlers/OrcidSearchResultHandler.java | 35 +++--- .../orcidlookup-package.properties | 2 - 6 files changed, 108 insertions(+), 189 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java index 864ce00f..50610f12 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/CreateProfileMenu.java @@ -45,6 +45,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.isatools.isacreator.gui.HistoricalSelectionGUI; import org.isatools.isacreator.launch.ISAcreatorCLArgs; +import org.isatools.isacreator.managers.ApplicationManager; import org.isatools.isacreator.orcid.OrcidClient; import org.isatools.isacreator.orcid.gui.OrcidContactSelectedEvent; import org.isatools.isacreator.orcid.gui.OrcidContactSelectionCancelledEvent; @@ -74,19 +75,17 @@ public class CreateProfileMenu extends UserCreationMenu { @InjectedResource private ImageIcon createProfileButton, createProfileButtonOver, backButtonSml, backButtonSmlOver, searchOrcid; - private JButton createProfile, backButton; - private JTextField firstnameVal; private JTextField institutionVal; private JTextField surnameVal; private JTextField orcid; - private JLabel searchOrcidLabel; + private OrcidLookupUI orcidLookupUI; public CreateProfileMenu(ISAcreatorMenu menu) { super(menu); status = new JLabel(""); status.setForeground(UIHelper.RED_COLOR); - setPreferredSize(new Dimension(350, 400)); + setPreferredSize(new Dimension(390, 400)); setLayout(new BorderLayout()); setOpaque(false); } @@ -155,7 +154,7 @@ public void actionPerformed(ActionEvent actionEvent) { buttonContainer.add(back, BorderLayout.WEST); - createProfile = new FlatButton(ButtonType.GREEN, "Save"); + JButton createProfile = new FlatButton(ButtonType.GREEN, "Save"); createProfile.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { createProfile(); @@ -163,7 +162,7 @@ public void actionPerformed(ActionEvent actionEvent) { }); - backButton = new FlatButton(ButtonType.GREY, "Back", UIHelper.GREY_COLOR); + JButton backButton = new FlatButton(ButtonType.GREY, "Back", UIHelper.GREY_COLOR); backButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { menu.changeView(menu.getAuthenticationGUI()); @@ -179,7 +178,7 @@ public void actionPerformed(ActionEvent actionEvent) { JPanel statusContainer = new JPanel(new BorderLayout()); statusContainer.setOpaque(false); - statusContainer.setPreferredSize(new Dimension(300, 30)); + statusContainer.setPreferredSize(new Dimension(390, 30)); statusContainer.add(status, BorderLayout.CENTER); southPanel.add(UIHelper.wrapComponentInPanel(statusContainer)); @@ -192,7 +191,6 @@ public void actionPerformed(ActionEvent actionEvent) { } - private JPanel createInstitutionPanel(Action createProfileAction) { // institution JPanel institutionCont = createPanel(); @@ -229,76 +227,63 @@ private JPanel createForenamePanel(Action createProfileAction) { return firstNameCont; } - private JPanel createOrcidPanel(Action lookupOrcid){ - JPanel orcidCont = new JPanel(new GridLayout(2, 2)); + private JPanel createOrcidPanel(Action lookupOrcid) { + JPanel orcidCont = new JPanel(new GridLayout(1, 2)); orcidCont.setOpaque(false); + JLabel orcidLabel = createLabel("orcid"); + orcidCont.add(orcidLabel); orcid = createTextField(); - orcidCont.add(orcid); assignKeyActionToComponent(lookupOrcid, orcid); - final JLabel searchOrcidLabel = new JLabel( - "orcid", - searchOrcid, - JLabel.RIGHT); - - UIHelper.renderComponent(searchOrcidLabel, UIHelper.VER_12_PLAIN, UIHelper.DARK_GREEN_COLOR, false); + JLabel searchOrcidLabel = UIHelper.createLabel("Look up", UIHelper.VER_11_BOLD, UIHelper.BELIZE_HOLE, JLabel.RIGHT); searchOrcidLabel.addMouseListener(new MouseAdapter() { @Override - public void mouseClicked(MouseEvent mouseEvent) { - SwingUtilities.invokeLater(new Runnable() { - public void run() { - final OrcidLookupUI orcidLookupUI = new OrcidLookupUI(); - orcidLookupUI.createGUI(); - orcidLookupUI.installListeners(); - orcidLookupUI.setVisible(true); - - orcidLookupUI.addPropertyChangeListener("selectedOrcid", new OrcidContactSelectedEvent(orcidLookupUI, orcid, firstnameVal, surnameVal, emailVal)); - - orcidLookupUI.addPropertyChangeListener("noSelectedOrcid", new OrcidContactSelectionCancelledEvent(orcidLookupUI)); - - // set up location on screen - int proposedX = (int) orcid.getLocationOnScreen() - .getX(); - int proposedY = (int) orcid.getLocationOnScreen() - .getY(); + public void mouseEntered(MouseEvent mouseEvent) { + super.mouseEntered(mouseEvent); + ((JComponent) mouseEvent.getSource()).setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); - // get the desktop bounds e.g. 1440*990, 800x600, etc. - Rectangle desktopBounds = GraphicsEnvironment.getLocalGraphicsEnvironment() - .getMaximumWindowBounds(); + } - if ((proposedX + HistoricalSelectionGUI.WIDTH) > desktopBounds.width) + @Override + public void mouseExited(MouseEvent mouseEvent) { + super.mouseExited(mouseEvent); + ((JComponent) mouseEvent.getSource()).setCursor(Cursor.getDefaultCursor()); + } - { - int difference = (proposedX + - HistoricalSelectionGUI.WIDTH) - - desktopBounds.width; - proposedX = proposedX - difference; - } + @Override - if ((proposedY + HistoricalSelectionGUI.HEIGHT) > desktopBounds.height) - { - int difference = (proposedY + - HistoricalSelectionGUI.HEIGHT) - - desktopBounds.height; - proposedY = proposedY - difference; + public void mouseClicked(MouseEvent mouseEvent) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + if (orcidLookupUI == null) { + orcidLookupUI = new OrcidLookupUI(); + orcidLookupUI.createGUI(); + orcidLookupUI.installListeners(); } - orcidLookupUI.setLocation(proposedX, proposedY); + orcidLookupUI.setLocationRelativeTo(ApplicationManager.getCurrentApplicationInstance()); orcidLookupUI.setVisible(true); - + orcidLookupUI.addPropertyChangeListener("selectedOrcid", new OrcidContactSelectedEvent(orcidLookupUI, orcid, firstnameVal, surnameVal, emailVal)); + orcidLookupUI.addPropertyChangeListener("noSelectedOrcid", new OrcidContactSelectionCancelledEvent(orcidLookupUI)); }//run });//runnable - }; + } + }); - orcidCont.add(searchOrcidLabel); + JPanel orcidInfoContainer = new JPanel(); + orcidInfoContainer.setLayout(new BoxLayout(orcidInfoContainer, BoxLayout.LINE_AXIS)); + orcidInfoContainer.add(orcid); + orcidInfoContainer.add(searchOrcidLabel); + + orcidCont.add(orcidInfoContainer); return orcidCont; } @@ -306,7 +291,7 @@ private void lookupUserInfoFromOrcid() { OrcidClient client = new OrcidClientImpl(); OrcidAuthor author = client.getAuthorInfo(orcid.getText()); - if (author==null) + if (author == null) return; firstnameVal.setText(author.getGivenNames()); @@ -321,7 +306,7 @@ private void createProfile() { "password is required!"); return; } - if (!CreateProfile.matchingPasswords(passwordVal.getPassword(),confirmPasswordVal.getPassword())){ + if (!CreateProfile.matchingPasswords(passwordVal.getPassword(), confirmPasswordVal.getPassword())) { status.setText( "passwords do not match! the password and confirmation must match!"); return; @@ -335,15 +320,15 @@ private void createProfile() { if (!CreateProfile.emptyField(institutionVal.getText())) { if (!CreateProfile.emptyField(emailVal.getText())) { if (CreateProfile.validEmail(emailVal.getText())) { - if (CreateProfile.duplicateUser(usernameVal.getText())){ - status.setText( - "user name taken! this username is already in use"); - }else{ - CreateProfile.createProfile(usernameVal.getText(), passwordVal.getPassword(),firstnameVal.getText(),surnameVal.getText(),institutionVal.getText(),emailVal.getText()); + if (CreateProfile.duplicateUser(usernameVal.getText())) { + status.setText( + "user name taken! this username is already in use"); + } else { + CreateProfile.createProfile(usernameVal.getText(), passwordVal.getPassword(), firstnameVal.getText(), surnameVal.getText(), institutionVal.getText(), emailVal.getText()); - if (ISAcreatorCLArgs.configDir() == null){ + if (ISAcreatorCLArgs.configDir() == null) { menu.changeView(menu.getImportConfigurationGUI()); - }else { + } else { menu.changeView(menu.getMainMenuGUI()); } } diff --git a/src/main/java/org/isatools/isacreator/ontologyselectiontool/CustomTreeRenderer.java b/src/main/java/org/isatools/isacreator/ontologyselectiontool/CustomTreeRenderer.java index 42aaa130..68ac6fc9 100644 --- a/src/main/java/org/isatools/isacreator/ontologyselectiontool/CustomTreeRenderer.java +++ b/src/main/java/org/isatools/isacreator/ontologyselectiontool/CustomTreeRenderer.java @@ -66,6 +66,8 @@ public CustomTreeRenderer() { ResourceInjector.get("ontologyselectiontool-package.style").inject(this); contents = new JPanel(new BorderLayout()); + contents.setMinimumSize(new Dimension(260, 25)); + contents.setOpaque(false); icon = new JLabel(); diff --git a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java index e317788b..94e408d1 100644 --- a/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java +++ b/src/main/java/org/isatools/isacreator/orcid/gui/OrcidLookupUI.java @@ -3,12 +3,13 @@ import com.explodingpixels.macwidgets.IAppWidgetFactory; import org.isatools.isacreator.common.ClearFieldUtility; import org.isatools.isacreator.common.UIHelper; +import org.isatools.isacreator.common.button.ButtonType; +import org.isatools.isacreator.common.button.FlatButton; import org.isatools.isacreator.common.filterableTree.FilterableJTree; import org.isatools.isacreator.common.filterableTree.TreeFilterModel; import org.isatools.isacreator.effects.DraggablePaneMouseInputHandler; import org.isatools.isacreator.effects.InfiniteProgressPanel; import org.isatools.isacreator.ontologyselectiontool.CustomTreeRenderer; -import org.isatools.isacreator.ontologyselectiontool.FilterableOntologyTreeModel; import org.isatools.isacreator.orcid.OrcidClient; import org.isatools.isacreator.orcid.impl.OrcidClientImpl; import org.isatools.isacreator.orcid.model.OrcidAuthor; @@ -40,7 +41,6 @@ public class OrcidLookupUI extends JFrame implements WindowListener, MouseListen private static InfiniteProgressPanel progressIndicator; - private JLabel searchTypeLabel; private JTextField searchField; private FilterableJTree orcidSearchResultsTree = null; @@ -54,7 +54,7 @@ public class OrcidLookupUI extends JFrame implements WindowListener, MouseListen private OrcidAuthor currentOrcidContact; @InjectedResource - private ImageIcon orcidText, searchFieldLeft, search, searchOver, close, closeOver, accept, acceptOver, + private ImageIcon orcidText, searchFieldLeft, search, searchOver, resultOver, result,filterInfo, leftFieldIcon, rightFieldIcon; public OrcidLookupUI() { @@ -72,12 +72,10 @@ public void createGUI() { progressIndicator = new InfiniteProgressPanel( "searching orcid"); - add(createTopPanel(), BorderLayout.NORTH); + searchUIContainer = new JPanel(); - searchUIContainer.setPreferredSize(new Dimension(499, 270)); searchUIContainer.add(createSearchAndResultPanel()); - //searchUIContainer.add(createResultsPanel()); add(searchUIContainer, BorderLayout.CENTER); add(createSouthPanel(), BorderLayout.SOUTH); @@ -89,27 +87,24 @@ private Container createSearchAndResultPanel() { searchAndResultsContainer = Box.createVerticalBox(); searchAndResultsContainer.setBackground(UIHelper.BG_COLOR); + searchAndResultsContainer.add(Box.createVerticalStrut(10)); + searchAndResultsContainer.add(UIHelper.wrapComponentInPanel(new JLabel(orcidText))); Box textContainer = Box.createHorizontalBox(); - searchTypeLabel = new JLabel(orcidText); - - textContainer.add(searchTypeLabel); - - searchField = new JTextField(); - Action searchOrcidContacts = new AbstractAction() { public void actionPerformed(ActionEvent e) { performSearch(); } }; + searchField = new JTextField(); searchField.getInputMap().put(KeyStroke.getKeyStroke("ENTER"), "SEARCH_ORCID"); searchField.getActionMap().put("SEARCH_ORCID", searchOrcidContacts); UIHelper.renderComponent(searchField, UIHelper.VER_12_BOLD, UIHelper.LIGHT_GREEN_COLOR, UIHelper.BG_COLOR); - searchField.setPreferredSize(new Dimension(200, 30)); + searchField.setPreferredSize(new Dimension(300, 30)); searchField.setBorder(new EmptyBorder(2, 2, 2, 2)); - searchField.setText("enter id"); + searchField.setText("enter name"); textContainer.add(Box.createHorizontalStrut(5)); textContainer.add(new JLabel(searchFieldLeft)); @@ -134,7 +129,7 @@ public void mousePressed(MouseEvent mouseEvent) { textContainer.add(searchButton); - searchAndResultsContainer.add(Box.createVerticalStrut(100)); + searchAndResultsContainer.add(Box.createVerticalStrut(20)); searchAndResultsContainer.add(textContainer); searchAndResultsContainer.add(Box.createVerticalGlue()); @@ -160,7 +155,7 @@ public Icon getExpandedIcon() { JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); treeScroll.setBorder(new EtchedBorder()); treeScroll.getViewport().setBackground(UIHelper.BG_COLOR); - treeScroll.setPreferredSize(new Dimension(400, 170)); + treeScroll.setSize(new Dimension(500, 350)); IAppWidgetFactory.makeIAppScrollPane(treeScroll); orcidSearchResultsTree.addMouseListener(this); @@ -201,95 +196,28 @@ private void createSearchResultsTree(BasicTreeUI ui) { orcidSearchResultsTree.setCellRenderer(new CustomTreeRenderer()); orcidSearchResultsTree.expandRow(0); orcidSearchResultsTree.expandRow(1); // expand root and first result node on acquiring result! if there is no result, no exceptions will be thrown! + orcidSearchResultsTree.setShowsRootHandles(false); orcidSearchResultsTree.setUI(ui); } - private Container createTopPanel(){ - - Box topContainer = Box.createVerticalBox(); - - Box topPanel = Box.createHorizontalBox(); - - resultButton = new JLabel(); - resultButton.setHorizontalAlignment(SwingConstants.LEFT); - - resultButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { -// if (resultButton.getIcon() != resultInactive) { -// resultButton.setIcon(resultOver); -// } - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { -// if (resultButton.getIcon() != resultInactive) { -// //resultButton.setIcon(selectedSection == RESULT ? resultOver : result); -// } - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { -// if (resultButton.getIcon() != resultInactive) { - resetButtons(); - //selectedSection = RESULT; -// resultButton.setIcon(resultOver); - swapContainers(resultPane); -// } - } - }); - - topPanel.add(resultButton); - //topPanel.add(new JLabel(end)); - - topContainer.add(topPanel); - - return topContainer; - - } - - - private Container createSouthPanel() { JPanel southPanel = new JPanel(new BorderLayout()); southPanel.setBackground(UIHelper.BG_COLOR); - final JLabel closeButton = new JLabel(close); - closeButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - closeButton.setIcon(closeOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - closeButton.setIcon(close); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + FlatButton closeButton = new FlatButton(ButtonType.RED, "Close"); + closeButton .addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("noSelectedOrcidAuthor", "noneSelected", ""); setVisible(false); } }); - final JLabel searchButton = new JLabel(accept); - searchButton.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent mouseEvent) { - searchButton.setIcon(acceptOver); - } - - @Override - public void mouseExited(MouseEvent mouseEvent) { - searchButton.setIcon(accept); - } - - @Override - public void mousePressed(MouseEvent mouseEvent) { + FlatButton acceptButton = new FlatButton(ButtonType.GREEN, "Accept"); + acceptButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent actionEvent) { firePropertyChange("selectedOrcid", "OLD_VALUE", currentOrcidContact); @@ -297,8 +225,9 @@ public void mousePressed(MouseEvent mouseEvent) { } }); + southPanel.add(closeButton, BorderLayout.WEST); - southPanel.add(searchButton, BorderLayout.EAST); + southPanel.add(acceptButton, BorderLayout.EAST); return southPanel; } diff --git a/src/main/java/org/isatools/isacreator/orcid/impl/OrcidClientImpl.java b/src/main/java/org/isatools/isacreator/orcid/impl/OrcidClientImpl.java index 91543716..d83e4602 100644 --- a/src/main/java/org/isatools/isacreator/orcid/impl/OrcidClientImpl.java +++ b/src/main/java/org/isatools/isacreator/orcid/impl/OrcidClientImpl.java @@ -8,6 +8,7 @@ import org.orcid.ns.orcid.OrcidMessageDocument; import java.io.IOException; +import java.net.URLEncoder; /** * Created by the ISATeam. @@ -21,16 +22,16 @@ public class OrcidClientImpl implements OrcidClient { public static final String QUERY_URL = "http://pub.orcid.org/search/orcid-bio/"; - public static final String ACCEPT = "Accept-Encoding"; + public static final String ACCEPT = "Accept-Encoding"; public static final String ORCID_XML = "application/orcid+xml"; public static final String CONTENT_TYPE = "Content-Type"; private HttpClient client = null; private GetMethod getMethod = null; - private OrcidSearchResultHandler handler = null; + private OrcidSearchResultHandler handler = null; - public OrcidClientImpl(){ + public OrcidClientImpl() { client = new HttpClient(); getMethod = new GetMethod(QUERY_URL); @@ -40,11 +41,12 @@ public OrcidClientImpl(){ public OrcidAuthor getAuthorInfo(String orcidID) { - try{ - getMethod.setQueryString("q=orcid:" + orcidID ); + try { + + getMethod.setQueryString("q=" + (orcidID.contains("-") ? "orcid" : "text") + ":" + orcidID); System.out.println("query string=" + getMethod.getQueryString()); - System.out.println("URI="+ getMethod.getURI()); + System.out.println("URI=" + getMethod.getURI()); getMethod.addRequestHeader(CONTENT_TYPE, ORCID_XML); @@ -60,11 +62,11 @@ public OrcidAuthor getAuthorInfo(String orcidID) { getMethod.releaseConnection(); return processAuthorInfo(contents); - }else{ + } else { System.out.println("status code is -1"); } - }catch(IOException ex){ + } catch (IOException ex) { ex.printStackTrace(); }//catch(HttpException ex){ @@ -74,11 +76,11 @@ public OrcidAuthor getAuthorInfo(String orcidID) { public OrcidAuthor[] getOrcidProfiles(String searchString) { - try{ - getMethod.setQueryString("q=text:'" + searchString +"'"); + try { + getMethod.setQueryString("q=text:" + URLEncoder.encode(searchString, "UTF-8") + ""); System.out.println("query string=" + getMethod.getQueryString()); - System.out.println("URI="+ getMethod.getURI()); + System.out.println("URI=" + getMethod.getURI()); getMethod.addRequestHeader(CONTENT_TYPE, ORCID_XML); @@ -93,11 +95,11 @@ public OrcidAuthor[] getOrcidProfiles(String searchString) { getMethod.releaseConnection(); return processOrcidProfles(contents); - }else{ + } else { System.out.println("status code is -1"); } - }catch(IOException ex){ + } catch (IOException ex) { ex.printStackTrace(); }//catch(HttpException ex){ @@ -107,13 +109,13 @@ public OrcidAuthor[] getOrcidProfiles(String searchString) { } - private OrcidAuthor[] processOrcidProfles(String contents){ + private OrcidAuthor[] processOrcidProfles(String contents) { OrcidMessageDocument orcidMessageDocument = handler.getOrcidMessageDocument(contents); return handler.getOrcidAuthors(orcidMessageDocument); } - private OrcidAuthor processAuthorInfo(String contents){ - System.out.println("contents="+contents); + private OrcidAuthor processAuthorInfo(String contents) { + System.out.println("contents=" + contents); OrcidMessageDocument orcidMessageDocument = handler.getOrcidMessageDocument(contents); return handler.getSingleOrcidAuthor(orcidMessageDocument); } @@ -122,7 +124,7 @@ private OrcidAuthor processAuthorInfo(String contents){ public static void main(String[] args) { OrcidClientImpl client = new OrcidClientImpl(); //client.getAuthorInfo("0000-0003-3499-8262"); - // client.getOrcidProfiles("English"); + // client.getOrcidProfiles("English"); //client.getOrcidProfiles("gonzalez-beltran"); client.getOrcidProfiles("0000-0003-3499-8262"); } diff --git a/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java index 473795d7..c3b263ff 100644 --- a/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java @@ -33,20 +33,20 @@ public OrcidMessageDocument getOrcidMessageDocument(String xmlAsString) { return resultDocument; } - public OrcidAuthor[] getOrcidAuthors(OrcidMessageDocument messageDocument){ + public OrcidAuthor[] getOrcidAuthors(OrcidMessageDocument messageDocument) { OrcidMessageDocument.OrcidMessage orcidMessage = messageDocument.getOrcidMessage(); OrcidSearchResultsDocument.OrcidSearchResults searchResults = orcidMessage.getOrcidSearchResults(); - if (searchResults==null) + if (searchResults == null) return null; OrcidSearchResultDocument.OrcidSearchResult[] results = searchResults.getOrcidSearchResultArray(); OrcidAuthor[] authors = new OrcidAuthor[results.length]; - int i =0; - for(OrcidSearchResultDocument.OrcidSearchResult result: results){ + int i = 0; + for (OrcidSearchResultDocument.OrcidSearchResult result : results) { OrcidProfileDocument.OrcidProfile profile = result.getOrcidProfile(); authors[i] = getOrcidAuthor(profile); i++; @@ -54,19 +54,19 @@ public OrcidAuthor[] getOrcidAuthors(OrcidMessageDocument messageDocument){ return authors; } - public OrcidAuthor getSingleOrcidAuthor(OrcidMessageDocument messageDocument){ + public OrcidAuthor getSingleOrcidAuthor(OrcidMessageDocument messageDocument) { OrcidAuthor orcidAuthor = null; OrcidMessageDocument.OrcidMessage orcidMessage = messageDocument.getOrcidMessage(); OrcidSearchResultsDocument.OrcidSearchResults searchResults = orcidMessage.getOrcidSearchResults(); - if (searchResults==null) + if (searchResults == null) return null; OrcidSearchResultDocument.OrcidSearchResult[] results = searchResults.getOrcidSearchResultArray(); - if (results.length == 1){ + if (results.length == 1) { OrcidProfileDocument.OrcidProfile profile = results[0].getOrcidProfile(); orcidAuthor = getOrcidAuthor(profile); } @@ -76,7 +76,7 @@ public OrcidAuthor getSingleOrcidAuthor(OrcidMessageDocument messageDocument){ } - private OrcidAuthor getOrcidAuthor(OrcidProfileDocument.OrcidProfile profile){ + private OrcidAuthor getOrcidAuthor(OrcidProfileDocument.OrcidProfile profile) { OrcidAuthor orcidAuthor = new OrcidAuthor(); orcidAuthor.setOrcid(removeFragments(profile.getOrcid().toString())); @@ -85,27 +85,30 @@ private OrcidAuthor getOrcidAuthor(OrcidProfileDocument.OrcidProfile profile){ AffiliationsDocument.Affiliations affiliations = orcidBio.getAffiliations(); - GivenNamesDocument.GivenNames givenNames = personalDetails.getGivenNames(); orcidAuthor.setGivenNames(removeFragments(givenNames.xmlText())); orcidAuthor.setFamilyName(removeFragments(personalDetails.getFamilyName().xmlText())); - AffiliationDocument.Affiliation[] affiliationArray = affiliations.getAffiliationArray(); - if (affiliationArray.length>0) - orcidAuthor.setCurrentPrimaryInstitution(removeFragments(affiliationArray[0].getAffiliationName().xmlText())); + if (affiliations != null) { + AffiliationDocument.Affiliation[] affiliationArray = affiliations.getAffiliationArray(); + if (affiliationArray.length > 0) + orcidAuthor.setCurrentPrimaryInstitution(removeFragments(affiliationArray[0].getAffiliationName().xmlText())); + } + ContactDetailsDocument.ContactDetails contactDetails = orcidBio.getContactDetails(); - if (contactDetails!=null){ + if (contactDetails != null) { Email[] emails = contactDetails.getEmailArray(); - if (emails.length>0) + if (emails.length > 0) orcidAuthor.setEmail(emails[0].getStringValue()); } + return orcidAuthor; } - private String removeFragments(String text){ - return text.substring(14,text.length()-15); + private String removeFragments(String text) { + return text.substring(14, text.length() - 15); } } diff --git a/src/main/resources/dependency-injections/orcidlookup-package.properties b/src/main/resources/dependency-injections/orcidlookup-package.properties index 3451da7d..7079fcf8 100644 --- a/src/main/resources/dependency-injections/orcidlookup-package.properties +++ b/src/main/resources/dependency-injections/orcidlookup-package.properties @@ -9,8 +9,6 @@ OrcidLookupUI.resultInactive=/images/publicationlocator/header_result_inactive.p OrcidLookupUI.result=/images/publicationlocator/header_result.png OrcidLookupUI.resultOver=/images/publicationlocator/header_result_selected.png OrcidLookupUI.end=/images/publicationlocator/header_end.png -OrcidLookupUI.close=/images/publicationlocator/close.png -OrcidLookupUI.closeOver=/images/publicationlocator/close_over.png OrcidLookupUI.searchOver=/images/publicationlocator/search_over.png OrcidLookupUI.searchFieldLeft=/images/publicationlocator/search_field_left.png From 522360ac443d578ce43add6f721228786f0cbb0f Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Thu, 16 Jan 2014 18:45:50 +0000 Subject: [PATCH 098/111] Fix to handle case where no family name is provided. --- .../orcid/xmlhandlers/OrcidSearchResultHandler.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java index c3b263ff..2e9a568a 100644 --- a/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java +++ b/src/main/java/org/isatools/isacreator/orcid/xmlhandlers/OrcidSearchResultHandler.java @@ -88,7 +88,10 @@ private OrcidAuthor getOrcidAuthor(OrcidProfileDocument.OrcidProfile profile) { GivenNamesDocument.GivenNames givenNames = personalDetails.getGivenNames(); orcidAuthor.setGivenNames(removeFragments(givenNames.xmlText())); - orcidAuthor.setFamilyName(removeFragments(personalDetails.getFamilyName().xmlText())); + if (personalDetails.getFamilyName() != null) { + orcidAuthor.setFamilyName(removeFragments(personalDetails.getFamilyName().xmlText())); + } + if (affiliations != null) { AffiliationDocument.Affiliation[] affiliationArray = affiliations.getAffiliationArray(); From 4ef120c9fb0193fa0d84b135589db6caf94bf9a9 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 17 Jan 2014 06:55:17 +0000 Subject: [PATCH 099/111] Modified message about upgrade to URIs, saving BII-I-1 after getting URIs --- isatab files/BII-I-1/a_metabolome.txt | 222 ++++++------ isatab files/BII-I-1/a_microarray.txt | 28 +- isatab files/BII-I-1/a_transcriptome.txt | 96 ++--- isatab files/BII-I-1/i_Investigation.txt | 67 ++-- isatab files/BII-I-1/s_BII-S-1.txt | 328 +++++++++--------- isatab files/BII-I-1/s_BII-S-2.txt | 4 +- .../isacreator/gui/menu/ImportFilesMenu.java | 4 +- 7 files changed, 377 insertions(+), 372 deletions(-) diff --git a/isatab files/BII-I-1/a_metabolome.txt b/isatab files/BII-I-1/a_metabolome.txt index 57093eba..5bd6ff79 100644 --- a/isatab files/BII-I-1/a_metabolome.txt +++ b/isatab files/BII-I-1/a_metabolome.txt @@ -1,112 +1,112 @@ "Sample Name" "Material Type" "Term Source REF" "Term Accession Number" "Protocol REF" "Parameter Value[standard volume]" "Unit" "Term Source REF" "Term Accession Number" "Parameter Value[sample volume]" "Unit" "Term Source REF" "Term Accession Number" "Extract Name" "MS Assay Name" "Raw Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"S-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "/Users/eamonnmaguire/Downloads/sample-data" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "/Users/eamonnmaguire/Dropbox/ISAtab" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "/Users/eamonnmaguire/Dropbox/Presentation Images" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "/Users/eamonnmaguire/Dropbox/Presentations" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"P-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.1-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.2-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.07-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.1-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.2-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot2" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot3" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.1-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot2" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot3" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "101" "200" "microliter" "UO" "101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.1-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "101" "1000" "microliter" "UO" "101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" +"S-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "/Users/eamonnmaguire/Downloads/sample-data" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "/Users/eamonnmaguire/Dropbox/ISAtab" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "/Users/eamonnmaguire/Dropbox/Presentation Images" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "/Users/eamonnmaguire/Dropbox/Presentations" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "sulphur" "" "" "0.1" "l/hr" "" "" +"S-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "sulphur" "" "" "0.1" "l/hr" "" "" +"S-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"S-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"S-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"P-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.07-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.07-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.1-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" +"G-0.1-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" +"G-0.1-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" +"G-0.2-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" +"G-0.2-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" +"G-0.2-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" +"G-0.07-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.07-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.07-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.07-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" +"G-0.1-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" +"G-0.1-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" +"G-0.1-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" +"G-0.2-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" +"G-0.2-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" +"G-0.2-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" +"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot2" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot3" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.1-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" +"E-0.1-aliquot2" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" +"E-0.1-aliquot3" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" +"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" +"E-0.1-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" +"E-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" +"E-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" diff --git a/isatab files/BII-I-1/a_microarray.txt b/isatab files/BII-I-1/a_microarray.txt index c7561a10..c195397e 100644 --- a/isatab files/BII-I-1/a_microarray.txt +++ b/isatab files/BII-I-1/a_microarray.txt @@ -1,15 +1,15 @@ "Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Comment[ArrayExpress Accession]" "Comment[ArrayExpress Raw Data URL]" "Comment[ArrayExpress Processed Data URL]" "Array Design REF" "Scan Name" "Array Data File" "Data Transformation Name" "Derived Array Data File" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "0" "hour" "UO" "32" "" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "1" "hour" "UO" "32" "rapamycin" "CHEBI" "9168" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "2" "hour" "UO" "32" "rapamycin" "CHEBI" "9168" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "4" "hour" "UO" "32" "rapamycin" "CHEBI" "9168" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "2" "hour" "UO" "32" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "4" "hour" "UO" "32" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "1" "hour" "UO" "32" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "0" "hour" "UO" "32" "" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "1" "hour" "UO" "32" "rapamycin" "CHEBI" "9168" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "4" "hour" "UO" "32" "rapamycin" "CHEBI" "9168" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "2" "hour" "UO" "32" "rapamycin" "CHEBI" "9168" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "1" "hour" "UO" "32" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "2" "hour" "UO" "32" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "4" "hour" "UO" "32" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" +"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" +"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" +"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" +"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" +"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" +"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" diff --git a/isatab files/BII-I-1/a_transcriptome.txt b/isatab files/BII-I-1/a_transcriptome.txt index cb799147..8203a5b9 100644 --- a/isatab files/BII-I-1/a_transcriptome.txt +++ b/isatab files/BII-I-1/a_transcriptome.txt @@ -1,49 +1,49 @@ "Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Array Design REF" "Scan Name" "Array Data File" "Normalization Name" "Derived Array Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" +"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" +"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" +"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" +"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" +"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" +"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" +"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" +"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" +"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" +"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" +"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" +"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" +"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" +"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" diff --git a/isatab files/BII-I-1/i_Investigation.txt b/isatab files/BII-I-1/i_Investigation.txt index edf0f9b5..84b88050 100644 --- a/isatab files/BII-I-1/i_Investigation.txt +++ b/isatab files/BII-I-1/i_Investigation.txt @@ -1,15 +1,16 @@ ONTOLOGY SOURCE REFERENCE -Term Source Name "OBI" "BTO" "NEWT" "UO" "CHEBI" "PATO" "EFO" -Term Source File "" "ArrayExpress Experimental Factor Ontology" "" "" "" "" "" -Term Source Version "" "v 1.26" "v 1.26" "v 1.26" "v 1.26" "v 1.26" "v 1.26" -Term Source Description "Ontology for Biomedical Investigations" "BRENDA tissue / enzyme source" "NEWT UniProt Taxonomy Database" "Unit Ontology" "Chemical Entities of Biological Interest" "Phenotypic qualities (properties)" "ArrayExpress Experimental Factor Ontology" +Term Source Name "CHEBI" "EFO" "OBI" "PATO" "UO" +Term Source File "http://data.bioontology.org/ontologies/CHEBI" "http://data.bioontology.org/ontologies/EFO" "http://data.bioontology.org/ontologies/OBI" "http://data.bioontology.org/ontologies/PATO" "http://data.bioontology.org/ontologies/UO" +Term Source Version "78" "110" "21" "160" "42" +Term Source Description "Chemical Entities of Biological Interest Ontology" "Experimental Factor Ontology" "Ontology for Biomedical Investigations" "Phenotypic Quality Ontology" "Units of Measurement Ontology" INVESTIGATION Investigation Identifier "BII-I-1" Investigation Title "Growth control of the eukaryote cell: a systems biology study in yeast" Investigation Description "Background Cell growth underlies many key cellular and developmental processes, yet a limited number of studies have been carried out on cell-growth regulation. Comprehensive studies at the transcriptional, proteomic and metabolic levels under defined controlled conditions are currently lacking. Results Metabolic control analysis is being exploited in a systems biology study of the eukaryotic cell. Using chemostat culture, we have measured the impact of changes in flux (growth rate) on the transcriptome, proteome, endometabolome and exometabolome of the yeast Saccharomyces cerevisiae. Each functional genomic level shows clear growth-rate-associated trends and discriminates between carbon-sufficient and carbon-limited conditions. Genes consistently and significantly upregulated with increasing growth rate are frequently essential and encode evolutionarily conserved proteins of known function that participate in many protein-protein interactions. In contrast, more unknown, and fewer essential, genes are downregulated with increasing growth rate; their protein products rarely interact with one another. A large proportion of yeast genes under positive growth-rate control share orthologs with other eukaryotes, including humans. Significantly, transcription of genes encoding components of the TOR complex (a major controller of eukaryotic cell growth) is not subject to growth-rate regulation. Moreover, integrative studies reveal the extent and importance of post-transcriptional control, patterns of control of metabolic fluxes at the level of enzyme synthesis, and the relevance of specific enzymatic reactions in the control of metabolic fluxes during cell growth. Conclusion This work constitutes a first comprehensive systems biology study on growth-rate control in the eukaryotic cell. The results have direct implications for advanced studies on cell growth, in vivo regulation of metabolic fluxes for comprehensive metabolic engineering, and for the design of genome-scale systems biology models of the eukaryotic cell." Investigation Submission Date "2007-04-30" Investigation Public Release Date "2009-03-10" -Comment [Last Opened With Configuration] "isaconfig-default_v2011-02-18" +Comment [Created with configuration] "" +Comment [Last Opened With Configuration] "isaconfig-default_v2013-02-13" INVESTIGATION PUBLICATIONS Investigation PubMed ID "17439666" Investigation Publication DOI "doi:10.1186/jbiol54" @@ -30,17 +31,19 @@ Investigation Person Affiliation "Faculty of Life Sciences, Michael Smith Buildi Investigation Person Roles "corresponding author" "author" "author" Investigation Person Roles Term Accession Number "" "" "" Investigation Person Roles Term Source REF "" "" "" - +Comment[Investigation Person REF] "" "" "" STUDY Study Identifier "BII-S-1" Study Title "Study of the impact of changes in flux on the transcriptome, proteome, endometabolome and exometabolome of the yeast Saccharomyces cerevisiae under different nutrient limitations" +Study Description "We wished to study the impact of growth rate on the total complement of mRNA molecules, proteins, and metabolites in S. cerevisiae, independent of any nutritional or other physiological effects. To achieve this, we carried out our analyses on yeast grown in steady-state chemostat culture under four different nutrient limitations (glucose, ammonium, phosphate, and sulfate) at three different dilution (that is, growth) rates (D = u = 0.07, 0.1, and 0.2/hour, equivalent to population doubling times (Td) of 10 hours, 7 hours, and 3.5 hours, respectively; u = specific growth rate defined as grams of biomass generated per gram of biomass present per unit time)." +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" -Study Description "We wished to study the impact of growth rate on the total complement of mRNA molecules, proteins, and metabolites in S. cerevisiae, independent of any nutritional or other physiological effects. To achieve this, we carried out our analyses on yeast grown in steady-state chemostat culture under four different nutrient limitations (glucose, ammonium, phosphate, and sulfate) at three different dilution (that is, growth) rates (D = u = 0.07, 0.1, and 0.2/hour, equivalent to population doubling times (Td) of 10 hours, 7 hours, and 3.5 hours, respectively; u = specific growth rate defined as grams of biomass generated per gram of biomass present per unit time)." Study File Name "s_BII-S-1.txt" STUDY DESIGN DESCRIPTORS Study Design Type "intervention design" -Study Design Type Term Accession Number "0000115" +Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000115" Study Design Type Term Source REF "OBI" STUDY PUBLICATIONS Study PubMed ID "17439666" @@ -53,26 +56,26 @@ Study Publication Status Term Source REF "" STUDY FACTORS Study Factor Name "limiting nutrient" "rate" Study Factor Type "chemical compound" "rate" -Study Factor Type Term Accession Number "37577" "0000161" -Study Factor Type Term Source REF "CHEBI" "PATO" +Study Factor Type Term Accession Number "" "http://purl.obolibrary.org/obo/PATO_0000161" +Study Factor Type Term Source REF "" "PATO" STUDY ASSAYS -Study Assay Measurement Type "metabolite profiling" "protein expression profiling" "transcription profiling" +Study Assay File Name "a_proteome.txt" "a_metabolome.txt" "a_transcriptome.txt" +Study Assay Measurement Type "protein expression profiling" "metabolite profiling" "transcription profiling" +Study Assay Measurement Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000615" "http://purl.obolibrary.org/obo/OBI_0000366" "0000424" Study Assay Measurement Type Term Source REF "OBI" "OBI" "OBI" -Study Assay Measurement Type Term Accession Number "0000366" "" "0000424" Study Assay Technology Type "mass spectrometry" "mass spectrometry" "DNA microarray" +Study Assay Technology Type Term Accession Number "" "" "http://purl.obolibrary.org/obo/OBI_0400148" Study Assay Technology Type Term Source REF "OBI" "OBI" "OBI" -Study Assay Technology Type Term Accession Number "" "" "0400148" -Study Assay Technology Platform "LC-MS/MS" "iTRAQ" "Affymetrix" -Study Assay File Name "a_metabolome.txt" "a_proteome.txt" "a_transcriptome.txt" +Study Assay Technology Platform "iTRAQ" "LC-MS/MS" "Affymetrix" STUDY PROTOCOLS Study Protocol Name "growth protocol" "mRNA extraction" "protein extraction" "biotin labeling" "ITRAQ labeling" "EukGE-WS4" "metabolite extraction" Study Protocol Type "growth" "mRNA extraction" "protein extraction" "labeling" "labeling" "hybridization" "extraction" -Study Protocol Type Term Accession Number "growth" "mRNA extraction" "protein extraction" "labeling" "labeling" "hybridization" "extraction" -Study Protocol Type Term Source REF "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" -Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ¨ Sample Clean Up Module. The column was eluted in the first instance using 10 µl RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ¨ Expression Analysis technical manual. GeneChip ¨ control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ¨ manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" +Study Protocol Type Term Accession Number "" "" "" "" "" "" "http://purl.obolibrary.org/obo/OBI_0302884" +Study Protocol Type Term Source REF "" "" "" "" "" "" "OBI" +Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip � Sample Clean Up Module. The column was eluted in the first instance using 10 �l RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip � Expression Analysis technical manual. GeneChip � control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip � manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" Study Protocol URI "" "" "" "" "" "" "" Study Protocol Version "" "" "" "" "" "" "" -Study Protocol Parameters Name "" "" "" "" "" "" "sample volume;standard volume;" +Study Protocol Parameters Name "" "" "" "" "" "" "sample volume;standard volume" Study Protocol Parameters Name Term Accession Number "" "" "" "" "" "" ";" Study Protocol Parameters Name Term Source REF "" "" "" "" "" "" ";" Study Protocol Components Name "" "" "" "" "" "" "" @@ -91,17 +94,19 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" - +Comment[Study Person REF] "" "" "" STUDY Study Identifier "BII-S-2" Study Title "A time course analysis of transcription response in yeast treated with rapamycin, a specific inhibitor of the TORC1 complex: impact on yeast growth" +Study Description "Comprehensive high-throughput analyses at the levels of mRNAs, proteins, and metabolites, and studies on gene expression patterns are required for systems biology studies of cell growth [4,26-29]. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. The effect of rapamycin were studied as follows: a culture growing at mid-exponential phase was divided into two. Rapamycin (200 ng/ml) was added to one half, and the drug's solvent to the other, as the control. Samples were taken at 0, 1, 2 and 4 h after treatment. Gene expression at the mRNA level was investigated by transcriptome analysis using Affymetrix hybridization arrays." +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" -Study Description "Comprehensive high-throughput analyses at the levels of mRNAs, proteins, and metabolites, and studies on gene expression patterns are required for systems biology studies of cell growth [4,26-29]. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. The effect of rapamycin were studied as follows: a culture growing at mid-exponential phase was divided into two. Rapamycin (200 ng/ml) was added to one half, and the drug's solvent to the other, as the control. Samples were taken at 0, 1, 2 and 4 h after treatment. Gene expression at the mRNA level was investigated by transcriptome analysis using Affymetrix hybridization arrays." Study File Name "s_BII-S-2.txt" STUDY DESIGN DESCRIPTORS Study Design Type "time series design" -Study Design Type Term Accession Number "0500020" +Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0500020" Study Design Type Term Source REF "OBI" STUDY PUBLICATIONS Study PubMed ID "17439666" @@ -114,23 +119,23 @@ Study Publication Status Term Source REF "" STUDY FACTORS Study Factor Name "compound" "exposure time" "dose" Study Factor Type "compound" "time" "dose" -Study Factor Type Term Accession Number "0000368" "0000721" "0000428" -Study Factor Type Term Source REF "EFO" "EFO" "EFO" +Study Factor Type Term Accession Number "" "http://www.ebi.ac.uk/efo/EFO_0000721" "http://www.ebi.ac.uk/efo/EFO_0000428" +Study Factor Type Term Source REF "" "EFO" "EFO" STUDY ASSAYS +Study Assay File Name "a_microarray.txt" Study Assay Measurement Type "transcription profiling" -Study Assay Measurement Type Term Source REF "OBI" Study Assay Measurement Type Term Accession Number "0000424" +Study Assay Measurement Type Term Source REF "OBI" Study Assay Technology Type "DNA microarray" +Study Assay Technology Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0400148" Study Assay Technology Type Term Source REF "OBI" -Study Assay Technology Type Term Accession Number "0400148" Study Assay Technology Platform "Affymetrix" -Study Assay File Name "a_microarray.txt" STUDY PROTOCOLS Study Protocol Name "EukGE-WS4" "growth" "mRNA extraction" "biotin labeling" Study Protocol Type "hybridization" "growth" "mRNA extraction" "labeling" -Study Protocol Type Term Accession Number "hybridization" "" "" "" -Study Protocol Type Term Source REF "OBI" "" "" "" -Study Protocol Description "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ¨ Expression Analysis technical manual. GeneChip ¨ control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ¨ manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5mins, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 µl 1x hybridisation buffer and incubated at 45 C for 10 min. 200 µl of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "The culture was grown in YMB minimum media + 2% glucose + supplement to early exponential growth (OD ~0.32)" "1. Biomass samples (45ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5 min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5 min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ¨ Sample Clean Up Module. The column was eluted in the first instance using 10 µl RNase-free water, and for a second time using 11 µl RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." +Study Protocol Type Term Accession Number "" "" "" "" +Study Protocol Type Term Source REF "" "" "" "" +Study Protocol Description "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip � Expression Analysis technical manual. GeneChip � control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip � manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5mins, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 �l 1x hybridisation buffer and incubated at 45 C for 10 min. 200 �l of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "The culture was grown in YMB minimum media + 2% glucose + supplement to early exponential growth (OD ~0.32)" "1. Biomass samples (45ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5 min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5 min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip � Sample Clean Up Module. The column was eluted in the first instance using 10 �l RNase-free water, and for a second time using 11 �l RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." Study Protocol URI "" "" "" "" Study Protocol Version "" "" "" "" Study Protocol Parameters Name "" "" "" "" @@ -152,4 +157,4 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" - +Comment[Study Person REF] "" "" "" diff --git a/isatab files/BII-I-1/s_BII-S-1.txt b/isatab files/BII-I-1/s_BII-S-1.txt index a6267a3c..b5e66e1f 100644 --- a/isatab files/BII-I-1/s_BII-S-1.txt +++ b/isatab files/BII-I-1/s_BII-S-1.txt @@ -1,165 +1,165 @@ "Source Name" "Characteristics[organism]" "Term Source REF" "Term Accession Number" "Characteristics[strain]" "Term Source REF" "Term Accession Number" "Characteristics[genotype]" "Term Source REF" "Term Accession Number" "Protocol REF" "Sample Name" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot1" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot2" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot3" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot4" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot5" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot6" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot7" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot8" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot9" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot10" "carbon" "" "" "0.07" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot1" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot2" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot3" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot4" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot5" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot6" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot7" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot8" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot9" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot10" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot11" "carbon" "" "" "0.1" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot1" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot2" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot3" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot4" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot5" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot6" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot7" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot8" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot9" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot10" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot11" "carbon" "" "" "0.2" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot1" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot2" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot3" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot4" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot5" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot6" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot7" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot8" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot9" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot10" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot1" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot2" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot3" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot4" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot5" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot6" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot7" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot8" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot9" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot10" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot11" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot1" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot2" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot3" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot4" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot5" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot6" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot7" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot8" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot9" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot1" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot2" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot3" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot4" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot5" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot6" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot7" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot8" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot9" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot10" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot1" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot2" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot3" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot4" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot5" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot6" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot7" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot8" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot9" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot10" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot11" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot1" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot2" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot3" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot4" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot5" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot6" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot7" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot8" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot9" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot10" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot11" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot1" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot2" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot3" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot4" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot5" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot6" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot7" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot8" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot9" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot10" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot1" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot2" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot3" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot4" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot5" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot6" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot7" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot8" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot9" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot10" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot11" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot1" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot2" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot3" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot4" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot5" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot6" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot7" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot8" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot9" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot10" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot11" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot1" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot2" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot3" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot4" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot5" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot6" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot1" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot2" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot3" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot4" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot5" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot6" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot1" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot2" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot3" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot4" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot5" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot6" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot1" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot2" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot3" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot4" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot5" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot6" "glucose" "" "" "0.07" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot1" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot2" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot3" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot4" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot5" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot6" "glucose" "" "" "0.1" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot1" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot2" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot3" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot4" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot5" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot6" "glucose" "" "" "0.2" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot1" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot2" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot3" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot4" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot5" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot6" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot7" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot8" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot9" "carbon" "" "" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot10" "carbon" "" "" "0.07" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot1" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot2" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot3" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot4" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot5" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot6" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot7" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot8" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot9" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot10" "carbon" "" "" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot11" "carbon" "" "" "0.1" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot1" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot2" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot3" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot4" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot5" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot6" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot7" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot8" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot9" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot10" "carbon" "" "" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot11" "carbon" "" "" "0.2" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot1" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot2" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot3" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot4" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot5" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot6" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot7" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot8" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot9" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot10" "nitrogen" "" "" "0.07" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot1" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot2" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot3" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot4" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot5" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot6" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot7" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot8" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot9" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot10" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot11" "nitrogen" "" "" "0.1" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot1" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot2" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot3" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot4" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot5" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot6" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot7" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot8" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot9" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "nitrogen" "" "" "0.2" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot1" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot2" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot3" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot4" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot5" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot6" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot7" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot8" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot9" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot10" "phosphorus" "" "" "0.07" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot1" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot2" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot3" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot4" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot5" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot6" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot7" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot8" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot9" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot10" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot11" "phosphorus" "" "" "0.1" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot1" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot2" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot3" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot4" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot5" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot6" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot7" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot8" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot9" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot10" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot11" "phosphorus" "" "" "0.2" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot1" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot2" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot3" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot4" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot5" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot6" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot7" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot8" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot9" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot10" "sulfur" "" "" "0.07" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot1" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot2" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot3" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot4" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot5" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot6" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot7" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot8" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot9" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot10" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot11" "sulfur" "" "" "0.1" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot1" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot2" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot3" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot4" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot5" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot6" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot7" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot8" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot9" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot10" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot11" "sulfur" "" "" "0.2" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot1" "ethanol" "" "" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot2" "ethanol" "" "" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot3" "ethanol" "" "" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot4" "ethanol" "" "" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot5" "ethanol" "" "" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot6" "ethanol" "" "" "0.07" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot1" "ethanol" "" "" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot2" "ethanol" "" "" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot3" "ethanol" "" "" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot4" "ethanol" "" "" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot5" "ethanol" "" "" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot6" "ethanol" "" "" "0.1" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot1" "ethanol" "" "" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot2" "ethanol" "" "" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot3" "ethanol" "" "" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot4" "ethanol" "" "" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot5" "ethanol" "" "" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot6" "ethanol" "" "" "0.2" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot1" "glucose" "" "" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot2" "glucose" "" "" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot3" "glucose" "" "" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot4" "glucose" "" "" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot5" "glucose" "" "" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot6" "glucose" "" "" "0.07" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot1" "glucose" "" "" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot2" "glucose" "" "" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot3" "glucose" "" "" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot4" "glucose" "" "" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot5" "glucose" "" "" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot6" "glucose" "" "" "0.1" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot1" "glucose" "" "" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot2" "glucose" "" "" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot3" "glucose" "" "" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot4" "glucose" "" "" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot5" "glucose" "" "" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot6" "glucose" "" "" "0.2" "l/hour" "" "" diff --git a/isatab files/BII-I-1/s_BII-S-2.txt b/isatab files/BII-I-1/s_BII-S-2.txt index 29e708e8..6a5ac5d8 100644 --- a/isatab files/BII-I-1/s_BII-S-2.txt +++ b/isatab files/BII-I-1/s_BII-S-2.txt @@ -1,3 +1,3 @@ "Source Name" "Characteristics[organism]" "Term Source REF" "Term Accession Number" "Characteristics[strain]" "Term Source REF" "Term Accession Number" "Characteristics[genotype]" "Term Source REF" "Term Accession Number" "Characteristics[mating type]" "Term Source REF" "Term Accession Number" "Protocol REF" "Sample Name" -"Saccharomyces cerevisiae FY1679 " "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "mating_type_alpha" "" "" "growth" "NZ_0hrs_Grow_1" -"Saccharomyces cerevisiae FY1679 " "Saccharomyces cerevisiae (Baker's yeast)" "NEWT" "4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "mating_type_alpha" "" "" "growth" "NZ_0hrs_Grow_2" +"Saccharomyces cerevisiae FY1679 " "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "mating_type_alpha" "" "" "growth" "NZ_0hrs_Grow_1" +"Saccharomyces cerevisiae FY1679 " "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "mating_type_alpha" "" "" "growth" "NZ_0hrs_Grow_2" diff --git a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java index 6167e83d..332d1f2d 100644 --- a/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java +++ b/src/main/java/org/isatools/isacreator/gui/menu/ImportFilesMenu.java @@ -148,8 +148,8 @@ private JPanel createLoadingImagePanel() { loadingImagePanel.add(loadingImageContainer); JPanel infoContainer = UIHelper.wrapComponentInPanel( - UIHelper.createLabel("

In this version of the tool, we automatically upgrade ontology accessions in use to URIs - " + - "this is an artifact of the upgrades to BioPortal's new REST web services (version 4).

Loading will take a little bit longer than normal during this upgrade.

", UIHelper.VER_12_BOLD, UIHelper.ASPHALT)); + UIHelper.createLabel("

In this version of the tool, we automatically upgrade elements annotated with ontology terms from using ontology accessions to using URIs. " + + "This is an artifact of the upgrades to BioPortal's new REST web services (version 4).

Loading might take a little bit longer than normal during this upgrade for some ISA-TAB datasets.

", UIHelper.VER_12_BOLD, UIHelper.ASPHALT)); infoContainer.setBorder(new EmptyBorder(0, 50, 50, 0)); loadingImagePanel.add(infoContainer); From ba9f5ec527e0d95f5ed8a9c5bad80d6aaf4a4ae0 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 17 Jan 2014 08:04:12 +0000 Subject: [PATCH 100/111] Updating to latest annotated version of BII-I-1 --- isatab files/BII-I-1/a_metabolome.txt | 222 ++++++------ isatab files/BII-I-1/a_microarray.txt | 28 +- isatab files/BII-I-1/a_proteome.txt | 16 +- isatab files/BII-I-1/a_transcriptome.txt | 96 ++--- isatab files/BII-I-1/i_Investigation.txt | 90 ++--- isatab files/BII-I-1/s_BII-S-1.txt | 328 ++++++++--------- isatab files/BII-I-1/s_BII-S-2.txt | 18 +- .../test-data/BII-I-1/a_metabolome.txt | 224 ++++++------ .../test-data/BII-I-1/a_microarray.txt | 30 +- .../test-data/BII-I-1/a_proteome.txt | 38 +- .../test-data/BII-I-1/a_transcriptome.txt | 98 +++--- .../test-data/BII-I-1/i_investigation.txt | 98 +++--- .../resources/test-data/BII-I-1/s_BII-S-1.txt | 330 +++++++++--------- .../resources/test-data/BII-I-1/s_BII-S-2.txt | 18 +- 14 files changed, 836 insertions(+), 798 deletions(-) diff --git a/isatab files/BII-I-1/a_metabolome.txt b/isatab files/BII-I-1/a_metabolome.txt index 5bd6ff79..c7acfbac 100644 --- a/isatab files/BII-I-1/a_metabolome.txt +++ b/isatab files/BII-I-1/a_metabolome.txt @@ -1,112 +1,112 @@ "Sample Name" "Material Type" "Term Source REF" "Term Accession Number" "Protocol REF" "Parameter Value[standard volume]" "Unit" "Term Source REF" "Term Accession Number" "Parameter Value[sample volume]" "Unit" "Term Source REF" "Term Accession Number" "Extract Name" "MS Assay Name" "Raw Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"S-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "/Users/eamonnmaguire/Downloads/sample-data" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "/Users/eamonnmaguire/Dropbox/ISAtab" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "/Users/eamonnmaguire/Dropbox/Presentation Images" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "/Users/eamonnmaguire/Dropbox/Presentations" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"P-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.1-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.2-aliquot8" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot9" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot10" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.2-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot7" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.1-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.2-aliquot4" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot5" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot6" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.07-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.07-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "glucose" "" "" "0.07" "l/hr" "" "" -"G-0.1-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.1-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "glucose" "" "" "0.1" "l/hr" "" "" -"G-0.2-aliquot1" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot2" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"G-0.2-aliquot3" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "glucose" "" "" "0.2" "l/hr" "" "" -"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot2" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot3" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.1-aliquot1" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot2" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot3" "internal" "" "" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.07-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "ethanol" "" "" "0.07" "l/hr" "" "" -"E-0.1-aliquot4" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot5" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" -"E-0.1-aliquot6" "external" "" "" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "ethanol" "" "" "0.1" "l/hr" "" "" +"C-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "JIC83_Sulphate_0.07_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "JIC84_Sulphate_0.07_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "JIC82_Sulphate_0.07_External_1_2.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "JIC82_Sulphate_0.07_External_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"P-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" diff --git a/isatab files/BII-I-1/a_microarray.txt b/isatab files/BII-I-1/a_microarray.txt index c195397e..6027228c 100644 --- a/isatab files/BII-I-1/a_microarray.txt +++ b/isatab files/BII-I-1/a_microarray.txt @@ -1,15 +1,15 @@ "Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Comment[ArrayExpress Accession]" "Comment[ArrayExpress Raw Data URL]" "Comment[ArrayExpress Processed Data URL]" "Array Design REF" "Scan Name" "Array Data File" "Data Transformation Name" "Derived Array Data File" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "rapamycin" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "" "" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "ng /ml" "" "" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow1_Sample_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_1hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow2_Sample_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_1hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_2hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" diff --git a/isatab files/BII-I-1/a_proteome.txt b/isatab files/BII-I-1/a_proteome.txt index 189f61d1..ff906e1e 100644 --- a/isatab files/BII-I-1/a_proteome.txt +++ b/isatab files/BII-I-1/a_proteome.txt @@ -1,18 +1,18 @@ "Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "MS Assay Name" "Comment[PRIDE Accession]" "Comment[PRIDE Processed Data Accession]" "Raw Spectral Data File" "Normalization Name" "Protein Assignment File" "Peptide Assignment File" "Post Translational Modification Assignment File" "Data Transformation Name" "Derived Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "JC_S-0.1" "iTRAQ reagent 117" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "sulphur" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "JC_C-0.1" "iTRAQ reagent 116" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "carbon" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "JC_N-0.1" "iTRAQ reagent 115" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "nitrogen" "" "" "0.1" "l/hr" "" "" +"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "JC_S-0.1" "iTRAQ reagent 117" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "JC_C-0.1" "iTRAQ reagent 116" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "JC_N-0.1" "iTRAQ reagent 115" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" "S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" "C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" "N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" -"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "JC_C-0.2" "iTRAQ reagent 117" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "carbon" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "JC_N-0.2" "iTRAQ reagent 116" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "nitrogen" "" "" "0.2" "l/hr" "" "" -"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "JC_P-0.1" "iTRAQ reagent 115" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "phosphorus" "" "" "0.1" "l/hr" "" "" +"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "JC_C-0.2" "iTRAQ reagent 117" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "JC_N-0.2" "iTRAQ reagent 116" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "JC_P-0.1" "iTRAQ reagent 115" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" "C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" "N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" "P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" -"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "JC_P-0.2" "iTRAQ reagent 116" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "phosphorus" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "JC_S-0.2" "iTRAQ reagent 115" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "sulphur" "" "" "0.2" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "JC_P-0.2" "iTRAQ reagent 116" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "JC_S-0.2" "iTRAQ reagent 115" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" "P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" "S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" "P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" diff --git a/isatab files/BII-I-1/a_transcriptome.txt b/isatab files/BII-I-1/a_transcriptome.txt index 8203a5b9..36f6a420 100644 --- a/isatab files/BII-I-1/a_transcriptome.txt +++ b/isatab files/BII-I-1/a_transcriptome.txt @@ -1,49 +1,49 @@ "Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Array Design REF" "Scan Name" "Array Data File" "Normalization Name" "Derived Array Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.07" "l/hr" "" "" -"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.1" "l/hr" "" "" -"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "carbon" "" "" "0.2" "l/hr" "" "" -"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.07" "l/hr" "" "" -"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.1" "l/hr" "" "" -"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "nitrogen" "" "" "0.2" "l/hr" "" "" -"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.07" "l/hr" "" "" -"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.1" "l/hr" "" "" -"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "phosphorus" "" "" "0.2" "l/hr" "" "" -"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.07" "l/hr" "" "" -"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.1" "l/hr" "" "" -"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" -"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "sulphur" "" "" "0.2" "l/hr" "" "" +"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" diff --git a/isatab files/BII-I-1/i_Investigation.txt b/isatab files/BII-I-1/i_Investigation.txt index 84b88050..b4f074a4 100644 --- a/isatab files/BII-I-1/i_Investigation.txt +++ b/isatab files/BII-I-1/i_Investigation.txt @@ -1,8 +1,8 @@ ONTOLOGY SOURCE REFERENCE -Term Source Name "CHEBI" "EFO" "OBI" "PATO" "UO" -Term Source File "http://data.bioontology.org/ontologies/CHEBI" "http://data.bioontology.org/ontologies/EFO" "http://data.bioontology.org/ontologies/OBI" "http://data.bioontology.org/ontologies/PATO" "http://data.bioontology.org/ontologies/UO" -Term Source Version "78" "110" "21" "160" "42" -Term Source Description "Chemical Entities of Biological Interest Ontology" "Experimental Factor Ontology" "Ontology for Biomedical Investigations" "Phenotypic Quality Ontology" "Units of Measurement Ontology" +Term Source Name "" "OBI" "OBI_BCGO" "NCBITAXON" "CL" "e.g. OBI" "CHEBI" "RID" "EHDAA" "EFO" "FYPO" "BTO" "NEWT" "UO" "PATO" +Term Source File "" "" "http://data.bioontology.org/ontologies/OBI_BCGO" "http://data.bioontology.org/ontologies/NCBITAXON" "http://data.bioontology.org/ontologies/CL" "" "http://bioportal.bioontology.org/ontologies/49736" "http://bioportal.bioontology.org/ontologies/49816" "http://bioportal.bioontology.org/ontologies/45254" "http://bioportal.bioontology.org/ontologies/49794" "http://bioportal.bioontology.org/ontologies/49892" "ArrayExpress Experimental Factor Ontology" "" "" "" +Term Source Version "" "" "7" "2" "43" "" "49736" "49816" "45254" "49794" "49892" "v 1.26" "v 1.26" "v 1.26" "v 1.26" +Term Source Description "" "" "Beta Cell Genomics Ontology" "National Center for Biotechnology Information (NCBI) Organismal Classification" "Cell Ontology" "" "Chemical entities of biological interest" "RadLex" "Human developmental anatomy, abstract version" "Experimental Factor Ontology" "Fission Yeast Phenotype Ontology" "BRENDA tissue / enzyme source" "NEWT UniProt Taxonomy Database" "Unit Ontology" "Phenotypic qualities (properties)" INVESTIGATION Investigation Identifier "BII-I-1" Investigation Title "Growth control of the eukaryote cell: a systems biology study in yeast" @@ -10,15 +10,19 @@ Investigation Description "Background Cell growth underlies many key cellular an Investigation Submission Date "2007-04-30" Investigation Public Release Date "2009-03-10" Comment [Created with configuration] "" -Comment [Last Opened With Configuration] "isaconfig-default_v2013-02-13" +Comment [Last Opened With Configuration] "isaconfig-default_v2013-02-13-augmentedGigaDB" +Comment [Owning Organisation URI] "" +Comment [Consortium URI] "" +Comment [Principal Investigator URI] "" +Comment [Investigation keywords] "" INVESTIGATION PUBLICATIONS -Investigation PubMed ID "17439666" -Investigation Publication DOI "doi:10.1186/jbiol54" -Investigation Publication Author List "Castrillo JI, Zeef LA, Hoyle DC, Zhang N, Hayes A, Gardner DC, Cornell MJ, Petty J, Hakes L, Wardleworth L, Rash B, Brown M, Dunn WB, Broadhurst D, O'Donoghue K, Hester SS, Dunkley TP, Hart SR, Swainston N, Li P, Gaskell SJ, Paton NW, Lilley KS, Kell DB, Oliver SG." -Investigation Publication Title "Growth control of the eukaryote cell: a systems biology study in yeast." -Investigation Publication Status "indexed in Pubmed" -Investigation Publication Status Term Accession Number "" -Investigation Publication Status Term Source REF "" +Investigation PubMed ID "17439666" "1231222" "1234121" +Investigation Publication DOI "doi:10.1186/jbiol54" "" "" +Investigation Publication Author List "Castrillo JI, Zeef LA, Hoyle DC, Zhang N, Hayes A, Gardner DC, Cornell MJ, Petty J, Hakes L, Wardleworth L, Rash B, Brown M, Dunn WB, Broadhurst D, O'Donoghue K, Hester SS, Dunkley TP, Hart SR, Swainston N, Li P, Gaskell SJ, Paton NW, Lilley KS, Kell DB, Oliver SG." "Piatnochka IT." "Monticelli G, Santori S." +Investigation Publication Title "Growth control of the eukaryote cell: a systems biology study in yeast." "Effect of prednisolone on the cardiovascular system in complex treatment of newly detected pulmonary tuberculosis" "Indications for the use of prostheses in the treatment of pathological fractures due to primary malignant and metastatic tumours of bone." +Investigation Publication Status "indexed in Pubmed" "Published" "Published" +Investigation Publication Status Term Accession Number "" "" "" +Investigation Publication Status Term Source REF "" "" "" INVESTIGATION CONTACTS Investigation Person Last Name "Oliver" "Juan" "Leo" Investigation Person First Name "Stephen" "Castrillo" "Zeef" @@ -55,29 +59,29 @@ Study Publication Status Term Accession Number "" Study Publication Status Term Source REF "" STUDY FACTORS Study Factor Name "limiting nutrient" "rate" -Study Factor Type "chemical compound" "rate" -Study Factor Type Term Accession Number "" "http://purl.obolibrary.org/obo/PATO_0000161" -Study Factor Type Term Source REF "" "PATO" +Study Factor Type "chemical entity" "rate" +Study Factor Type Term Accession Number "http://purl.obolibrary.org/obo/CHEBI_24431" "http://purl.obolibrary.org/obo/PATO_0000161" +Study Factor Type Term Source REF "CHEBI" "PATO" STUDY ASSAYS Study Assay File Name "a_proteome.txt" "a_metabolome.txt" "a_transcriptome.txt" Study Assay Measurement Type "protein expression profiling" "metabolite profiling" "transcription profiling" -Study Assay Measurement Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000615" "http://purl.obolibrary.org/obo/OBI_0000366" "0000424" +Study Assay Measurement Type Term Accession Number "" "0000366" "0000424" Study Assay Measurement Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Type "mass spectrometry" "mass spectrometry" "DNA microarray" -Study Assay Technology Type Term Accession Number "" "" "http://purl.obolibrary.org/obo/OBI_0400148" +Study Assay Technology Type Term Accession Number "" "" "0400148" Study Assay Technology Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Platform "iTRAQ" "LC-MS/MS" "Affymetrix" STUDY PROTOCOLS Study Protocol Name "growth protocol" "mRNA extraction" "protein extraction" "biotin labeling" "ITRAQ labeling" "EukGE-WS4" "metabolite extraction" -Study Protocol Type "growth" "mRNA extraction" "protein extraction" "labeling" "labeling" "hybridization" "extraction" -Study Protocol Type Term Accession Number "" "" "" "" "" "" "http://purl.obolibrary.org/obo/OBI_0302884" -Study Protocol Type Term Source REF "" "" "" "" "" "" "OBI" -Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip � Sample Clean Up Module. The column was eluted in the first instance using 10 �l RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip � Expression Analysis technical manual. GeneChip � control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip � manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" +Study Protocol Type "growth" "RNA extraction" "extraction" "addition of molecular label" "addition of molecular label" "nucleic acid hybridization" "extraction" +Study Protocol Type Term Accession Number "" "http://purl.obolibrary.org/obo/OBI_0666666" "http://purl.obolibrary.org/obo/OBI_0302884" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0302903" "http://purl.obolibrary.org/obo/OBI_0302884" +Study Protocol Type Term Source REF "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" +Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ??? Sample Clean Up Module. The column was eluted in the first instance using 10 ???l RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ??? Expression Analysis technical manual. GeneChip ??? control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ??? manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" Study Protocol URI "" "" "" "" "" "" "" Study Protocol Version "" "" "" "" "" "" "" -Study Protocol Parameters Name "" "" "" "" "" "" "sample volume;standard volume" -Study Protocol Parameters Name Term Accession Number "" "" "" "" "" "" ";" -Study Protocol Parameters Name Term Source REF "" "" "" "" "" "" ";" +Study Protocol Parameters Name "" "" "" "" "" "" "sampling" +Study Protocol Parameters Name Term Accession Number "" "" "" "" "" "" "" +Study Protocol Parameters Name Term Source REF "" "" "" "" "" "" "" Study Protocol Components Name "" "" "" "" "" "" "" Study Protocol Components Type "" "" "" "" "" "" "" Study Protocol Components Type Term Accession Number "" "" "" "" "" "" "" @@ -106,7 +110,7 @@ Study Public Release Date "2009-03-10" Study File Name "s_BII-S-2.txt" STUDY DESIGN DESCRIPTORS Study Design Type "time series design" -Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0500020" +Study Design Type Term Accession Number "" Study Design Type Term Source REF "OBI" STUDY PUBLICATIONS Study PubMed ID "17439666" @@ -118,33 +122,33 @@ Study Publication Status Term Accession Number "" Study Publication Status Term Source REF "" STUDY FACTORS Study Factor Name "compound" "exposure time" "dose" -Study Factor Type "compound" "time" "dose" -Study Factor Type Term Accession Number "" "http://www.ebi.ac.uk/efo/EFO_0000721" "http://www.ebi.ac.uk/efo/EFO_0000428" -Study Factor Type Term Source REF "" "EFO" "EFO" +Study Factor Type "chemical entity" "time" "dose" +Study Factor Type Term Accession Number "http://purl.obolibrary.org/obo/CHEBI_24431" "http://purl.obolibrary.org/obo/PATO_0000165" "http://purl.obolibrary.org/obo/OBI_0000984" +Study Factor Type Term Source REF "CHEBI" "OBI_BCGO" "OBI" STUDY ASSAYS Study Assay File Name "a_microarray.txt" Study Assay Measurement Type "transcription profiling" Study Assay Measurement Type Term Accession Number "0000424" Study Assay Measurement Type Term Source REF "OBI" Study Assay Technology Type "DNA microarray" -Study Assay Technology Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0400148" +Study Assay Technology Type Term Accession Number "0400148" Study Assay Technology Type Term Source REF "OBI" Study Assay Technology Platform "Affymetrix" STUDY PROTOCOLS -Study Protocol Name "EukGE-WS4" "growth" "mRNA extraction" "biotin labeling" -Study Protocol Type "hybridization" "growth" "mRNA extraction" "labeling" -Study Protocol Type Term Accession Number "" "" "" "" -Study Protocol Type Term Source REF "" "" "" "" -Study Protocol Description "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip � Expression Analysis technical manual. GeneChip � control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip � manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5mins, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 �l 1x hybridisation buffer and incubated at 45 C for 10 min. 200 �l of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "The culture was grown in YMB minimum media + 2% glucose + supplement to early exponential growth (OD ~0.32)" "1. Biomass samples (45ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5 min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5 min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip � Sample Clean Up Module. The column was eluted in the first instance using 10 �l RNase-free water, and for a second time using 11 �l RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." -Study Protocol URI "" "" "" "" -Study Protocol Version "" "" "" "" -Study Protocol Parameters Name "" "" "" "" -Study Protocol Parameters Name Term Accession Number "" "" "" "" -Study Protocol Parameters Name Term Source REF "" "" "" "" -Study Protocol Components Name "" "" "" "" -Study Protocol Components Type "" "" "" "" -Study Protocol Components Type Term Accession Number "" "" "" "" -Study Protocol Components Type Term Source REF "" "" "" "" +Study Protocol Name "EukGE-WS4" "mRNA extraction" "biotin labeling" "extraction" "labeling" "NMR spectroscopy" "nmr assay" "data normalization" "data transformation" +Study Protocol Type "nucleic acid hybridization" "RNA extraction" "addition of molecular label" "extraction" "addition of molecular label" "NMR spectroscopy" "nmr assay" "normalization data transformation" "data transformation" +Study Protocol Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0302903" "http://purl.obolibrary.org/obo/OBI_0666666" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0302884" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0000623" "" "http://purl.obolibrary.org/obo/OBI_0200169" "http://purl.obolibrary.org/obo/OBI_0200000" +Study Protocol Type Term Source REF "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" "" "OBI" "OBI" +Study Protocol Description "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ??? Expression Analysis technical manual. GeneChip ??? control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ??? manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5mins, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ???l 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ???l of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "1. Biomass samples (45ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5 min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5 min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ??? Sample Clean Up Module. The column was eluted in the first instance using 10 ???l RNase-free water, and for a second time using 11 ???l RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "" "" "" "" "" +Study Protocol URI "" "" "" "" "" "" "" "" "" +Study Protocol Version "" "" "" "" "" "" "" "" "" +Study Protocol Parameters Name "" "" "" "" "" ";;;" "" "" "" +Study Protocol Parameters Name Term Accession Number "" "" "" "" "" "" "" "" "" +Study Protocol Parameters Name Term Source REF "" "" "" "" "" "" "" "" "" +Study Protocol Components Name "" "" "" "" "" "" "" "" "" +Study Protocol Components Type "" "" "" "" "" "" "" "" "" +Study Protocol Components Type Term Accession Number "" "" "" "" "" "" "" "" "" +Study Protocol Components Type Term Source REF "" "" "" "" "" "" "" "" "" STUDY CONTACTS Study Person Last Name "Oliver" "Juan" "Leo" Study Person First Name "Stephen" "Castrillo" "Zeef" diff --git a/isatab files/BII-I-1/s_BII-S-1.txt b/isatab files/BII-I-1/s_BII-S-1.txt index b5e66e1f..f0b691c1 100644 --- a/isatab files/BII-I-1/s_BII-S-1.txt +++ b/isatab files/BII-I-1/s_BII-S-1.txt @@ -1,165 +1,165 @@ "Source Name" "Characteristics[organism]" "Term Source REF" "Term Accession Number" "Characteristics[strain]" "Term Source REF" "Term Accession Number" "Characteristics[genotype]" "Term Source REF" "Term Accession Number" "Protocol REF" "Sample Name" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot1" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot2" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot3" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot4" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot5" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot6" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot7" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot8" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot9" "carbon" "" "" "0.07" "l/hour" "" "" -"culture1" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot10" "carbon" "" "" "0.07" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot1" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot2" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot3" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot4" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot5" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot6" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot7" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot8" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot9" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot10" "carbon" "" "" "0.1" "l/hour" "" "" -"culture2" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot11" "carbon" "" "" "0.1" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot1" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot2" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot3" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot4" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot5" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot6" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot7" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot8" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot9" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot10" "carbon" "" "" "0.2" "l/hour" "" "" -"culture3" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot11" "carbon" "" "" "0.2" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot1" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot2" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot3" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot4" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot5" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot6" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot7" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot8" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot9" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture4" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot10" "nitrogen" "" "" "0.07" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot1" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot2" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot3" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot4" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot5" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot6" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot7" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot8" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot9" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot10" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture5" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot11" "nitrogen" "" "" "0.1" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot1" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot2" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot3" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot4" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot5" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot6" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot7" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot8" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot9" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture6" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "nitrogen" "" "" "0.2" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot1" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot2" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot3" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot4" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot5" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot6" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot7" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot8" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot9" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture7" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot10" "phosphorus" "" "" "0.07" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot1" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot2" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot3" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot4" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot5" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot6" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot7" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot8" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot9" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot10" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture8" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot11" "phosphorus" "" "" "0.1" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot1" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot2" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot3" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot4" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot5" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot6" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot7" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot8" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot9" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot10" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture9" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot11" "phosphorus" "" "" "0.2" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot1" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot2" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot3" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot4" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot5" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot6" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot7" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot8" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot9" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture10" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot10" "sulfur" "" "" "0.07" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot1" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot2" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot3" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot4" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot5" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot6" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot7" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot8" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot9" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot10" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture11" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot11" "sulfur" "" "" "0.1" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot1" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot2" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot3" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot4" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot5" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot6" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot7" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot8" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot9" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot10" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture12" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot11" "sulfur" "" "" "0.2" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot1" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot2" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot3" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot4" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot5" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture13" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot6" "ethanol" "" "" "0.07" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot1" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot2" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot3" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot4" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot5" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture14" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot6" "ethanol" "" "" "0.1" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot1" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot2" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot3" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot4" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot5" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture15" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot6" "ethanol" "" "" "0.2" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot1" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot2" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot3" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot4" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot5" "glucose" "" "" "0.07" "l/hour" "" "" -"culture16" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot6" "glucose" "" "" "0.07" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot1" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot2" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot3" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot4" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot5" "glucose" "" "" "0.1" "l/hour" "" "" -"culture17" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot6" "glucose" "" "" "0.1" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot1" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot2" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot3" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot4" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot5" "glucose" "" "" "0.2" "l/hour" "" "" -"culture18" "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot6" "glucose" "" "" "0.2" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot1" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot2" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot3" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot4" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot5" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot6" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot7" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot8" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot9" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot10" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot1" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot2" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot3" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot4" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot5" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot6" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot7" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot8" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot9" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot10" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot11" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot1" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot2" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot3" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot4" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot5" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot6" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot7" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot8" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot9" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot10" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot11" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot1" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot2" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot3" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot4" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot5" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot6" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot7" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot8" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot9" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot10" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot1" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot2" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot3" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot4" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot5" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot6" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot7" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot8" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot9" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot10" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot11" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot1" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot2" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot3" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot4" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot5" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot6" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot7" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot8" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot9" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot11" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot1" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot2" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot3" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot4" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot5" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot6" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot7" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot8" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot9" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot10" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot1" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot2" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot3" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot4" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot5" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot6" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot7" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot8" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot9" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot10" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot11" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot1" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot2" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot3" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot4" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot5" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot6" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot7" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot8" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot9" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot10" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot11" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot1" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot2" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot3" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot4" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot5" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot6" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot7" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot8" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot9" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot10" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot1" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot2" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot3" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot4" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot5" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot6" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot7" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot8" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot9" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot10" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot11" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot1" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot2" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot3" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot4" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot5" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot6" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot7" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot8" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot9" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot10" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot11" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot1" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot2" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot3" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot4" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot5" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot6" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot1" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot2" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot3" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot4" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot5" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot6" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot1" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot2" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot3" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot4" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot5" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot6" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot1" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot2" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot3" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot4" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot5" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot6" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot1" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot2" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot3" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot4" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot5" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot6" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot1" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot2" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot3" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot4" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot5" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot6" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" diff --git a/isatab files/BII-I-1/s_BII-S-2.txt b/isatab files/BII-I-1/s_BII-S-2.txt index 6a5ac5d8..9c366671 100644 --- a/isatab files/BII-I-1/s_BII-S-2.txt +++ b/isatab files/BII-I-1/s_BII-S-2.txt @@ -1,3 +1,15 @@ -"Source Name" "Characteristics[organism]" "Term Source REF" "Term Accession Number" "Characteristics[strain]" "Term Source REF" "Term Accession Number" "Characteristics[genotype]" "Term Source REF" "Term Accession Number" "Characteristics[mating type]" "Term Source REF" "Term Accession Number" "Protocol REF" "Sample Name" -"Saccharomyces cerevisiae FY1679 " "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "mating_type_alpha" "" "" "growth" "NZ_0hrs_Grow_1" -"Saccharomyces cerevisiae FY1679 " "Saccharomyces cerevisiae (Baker's yeast)" "" "" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "mating_type_alpha" "" "" "growth" "NZ_0hrs_Grow_2" +"Source Name" "Characteristics[organism]" "Term Source REF" "Term Accession Number" "Characteristics[strain]" "Term Source REF" "Term Accession Number" "Characteristics[genotype]" "Term Source REF" "Term Accession Number" "Characteristics[mating type]" "Term Source REF" "Term Accession Number" "Protocol REF" "Sample Name" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_0hrs_Grow1_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow1_Drug_Sample_1" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow1_Drug_Sample_1" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow1_Drug_Sample_1" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow1_Vehicle_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow1_Vehicle_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow1_Vehicle_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_0hrs_Grow2_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow2_Drug_Sample_2" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow2_Drug_Sample_2" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow2_Drug_Sample_2" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow2_Vehicle_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow2_Vehicle_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow2_Vehicle_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_metabolome.txt b/src/test/resources/test-data/BII-I-1/a_metabolome.txt index 1b01526f..c7acfbac 100644 --- a/src/test/resources/test-data/BII-I-1/a_metabolome.txt +++ b/src/test/resources/test-data/BII-I-1/a_metabolome.txt @@ -1,112 +1,112 @@ -Sample Name Material Type Protocol REF Parameter Value[standard volume] Unit Parameter Value[sample volume] Unit Extract Name MS Assay Name Raw Spectral Data File Factor Value[limiting nutrient] Factor Value[rate] Unit -S-0.2-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter S-0.2-aliquot8 JIC36_Sulphate_0.20_Internal_1_3 JIC36_Sulphate_0.20_Internal_1_3.txt sulphur 0.2 l/hr -S-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.07-aliquot5 JIC82_Sulphate_0.07_External_1_1 JIC82_Sulphate_0.07_External_1_1.txt sulphur 0.07 l/hr -S-0.07-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.07-aliquot6 JIC83_Sulphate_0.07_External_2_1 /Users/eamonnmaguire/Downloads/sample-data sulphur 0.07 l/hr -S-0.07-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.07-aliquot7 JIC84_Sulphate_0.07_External_3_1 /Users/eamonnmaguire/Dropbox/ISAtab sulphur 0.07 l/hr -S-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.07-aliquot5 JIC82_Sulphate_0.07_External_1_2 /Users/eamonnmaguire/Dropbox/Presentation Images sulphur 0.07 l/hr -S-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.07-aliquot5 JIC82_Sulphate_0.07_External_1_3 /Users/eamonnmaguire/Dropbox/Presentations sulphur 0.07 l/hr -S-0.1-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.1-aliquot5 JIC85_Sulphate_0.10_External_1_1 JIC85_Sulphate_0.10_External_1_1.txt sulphur 0.1 l/hr -S-0.1-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.1-aliquot6 JIC86_Sulphate_0.10_External_2_1 JIC86_Sulphate_0.10_External_2_1.txt sulphur 0.1 l/hr -S-0.2-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.2-aliquot5 JIC88_Sulphate_0.20_External_1_1 JIC88_Sulphate_0.20_External_1_1.txt sulphur 0.2 l/hr -S-0.2-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.2-aliquot6 JIC89_Sulphate_0.20_External_2_1 JIC89_Sulphate_0.20_External_2_1.txt sulphur 0.2 l/hr -S-0.2-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter S-0.2-aliquot7 JIC90_Sulphate_0.20_External_3_1 JIC90_Sulphate_0.20_External_3_1.txt sulphur 0.2 l/hr -P-0.07-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.07-aliquot8 JIC20_Phosphate_0.07_Internal_1_1 JIC20_Phosphate_0.07_Internal_1_1.txt phosphorus 0.07 l/hr -P-0.07-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.07-aliquot9 JIC21_Phosphate_0.07_Internal_2_1 JIC21_Phosphate_0.07_Internal_2_1.txt phosphorus 0.07 l/hr -P-0.1-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.1-aliquot8 JIC22_Phosphate_0.10_Internal_1_1 JIC22_Phosphate_0.10_Internal_1_1.txt phosphorus 0.1 l/hr -P-0.1-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.1-aliquot9 JIC23_Phosphate_0.10_Internal_2_1 JIC23_Phosphate_0.10_Internal_2_1.txt phosphorus 0.1 l/hr -P-0.1-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.1-aliquot10 JIC24_Phosphate_0.10_Internal_3_1 JIC24_Phosphate_0.10_Internal_3_1.txt phosphorus 0.1 l/hr -P-0.2-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.2-aliquot8 JIC25_Phosphate_0.20_Internal_1_1 JIC25_Phosphate_0.20_Internal_1_1.txt phosphorus 0.2 l/hr -P-0.2-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.2-aliquot9 JIC26_Phosphate_0.20_Internal_2_1 JIC26_Phosphate_0.20_Internal_2_1.txt phosphorus 0.2 l/hr -P-0.2-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter P-0.2-aliquot10 JIC27_Phosphate_0.20_Internal_3_1 JIC27_Phosphate_0.20_Internal_3_1.txt phosphorus 0.2 l/hr -P-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.07-aliquot5 JIC73_Phosphate_0.07_External_1_1 JIC73_Phosphate_0.07_External_1_1.txt phosphorus 0.07 l/hr -P-0.07-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.07-aliquot6 JIC73_Phosphate_0.07_External_1_2 JIC73_Phosphate_0.07_External_1_2.txt phosphorus 0.07 l/hr -P-0.07-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.07-aliquot7 JIC73_Phosphate_0.07_External_1_3 JIC73_Phosphate_0.07_External_1_3.txt phosphorus 0.07 l/hr -P-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.07-aliquot5 JIC74_Phosphate_0.07_External_2_1 JIC74_Phosphate_0.07_External_2_1.txt phosphorus 0.07 l/hr -P-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.07-aliquot5 JIC75_Phosphate_0.07_External_3_1 JIC75_Phosphate_0.07_External_3_1.txt phosphorus 0.07 l/hr -P-0.1-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.1-aliquot5 JIC76_Phosphate_0.10_External_1_1 JIC76_Phosphate_0.10_External_1_1.txt phosphorus 0.1 l/hr -P-0.1-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.1-aliquot6 JIC77_Phosphate_0.10_External_2_1 JIC77_Phosphate_0.10_External_2_1.txt phosphorus 0.1 l/hr -P-0.1-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.1-aliquot7 JIC78_Phosphate_0.10_External_3_1 JIC78_Phosphate_0.10_External_3_1.txt phosphorus 0.1 l/hr -P-0.2-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.2-aliquot5 JIC79_Phosphate_0.20_External_1_1 JIC79_Phosphate_0.20_External_1_1.txt phosphorus 0.2 l/hr -P-0.2-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.2-aliquot6 JIC80_Phosphate_0.20_External_2_1 JIC80_Phosphate_0.20_External_2_1.txt phosphorus 0.2 l/hr -P-0.2-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter P-0.2-aliquot7 JIC81_Phosphate_0.20_External_3_1 JIC81_Phosphate_0.20_External_3_1.txt phosphorus 0.2 l/hr -N-0.07-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.07-aliquot8 JIC10_Nitrogen_0.07_Internal_1_1 JIC10_Nitrogen_0.07_Internal_1_1.txt nitrogen 0.07 l/hr -N-0.07-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.07-aliquot8 JIC10_Nitrogen_0.07_Internal_1_2 JIC10_Nitrogen_0.07_Internal_1_2.txt nitrogen 0.07 l/hr -N-0.07-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.07-aliquot8 JIC10_Nitrogen_0.07_Internal_1_3 JIC10_Nitrogen_0.07_Internal_1_3.txt nitrogen 0.07 l/hr -N-0.07-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.07-aliquot9 JIC11_Nitrogen_0.07_Internal_2_1 JIC11_Nitrogen_0.07_Internal_2_1.txt nitrogen 0.07 l/hr -N-0.07-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.07-aliquot10 JIC12_Nitrogen_0.07_Internal_3_1 JIC12_Nitrogen_0.07_Internal_3_1.txt nitrogen 0.07 l/hr -N-0.1-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.1-aliquot8 JIC13_Nitrogen_0.10_Internal_1_1 JIC13_Nitrogen_0.10_Internal_1_1.txt nitrogen 0.1 l/hr -N-0.1-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.1-aliquot9 JIC14_Nitrogen_0.10_Internal_2_1 JIC14_Nitrogen_0.10_Internal_2_1.txt nitrogen 0.1 l/hr -N-0.1-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.1-aliquot10 JIC15_Nitrogen_0.10_Internal_3_1 JIC15_Nitrogen_0.10_Internal_3_1.txt nitrogen 0.1 l/hr -N-0.2-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.2-aliquot8 JIC16_Nitrogen_0.20_Internal_1_1 JIC16_Nitrogen_0.20_Internal_1_1.txt nitrogen 0.2 l/hr -N-0.2-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.2-aliquot9 JIC17_Nitrogen_0.20_Internal_2_1 JIC17_Nitrogen_0.20_Internal_2_1.txt nitrogen 0.2 l/hr -N-0.2-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter N-0.2-aliquot10 JIC18_Nitrogen_0.20_Internal_3_1 JIC18_Nitrogen_0.20_Internal_3_1.txt nitrogen 0.2 l/hr -N-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.07-aliquot5 JIC64_Nitrogen_0.07_External_1_1 JIC64_Nitrogen_0.07_External_1_1.txt nitrogen 0.07 l/hr -N-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.07-aliquot5 JIC64_Nitrogen_0.07_External_1_2 JIC64_Nitrogen_0.07_External_1_2.txt nitrogen 0.07 l/hr -N-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.07-aliquot5 JIC64_Nitrogen_0.07_External_1_3 JIC64_Nitrogen_0.07_External_1_3.txt nitrogen 0.07 l/hr -N-0.07-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.07-aliquot6 JIC65_Nitrogen_0.07_External_2_1 JIC65_Nitrogen_0.07_External_2_1.txt nitrogen 0.07 l/hr -N-0.07-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.07-aliquot7 JIC66_Nitrogen_0.07_External_3_1 JIC66_Nitrogen_0.07_External_3_1.txt nitrogen 0.07 l/hr -N-0.1-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.1-aliquot5 JIC67_Nitrogen_0.10_External_1_1 JIC67_Nitrogen_0.10_External_1_1.txt nitrogen 0.1 l/hr -N-0.1-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.1-aliquot6 JIC68_Nitrogen_0.10_External_2_1 JIC68_Nitrogen_0.10_External_2_1.txt nitrogen 0.1 l/hr -N-0.1-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.1-aliquot7 JIC69_Nitrogen_0.10_External_3_1 JIC69_Nitrogen_0.10_External_3_1.txt nitrogen 0.1 l/hr -N-0.2-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.2-aliquot5 JIC70_Nitrogen_0.20_External_1_1 JIC70_Nitrogen_0.20_External_1_1.txt nitrogen 0.2 l/hr -N-0.2-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.2-aliquot6 JIC71_Nitrogen_0.20_External_2_1 JIC71_Nitrogen_0.20_External_2_1.txt nitrogen 0.2 l/hr -N-0.2-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter N-0.2-aliquot7 JIC72_Nitrogen_0.20_External_3_1 JIC72_Nitrogen_0.20_External_3_1.txt nitrogen 0.2 l/hr -C-0.07-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.07-aliquot8 JIC1_Carbon_0.07_Internal_1_1 JIC1_Carbon_0.07_Internal_1_1.txt carbon 0.07 l/hr -C-0.07-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.07-aliquot8 JIC1_Carbon_0.07_Internal_1_2 JIC1_Carbon_0.07_Internal_1_2.txt carbon 0.07 l/hr -C-0.07-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.07-aliquot8 JIC1_Carbon_0.07_Internal_1_3 JIC1_Carbon_0.07_Internal_1_3.txt carbon 0.07 l/hr -C-0.07-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.07-aliquot9 JIC2_Carbon_0.07_Internal_2_1 JIC2_Carbon_0.07_Internal_2_1.txt carbon 0.07 l/hr -C-0.07-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.07-aliquot10 JIC3_Carbon_0.07_Internal_3_1 JIC3_Carbon_0.07_Internal_3_1.txt carbon 0.07 l/hr -C-0.1-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.1-aliquot8 JIC4_Carbon_0.10_Internal_1_1 JIC4_Carbon_0.10_Internal_1_1.txt carbon 0.1 l/hr -C-0.1-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.1-aliquot9 JIC5_Carbon_0.10_Internal_2_1 JIC5_Carbon_0.10_Internal_2_1.txt carbon 0.1 l/hr -C-0.1-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.1-aliquot10 JIC6_Carbon_0.10_Internal_3_1 JIC6_Carbon_0.10_Internal_3_1.txt carbon 0.1 l/hr -C-0.2-aliquot8 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.2-aliquot8 JIC7_Carbon_0.20_Internal_1_1 JIC7_Carbon_0.20_Internal_1_1.txt carbon 0.2 l/hr -C-0.2-aliquot9 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.2-aliquot9 JIC8_Carbon_0.20_Internal_2_1 JIC8_Carbon_0.20_Internal_2_1.txt carbon 0.2 l/hr -C-0.2-aliquot10 internal metabolite extraction 4 UO:microliter 200 UO:microliter C-0.2-aliquot10 JIC9_Carbon_0.20_Internal_3_1 JIC9_Carbon_0.20_Internal_3_1.txt carbon 0.2 l/hr -C-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.07-aliquot5 JIC55_Carbon_0.07_External_1_1 JIC55_Carbon_0.07_External_1_1.txt carbon 0.07 l/hr -C-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.07-aliquot5 JIC55_Carbon_0.07_External_1_2 JIC55_Carbon_0.07_External_1_2.txt carbon 0.07 l/hr -C-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.07-aliquot5 JIC55_Carbon_0.07_External_1_3 JIC55_Carbon_0.07_External_1_3.txt carbon 0.07 l/hr -C-0.07-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.07-aliquot6 JIC56_Carbon_0.07_External_2_1 JIC56_Carbon_0.07_External_2_1.txt carbon 0.07 l/hr -C-0.07-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.07-aliquot7 JIC57_Carbon_0.07_External_3_1 JIC57_Carbon_0.07_External_3_1.txt carbon 0.07 l/hr -C-0.1-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.1-aliquot5 JIC58_Carbon_0.10_External_1_1 JIC58_Carbon_0.10_External_1_1.txt carbon 0.1 l/hr -C-0.1-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.1-aliquot6 JIC59_Carbon_0.10_External_2_1 JIC59_Carbon_0.10_External_2_1.txt carbon 0.1 l/hr -C-0.1-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.1-aliquot7 JIC60_Carbon_0.10_External_3_1 JIC60_Carbon_0.10_External_3_1.txt carbon 0.1 l/hr -C-0.2-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.2-aliquot5 JIC61_Carbon_0.20_External_1_1 JIC61_Carbon_0.20_External_1_1.txt carbon 0.2 l/hr -C-0.2-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.2-aliquot6 JIC62_Carbon_0.20_External_2_1 JIC62_Carbon_0.20_External_2_1.txt carbon 0.2 l/hr -C-0.2-aliquot7 external metabolite extraction 20 UO:microliter 1000 UO:microliter C-0.2-aliquot7 JIC63_Carbon_0.20_External_3_1 JIC63_Carbon_0.20_External_3_1.txt carbon 0.2 l/hr -G-0.07-aliquot4 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.07-aliquot4 JIC46_GlucoseO2_0.07_Internal_1_1 JIC46_GlucoseO2_0.07_Internal_1_1.txt glucose 0.07 l/hr -G-0.07-aliquot4 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.07-aliquot4 JIC46_GlucoseO2_0.07_Internal_1_2 JIC46_GlucoseO2_0.07_Internal_1_2.txt glucose 0.07 l/hr -G-0.07-aliquot4 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.07-aliquot4 JIC46_GlucoseO2_0.07_Internal_1_3 JIC46_GlucoseO2_0.07_Internal_1_3.txt glucose 0.07 l/hr -G-0.07-aliquot5 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.07-aliquot5 JIC47_GlucoseO2_0.07_Internal_2_1 JIC47_GlucoseO2_0.07_Internal_2_1.txt glucose 0.07 l/hr -G-0.07-aliquot6 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.07-aliquot6 JIC48_GlucoseO2_0.07_Internal_3_1 JIC48_GlucoseO2_0.07_Internal_3_1.txt glucose 0.07 l/hr -G-0.1-aliquot4 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.1-aliquot4 JIC49_GlucoseO2_0.10_Internal_1_1 JIC49_GlucoseO2_0.10_Internal_1_1.txt glucose 0.1 l/hr -G-0.1-aliquot5 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.1-aliquot5 JIC50_GlucoseO2_0.10_Internal_2_1 JIC50_GlucoseO2_0.10_Internal_2_1.txt glucose 0.1 l/hr -G-0.1-aliquot6 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.1-aliquot6 JIC51_GlucoseO2_0.10_Internal_3_1 JIC51_GlucoseO2_0.10_Internal_3_1.txt glucose 0.1 l/hr -G-0.2-aliquot4 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.2-aliquot4 JIC52_GlucoseO2_0.20_Internal_1_1 JIC52_GlucoseO2_0.20_Internal_1_1.txt glucose 0.2 l/hr -G-0.2-aliquot5 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.2-aliquot5 JIC53_GlucoseO2_0.20_Internal_2_1 JIC53_GlucoseO2_0.20_Internal_2_1.txt glucose 0.2 l/hr -G-0.2-aliquot6 internal metabolite extraction 4 UO:microliter 200 UO:microliter G-0.2-aliquot6 JIC54_GlucoseO2_0.20_Internal_3_1 JIC54_GlucoseO2_0.20_Internal_3_1.txt glucose 0.2 l/hr -G-0.07-aliquot1 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.07-aliquot1 JIC100_GlucoseO2_0.07_External_1_1 JIC100_GlucoseO2_0.07_External_1_1.txt glucose 0.07 l/hr -G-0.07-aliquot1 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.07-aliquot1 JIC100_GlucoseO2_0.07_External_1_2 JIC100_GlucoseO2_0.07_External_1_2.txt glucose 0.07 l/hr -G-0.07-aliquot2 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.07-aliquot2 JIC101_GlucoseO2_0.07_External_2_1 JIC101_GlucoseO2_0.07_External_2_1.txt glucose 0.07 l/hr -G-0.07-aliquot3 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.07-aliquot3 JIC102_GlucoseO2_0.07_External_3_1 JIC102_GlucoseO2_0.07_External_3_1.txt glucose 0.07 l/hr -G-0.1-aliquot1 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.1-aliquot1 JIC103_GlucoseO2_0.10_External_1_1 JIC103_GlucoseO2_0.10_External_1_1.txt glucose 0.1 l/hr -G-0.1-aliquot2 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.1-aliquot2 JIC104_GlucoseO2_0.10_External_2_1 JIC104_GlucoseO2_0.10_External_2_1.txt glucose 0.1 l/hr -G-0.1-aliquot3 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.1-aliquot3 JIC105_GlucoseO2_0.10_External_3_1 JIC105_GlucoseO2_0.10_External_3_1.txt glucose 0.1 l/hr -G-0.2-aliquot1 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.2-aliquot1 JIC106_GlucoseO2_0.20_External_1_1 JIC106_GlucoseO2_0.20_External_1_1.txt glucose 0.2 l/hr -G-0.2-aliquot2 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.2-aliquot2 JIC107_GlucoseO2_0.20_External_2_1 JIC107_GlucoseO2_0.20_External_2_1.txt glucose 0.2 l/hr -G-0.2-aliquot3 external metabolite extraction 20 UO:microliter 1000 UO:microliter G-0.2-aliquot3 JIC108_GlucoseO2_0.20_External_3_1 JIC108_GlucoseO2_0.20_External_3_1.txt glucose 0.2 l/hr -E-0.07-aliquot1 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.07-aliquot1 JIC37_Ethanol_0.07_Internal_1_1 JIC37_Ethanol_0.07_Internal_1_1.txt ethanol 0.07 l/hr -E-0.07-aliquot1 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.07-aliquot1 JIC37_Ethanol_0.07_Internal_1_2 JIC37_Ethanol_0.07_Internal_1_2.txt ethanol 0.07 l/hr -E-0.07-aliquot1 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.07-aliquot1 JIC37_Ethanol_0.07_Internal_1_3 JIC37_Ethanol_0.07_Internal_1_3.txt ethanol 0.07 l/hr -E-0.07-aliquot2 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.07-aliquot2 JIC38_Ethanol_0.07_Internal_2_1 JIC38_Ethanol_0.07_Internal_2_1.txt ethanol 0.07 l/hr -E-0.07-aliquot3 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.07-aliquot3 JIC39_Ethanol_0.07_Internal_3_1 JIC39_Ethanol_0.07_Internal_3_1.txt ethanol 0.07 l/hr -E-0.1-aliquot1 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.1-aliquot1 JIC40_Ethanol_0.10_Internal_1_1 JIC40_Ethanol_0.10_Internal_1_1.txt ethanol 0.1 l/hr -E-0.1-aliquot2 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.1-aliquot2 JIC41_Ethanol_0.10_Internal_2_1 JIC41_Ethanol_0.10_Internal_2_1.txt ethanol 0.1 l/hr -E-0.1-aliquot3 internal metabolite extraction 4 UO:microliter 200 UO:microliter E-0.1-aliquot3 JIC42_Ethanol_0.10_Internal_3_1 JIC42_Ethanol_0.10_Internal_3_1.txt ethanol 0.1 l/hr -E-0.07-aliquot4 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.07-aliquot4 JIC91_Ethanol_0.07_External_1_1 JIC91_Ethanol_0.07_External_1_1.txt ethanol 0.07 l/hr -E-0.07-aliquot4 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.07-aliquot4 JIC91_Ethanol_0.07_External_1_2 JIC91_Ethanol_0.07_External_1_2.txt ethanol 0.07 l/hr -E-0.07-aliquot4 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.07-aliquot4 JIC91_Ethanol_0.07_External_1_3 JIC91_Ethanol_0.07_External_1_3.txt ethanol 0.07 l/hr -E-0.07-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.07-aliquot5 JIC92_Ethanol_0.07_External_2_1 JIC92_Ethanol_0.07_External_2_1.txt ethanol 0.07 l/hr -E-0.07-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.07-aliquot6 JIC93_Ethanol_0.07_External_3_1 JIC93_Ethanol_0.07_External_3_1.txt ethanol 0.07 l/hr -E-0.1-aliquot4 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.1-aliquot4 JIC94_Ethanol_0.10_External_1_1 JIC94_Ethanol_0.10_External_1_1.txt ethanol 0.1 l/hr -E-0.1-aliquot5 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.1-aliquot5 JIC95_Ethanol_0.10_External_2_1 JIC95_Ethanol_0.10_External_2_1.txt ethanol 0.1 l/hr -E-0.1-aliquot6 external metabolite extraction 20 UO:microliter 1000 UO:microliter E-0.1-aliquot6 JIC96_Ethanol_0.10_External_3_1 JIC96_Ethanol_0.10_External_3_1.txt ethanol 0.1 l/hr +"Sample Name" "Material Type" "Term Source REF" "Term Accession Number" "Protocol REF" "Parameter Value[standard volume]" "Unit" "Term Source REF" "Term Accession Number" "Parameter Value[sample volume]" "Unit" "Term Source REF" "Term Accession Number" "Extract Name" "MS Assay Name" "Raw Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"C-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "JIC83_Sulphate_0.07_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "JIC84_Sulphate_0.07_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "JIC82_Sulphate_0.07_External_1_2.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "JIC82_Sulphate_0.07_External_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"P-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_microarray.txt b/src/test/resources/test-data/BII-I-1/a_microarray.txt index dcacae88..6027228c 100644 --- a/src/test/resources/test-data/BII-I-1/a_microarray.txt +++ b/src/test/resources/test-data/BII-I-1/a_microarray.txt @@ -1,15 +1,15 @@ -Sample Name Protocol REF Extract Name Protocol REF Labeled Extract Name Label Protocol REF Hybridization Assay Name Comment[ArrayExpress Accession] Comment[ArrayExpress Raw Data URL] Comment[ArrayExpress Processed Data URL] Array Design REF Scan Name Array Data File Data Transformation Name Derived Array Data File Factor Value[dose] Unit Factor Value[exposure time] Unit Factor Value[compound] -NZ_0hrs_Grow_1 mRNA extraction NZ_0hrs_Sample_1_Extract biotin labeling NZ_0hrs_Sample_1_Labelled biotin EukGE-WS4 NZ_0hrs_Sample_1_Labelled_Hyb1 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1 E-MAXD-4-raw-data-426648549.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 0 UO:hour -NZ_0hrs_Grow_1 mRNA extraction NZ_1hrs_Drug_Sample_1_Extract biotin labeling NZ_1hrs_Drug_Sample_1_Labelled biotin EukGE-WS4 NZ_1hrs_Drug_Sample_1_Labelled_Hyb3 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3 E-MAXD-4-raw-data-426648567.txt data processing E-MAXD-4-processed-data-1342566476.txt 200 ng /ml 1 UO:hour CHEBI:rapamycin -NZ_0hrs_Grow_1 mRNA extraction NZ_2hrs_Drug_Sample_1_Extract biotin labeling NZ_2hrs_Drug_Sample_1_Labelled biotin EukGE-WS4 NZ_2hrs_Drug_Sample_1_Labelled_Hyb7 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7 E-MAXD-4-raw-data-426648585.txt data processing E-MAXD-4-processed-data-1342566476.txt 200 ng /ml 2 UO:hour CHEBI:rapamycin -NZ_0hrs_Grow_1 mRNA extraction NZ_4hrs_Drug_Sample_1_Extract biotin labeling NZ_4hrs_Drug_Sample_1_Labelled biotin EukGE-WS4 NZ_4hrs_Drug_Sample_1_Labelled_Hyb11 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11 E-MAXD-4-raw-data-426648603.txt data processing E-MAXD-4-processed-data-1342566476.txt 200 ng /ml 4 UO:hour CHEBI:rapamycin -NZ_0hrs_Grow_1 mRNA extraction NZ_2hrs_Vehicle_Sample_1_Extract biotin labeling NZ_2hrs_Vehicle_Sample_1_Labelled biotin EukGE-WS4 NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9 E-MAXD-4-raw-data-426648639.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 2 UO:hour drug vehicle (90% ethanol/10% tween-20) -NZ_0hrs_Grow_1 mRNA extraction NZ_4hrs_Vehicle_Sample_1_Extract biotin labeling NZ_4hrs_Vehicle_Sample_1_Labelled biotin EukGE-WS4 NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13 E-MAXD-4-raw-data-426648657.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 4 UO:hour drug vehicle (90% ethanol/10% tween-20) -NZ_0hrs_Grow_1 mRNA extraction NZ_1hrs_Vehicle_Sample_1_Extract biotin labeling NZ_1hrs_Vehicle_Sample_1_Labelled biotin EukGE-WS4 NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5 E-MAXD-4-raw-data-426648621.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 1 UO:hour drug vehicle (90% ethanol/10% tween-20) -NZ_0hrs_Grow_2 mRNA extraction NZ_0hrs_Sample_2_Extract biotin labeling NZ_0hrs_Sample_2_Labelled biotin EukGE-WS4 NZ_0hrs_Sample_2_Labelled_Hyb2 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2 E-MAXD-4-raw-data-426648675.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 0 UO:hour -NZ_0hrs_Grow_2 mRNA extraction NZ_1hrs_Drug_Sample_2_Extract biotin labeling NZ_1hrs_Drug_Sample_2_Labelled biotin EukGE-WS4 NZ_1hrs_Drug_Sample_2_Labelled_Hyb4 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4 E-MAXD-4-raw-data-426648693.txt data processing E-MAXD-4-processed-data-1342566476.txt 200 ng /ml 1 UO:hour CHEBI:rapamycin -NZ_0hrs_Grow_2 mRNA extraction NZ_4hrs_Drug_Sample_2_Extract biotin labeling NZ_4hrs_Drug_Sample_2_Labelled biotin EukGE-WS4 NZ_4hrs_Drug_Sample_2_Labelled_Hyb12 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12 E-MAXD-4-raw-data-426648729.txt data processing E-MAXD-4-processed-data-1342566476.txt 200 ng /ml 4 UO:hour CHEBI:rapamycin -NZ_0hrs_Grow_2 mRNA extraction NZ_2hrs_Drug_Sample_2_Extract biotin labeling NZ_2hrs_Drug_Sample_2_Labelled biotin EukGE-WS4 NZ_2hrs_Drug_Sample_2_Labelled_Hyb8 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8 E-MAXD-4-raw-data-426648711.txt data processing E-MAXD-4-processed-data-1342566476.txt 200 ng /ml 2 UO:hour CHEBI:rapamycin -NZ_0hrs_Grow_2 mRNA extraction NZ_1hrs_Vehicle_Sample_2_Extract biotin labeling NZ_1hrs_Vehicle_Sample_2_Labelled biotin EukGE-WS4 NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6 E-MAXD-4-raw-data-426648747.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 1 UO:hour drug vehicle (90% ethanol/10% tween-20) -NZ_0hrs_Grow_2 mRNA extraction NZ_2hrs_Vehicle_Sample_2_Extract biotin labeling NZ_2hrs_Vehicle_Sample_2_Labelled biotin EukGE-WS4 NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10 E-MAXD-4-raw-data-426648765.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 2 UO:hour drug vehicle (90% ethanol/10% tween-20) -NZ_0hrs_Grow_2 mRNA extraction NZ_4hrs_Vehicle_Sample_2_Extract biotin labeling NZ_4hrs_Vehicle_Sample_2_Labelled biotin EukGE-WS4 NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14 E-MEXP-115 E-MEXP-115 E-MEXP-115 A-AFFY-27 NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14 E-MAXD-4-raw-data-426648783.txt data processing E-MAXD-4-processed-data-1342566476.txt 0 ng /ml 4 UO:hour drug vehicle (90% ethanol/10% tween-20) +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Comment[ArrayExpress Accession]" "Comment[ArrayExpress Raw Data URL]" "Comment[ArrayExpress Processed Data URL]" "Array Design REF" "Scan Name" "Array Data File" "Data Transformation Name" "Derived Array Data File" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" +"NZ_0hrs_Grow1_Sample_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_1hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow2_Sample_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_1hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_2hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_proteome.txt b/src/test/resources/test-data/BII-I-1/a_proteome.txt index 3567ca65..ff906e1e 100644 --- a/src/test/resources/test-data/BII-I-1/a_proteome.txt +++ b/src/test/resources/test-data/BII-I-1/a_proteome.txt @@ -1,19 +1,19 @@ -Sample Name Protocol REF Extract Name Protocol REF Labeled Extract Name Label MS Assay Name Comment[PRIDE Accession] Comment[PRIDE Processed Data Accession] Raw Spectral Data File Normalization Name Protein Assignment File Peptide Assignment File Post Translational Modification Assignment File Data Transformation Name Derived Spectral Data File Factor Value[limiting nutrient] Factor Value[rate] Unit -S-0.1-aliquot11 protein extraction S-0.1 ITRAQ labeling JC_S-0.1 iTRAQ reagent 117 8761 8761 8761 spectrum.mzdata norm1 proteins.csv peptides.csv ptms.csv datatransformation1 PRIDE_Exp_Complete_Ac_8761.xml sulphur 0.1 l/hr -C-0.1-aliquot11 protein extraction C-0.1 ITRAQ labeling JC_C-0.1 iTRAQ reagent 116 8761 8761 8761 spectrum.mzdata norm1 proteins.csv peptides.csv ptms.csv datatransformation1 PRIDE_Exp_Complete_Ac_8761.xml carbon 0.1 l/hr -N-0.1-aliquot11 protein extraction N-0.1 ITRAQ labeling JC_N-0.1 iTRAQ reagent 115 8761 8761 8761 spectrum.mzdata norm1 proteins.csv peptides.csv ptms.csv datatransformation1 PRIDE_Exp_Complete_Ac_8761.xml nitrogen 0.1 l/hr -S-0.1-aliquot11 protein extraction S-0.1 ITRAQ labeling Pool1 iTRAQ reagent 114 8761 8761 8761 spectrum.mzdata norm1 proteins.csv peptides.csv ptms.csv datatransformation1 PRIDE_Exp_Complete_Ac_8761.xml l/hr -C-0.1-aliquot11 protein extraction C-0.1 ITRAQ labeling Pool1 iTRAQ reagent 114 8761 8761 8761 spectrum.mzdata norm1 proteins.csv peptides.csv ptms.csv datatransformation1 PRIDE_Exp_Complete_Ac_8761.xml l/hr -N-0.1-aliquot11 protein extraction N-0.1 ITRAQ labeling Pool1 iTRAQ reagent 114 8761 8761 8761 spectrum.mzdata norm1 proteins.csv peptides.csv ptms.csv datatransformation1 PRIDE_Exp_Complete_Ac_8761.xml l/hr -C-0.2-aliquot11 protein extraction C-0.2 ITRAQ labeling JC_C-0.2 iTRAQ reagent 117 8762 8762 8762 spectrum.mzdata norm2 proteins.csv peptides.csv ptms.csv datatransformation2 PRIDE_Exp_Complete_Ac_8762.xml carbon 0.2 l/hr -N-0.2-aliquot11 protein extraction N-0.2 ITRAQ labeling JC_N-0.2 iTRAQ reagent 116 8762 8762 8762 spectrum.mzdata norm2 proteins.csv peptides.csv ptms.csv datatransformation2 PRIDE_Exp_Complete_Ac_8762.xml nitrogen 0.2 l/hr -P-0.1-aliquot11 protein extraction P-0.1 ITRAQ labeling JC_P-0.1 iTRAQ reagent 115 8762 8762 8762 spectrum.mzdata norm2 proteins.csv peptides.csv ptms.csv datatransformation2 PRIDE_Exp_Complete_Ac_8762.xml phosphorus 0.1 l/hr -C-0.2-aliquot11 protein extraction C-0.2 ITRAQ labeling Pool2 iTRAQ reagent 114 8762 8762 8762 spectrum.mzdata norm2 proteins.csv peptides.csv ptms.csv datatransformation2 PRIDE_Exp_Complete_Ac_8762.xml l/hr -N-0.2-aliquot11 protein extraction N-0.2 ITRAQ labeling Pool2 iTRAQ reagent 114 8762 8762 8762 spectrum.mzdata norm2 proteins.csv peptides.csv ptms.csv datatransformation2 PRIDE_Exp_Complete_Ac_8762.xml l/hr -P-0.1-aliquot11 protein extraction P-0.1 ITRAQ labeling Pool2 iTRAQ reagent 114 8762 8762 8762 spectrum.mzdata norm2 proteins.csv peptides.csv ptms.csv datatransformation2 PRIDE_Exp_Complete_Ac_8762.xml l/hr -P-0.2-aliquot11 protein extraction P-0.2 ITRAQ labeling JC_P-0.2 iTRAQ reagent 116 8763 8763 8763 spectrum.mzdata norm3 proteins.csv peptides.csv ptms.csv datatransformation3 PRIDE_Exp_Complete_Ac_8763.xml phosphorus 0.2 l/hr -S-0.2-aliquot11 protein extraction S-0.2 ITRAQ labeling JC_S-0.2 iTRAQ reagent 115 8763 8763 8763 spectrum.mzdata norm3 proteins.csv peptides.csv ptms.csv datatransformation3 PRIDE_Exp_Complete_Ac_8763.xml sulphur 0.2 l/hr -P-0.2-aliquot11 protein extraction P-0.2 ITRAQ labeling Pool3 iTRAQ reagent 117 8763 8763 8763 spectrum.mzdata norm3 proteins.csv peptides.csv ptms.csv datatransformation3 PRIDE_Exp_Complete_Ac_8763.xml l/hr -S-0.2-aliquot11 protein extraction S-0.2 ITRAQ labeling Pool3 iTRAQ reagent 117 8763 8763 8763 spectrum.mzdata norm3 proteins.csv peptides.csv ptms.csv datatransformation3 PRIDE_Exp_Complete_Ac_8763.xml l/hr -P-0.2-aliquot11 protein extraction P-0.2 ITRAQ labeling Pool3 iTRAQ reagent 114 8763 8763 8763 spectrum.mzdata norm3 proteins.csv peptides.csv ptms.csv datatransformation3 PRIDE_Exp_Complete_Ac_8763.xml l/hr -S-0.2-aliquot11 protein extraction S-0.2 ITRAQ labeling Pool3 iTRAQ reagent 114 8763 8763 8763 spectrum.mzdata norm3 proteins.csv peptides.csv ptms.csv datatransformation3 PRIDE_Exp_Complete_Ac_8763.xml l/hr +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "MS Assay Name" "Comment[PRIDE Accession]" "Comment[PRIDE Processed Data Accession]" "Raw Spectral Data File" "Normalization Name" "Protein Assignment File" "Peptide Assignment File" "Post Translational Modification Assignment File" "Data Transformation Name" "Derived Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "JC_S-0.1" "iTRAQ reagent 117" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "JC_C-0.1" "iTRAQ reagent 116" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "JC_N-0.1" "iTRAQ reagent 115" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "JC_C-0.2" "iTRAQ reagent 117" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "JC_N-0.2" "iTRAQ reagent 116" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "JC_P-0.1" "iTRAQ reagent 115" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "JC_P-0.2" "iTRAQ reagent 116" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "JC_S-0.2" "iTRAQ reagent 115" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_transcriptome.txt b/src/test/resources/test-data/BII-I-1/a_transcriptome.txt index 5181e069..36f6a420 100644 --- a/src/test/resources/test-data/BII-I-1/a_transcriptome.txt +++ b/src/test/resources/test-data/BII-I-1/a_transcriptome.txt @@ -1,49 +1,49 @@ -Sample Name Protocol REF Extract Name Protocol REF Labeled Extract Name Label Protocol REF Hybridization Assay Name Array Design REF Scan Name Array Data File Normalization Name Derived Array Data File Factor Value[limiting nutrient] Factor Value[rate] Unit -C-0.07-aliquot1 mRNA extraction C-0.07-aliquot1 biotin labeling C-0.07-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3908 A-AFFY-27 SCAN:MEXP:3908 E-MEXP-115-raw-data-331217737.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.07 l/hr -C-0.07-aliquot2 mRNA extraction C-0.07-aliquot2 biotin labeling C-0.07-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3909 A-AFFY-27 SCAN:MEXP:3909 E-MEXP-115-raw-data-331217860.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.07 l/hr -C-0.07-aliquot3 mRNA extraction C-0.07-aliquot3 biotin labeling C-0.07-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3910 A-AFFY-27 SCAN:MEXP:3910 E-MEXP-115-raw-data-331217979.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.07 l/hr -C-0.07-aliquot4 mRNA extraction C-0.07-aliquot4 biotin labeling C-0.07-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3907 A-AFFY-27 SCAN:MEXP:3907 E-MEXP-115-raw-data-331217580.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.07 l/hr -C-0.1-aliquot1 mRNA extraction C-0.1-aliquot1 biotin labeling C-0.1-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3912 A-AFFY-27 SCAN:MEXP:3912 E-MEXP-115-raw-data-331218271.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.1 l/hr -C-0.1-aliquot2 mRNA extraction C-0.1-aliquot2 biotin labeling C-0.1-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3913 A-AFFY-27 SCAN:MEXP:3913 E-MEXP-115-raw-data-331218449.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.1 l/hr -C-0.1-aliquot3 mRNA extraction C-0.1-aliquot3 biotin labeling C-0.1-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3914 A-AFFY-27 SCAN:MEXP:3914 E-MEXP-115-raw-data-331218681.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.1 l/hr -C-0.1-aliquot4 mRNA extraction C-0.1-aliquot4 biotin labeling C-0.1-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3911 A-AFFY-27 SCAN:MEXP:3911 E-MEXP-115-raw-data-331218116.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.1 l/hr -C-0.2-aliquot1 mRNA extraction C-0.2-aliquot1 biotin labeling C-0.2-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3916 A-AFFY-27 SCAN:MEXP:3916 E-MEXP-115-raw-data-331219013.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.2 l/hr -C-0.2-aliquot2 mRNA extraction C-0.2-aliquot2 biotin labeling C-0.2-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3915 A-AFFY-27 SCAN:MEXP:3915 E-MEXP-115-raw-data-331218842.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.2 l/hr -C-0.2-aliquot3 mRNA extraction C-0.2-aliquot3 biotin labeling C-0.2-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3918 A-AFFY-27 SCAN:MEXP:3918 E-MEXP-115-raw-data-331219245.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.2 l/hr -C-0.2-aliquot4 mRNA extraction C-0.2-aliquot4 biotin labeling C-0.2-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3917 A-AFFY-27 SCAN:MEXP:3917 E-MEXP-115-raw-data-331219131.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt carbon 0.2 l/hr -N-0.07-aliquot1 mRNA extraction N-0.07-aliquot1 biotin labeling N-0.07-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3919 A-AFFY-27 SCAN:MEXP:3919 E-MEXP-115-raw-data-331219361.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.07 l/hr -N-0.07-aliquot2 mRNA extraction N-0.07-aliquot2 biotin labeling N-0.07-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3921 A-AFFY-27 SCAN:MEXP:3921 E-MEXP-115-raw-data-331219634.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.07 l/hr -N-0.07-aliquot3 mRNA extraction N-0.07-aliquot3 biotin labeling N-0.07-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3922 A-AFFY-27 SCAN:MEXP:3922 E-MEXP-115-raw-data-331219767.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.07 l/hr -N-0.07-aliquot4 mRNA extraction N-0.07-aliquot4 biotin labeling N-0.07-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3920 A-AFFY-27 SCAN:MEXP:3920 E-MEXP-115-raw-data-331219490.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.07 l/hr -N-0.1-aliquot1 mRNA extraction N-0.1-aliquot1 biotin labeling N-0.1-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3926 A-AFFY-27 SCAN:MEXP:3926 E-MEXP-115-raw-data-331220431.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.1 l/hr -N-0.1-aliquot2 mRNA extraction N-0.1-aliquot2 biotin labeling N-0.1-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3923 A-AFFY-27 SCAN:MEXP:3923 E-MEXP-115-raw-data-331219914.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.1 l/hr -N-0.1-aliquot3 mRNA extraction N-0.1-aliquot3 biotin labeling N-0.1-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3925 A-AFFY-27 SCAN:MEXP:3925 E-MEXP-115-raw-data-331220272.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.1 l/hr -N-0.1-aliquot4 mRNA extraction N-0.1-aliquot4 biotin labeling N-0.1-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3924 A-AFFY-27 SCAN:MEXP:3924 E-MEXP-115-raw-data-331220090.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.1 l/hr -N-0.2-aliquot1 mRNA extraction N-0.2-aliquot1 biotin labeling N-0.2-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3930 A-AFFY-27 SCAN:MEXP:3930 E-MEXP-115-raw-data-331221148.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.2 l/hr -N-0.2-aliquot2 mRNA extraction N-0.2-aliquot2 biotin labeling N-0.2-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3929 A-AFFY-27 SCAN:MEXP:3929 E-MEXP-115-raw-data-331220982.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.2 l/hr -N-0.2-aliquot3 mRNA extraction N-0.2-aliquot3 biotin labeling N-0.2-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3928 A-AFFY-27 SCAN:MEXP:3928 E-MEXP-115-raw-data-331220784.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.2 l/hr -N-0.2-aliquot4 mRNA extraction N-0.2-aliquot4 biotin labeling N-0.2-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3927 A-AFFY-27 SCAN:MEXP:3927 E-MEXP-115-raw-data-331220607.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt nitrogen 0.2 l/hr -P-0.07-aliquot1 mRNA extraction P-0.07-aliquot1 biotin labeling P-0.07-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3932 A-AFFY-27 SCAN:MEXP:3932 E-MEXP-115-raw-data-331221518.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.07 l/hr -P-0.07-aliquot2 mRNA extraction P-0.07-aliquot2 biotin labeling P-0.07-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3934 A-AFFY-27 SCAN:MEXP:3934 E-MEXP-115-raw-data-331221873.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.07 l/hr -P-0.07-aliquot3 mRNA extraction P-0.07-aliquot3 biotin labeling P-0.07-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3931 A-AFFY-27 SCAN:MEXP:3931 E-MEXP-115-raw-data-331221345.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.07 l/hr -P-0.07-aliquot4 mRNA extraction P-0.07-aliquot4 biotin labeling P-0.07-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3933 A-AFFY-27 SCAN:MEXP:3933 E-MEXP-115-raw-data-331221668.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.07 l/hr -P-0.1-aliquot1 mRNA extraction P-0.1-aliquot1 biotin labeling P-0.1-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3938 A-AFFY-27 SCAN:MEXP:3938 E-MEXP-115-raw-data-331222534.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.1 l/hr -P-0.1-aliquot2 mRNA extraction P-0.1-aliquot2 biotin labeling P-0.1-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3935 A-AFFY-27 SCAN:MEXP:3935 E-MEXP-115-raw-data-331222054.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.1 l/hr -P-0.1-aliquot3 mRNA extraction P-0.1-aliquot3 biotin labeling P-0.1-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3937 A-AFFY-27 SCAN:MEXP:3937 E-MEXP-115-raw-data-331222380.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.1 l/hr -P-0.1-aliquot4 mRNA extraction P-0.1-aliquot4 biotin labeling P-0.1-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3936 A-AFFY-27 SCAN:MEXP:3936 E-MEXP-115-raw-data-331222215.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.1 l/hr -P-0.2-aliquot1 mRNA extraction P-0.2-aliquot1 biotin labeling P-0.2-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3940 A-AFFY-27 SCAN:MEXP:3940 E-MEXP-115-raw-data-331222917.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.2 l/hr -P-0.2-aliquot2 mRNA extraction P-0.2-aliquot2 biotin labeling P-0.2-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3941 A-AFFY-27 SCAN:MEXP:3941 E-MEXP-115-raw-data-331223115.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.2 l/hr -P-0.2-aliquot3 mRNA extraction P-0.2-aliquot3 biotin labeling P-0.2-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3942 A-AFFY-27 SCAN:MEXP:3942 E-MEXP-115-raw-data-331223321.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.2 l/hr -P-0.2-aliquot4 mRNA extraction P-0.2-aliquot4 biotin labeling P-0.2-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3939 A-AFFY-27 SCAN:MEXP:3939 E-MEXP-115-raw-data-331222701.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt phosphorus 0.2 l/hr -S-0.07-aliquot1 mRNA extraction S-0.07-aliquot1 biotin labeling S-0.07-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3944 A-AFFY-27 SCAN:MEXP:3944 E-MEXP-115-raw-data-331223667.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.07 l/hr -S-0.07-aliquot2 mRNA extraction S-0.07-aliquot2 biotin labeling S-0.07-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3945 A-AFFY-27 SCAN:MEXP:3945 E-MEXP-115-raw-data-331223835.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.07 l/hr -S-0.07-aliquot3 mRNA extraction S-0.07-aliquot3 biotin labeling S-0.07-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3946 A-AFFY-27 SCAN:MEXP:3946 E-MEXP-115-raw-data-331223977.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.07 l/hr -S-0.07-aliquot4 mRNA extraction S-0.07-aliquot4 biotin labeling S-0.07-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3943 A-AFFY-27 SCAN:MEXP:3943 E-MEXP-115-raw-data-331223501.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.07 l/hr -S-0.1-aliquot1 mRNA extraction S-0.1-aliquot1 biotin labeling S-0.1-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3948 A-AFFY-27 SCAN:MEXP:3948 E-MEXP-115-raw-data-331224301.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.1 l/hr -S-0.1-aliquot2 mRNA extraction S-0.1-aliquot2 biotin labeling S-0.1-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3947 A-AFFY-27 SCAN:MEXP:3947 E-MEXP-115-raw-data-331224145.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.1 l/hr -S-0.1-aliquot3 mRNA extraction S-0.1-aliquot3 biotin labeling S-0.1-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3950 A-AFFY-27 SCAN:MEXP:3950 E-MEXP-115-raw-data-331224703.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.1 l/hr -S-0.1-aliquot4 mRNA extraction S-0.1-aliquot4 biotin labeling S-0.1-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3949 A-AFFY-27 SCAN:MEXP:3949 E-MEXP-115-raw-data-331224480.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.1 l/hr -S-0.2-aliquot1 mRNA extraction S-0.2-aliquot1 biotin labeling S-0.2-aliquot1 CHEBI:biotin EukGE-WS4 HYB:MEXP:3951 A-AFFY-27 SCAN:MEXP:3951 E-MEXP-115-raw-data-331224884.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.2 l/hr -S-0.2-aliquot2 mRNA extraction S-0.2-aliquot2 biotin labeling S-0.2-aliquot2 CHEBI:biotin EukGE-WS4 HYB:MEXP:3954 A-AFFY-27 SCAN:MEXP:3954 E-MEXP-115-raw-data-331225401.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.2 l/hr -S-0.2-aliquot3 mRNA extraction S-0.2-aliquot3 biotin labeling S-0.2-aliquot3 CHEBI:biotin EukGE-WS4 HYB:MEXP:3952 A-AFFY-27 SCAN:MEXP:3952 E-MEXP-115-raw-data-331225097.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.2 l/hr -S-0.2-aliquot4 mRNA extraction S-0.2-aliquot4 biotin labeling S-0.2-aliquot4 CHEBI:biotin EukGE-WS4 HYB:MEXP:3953 A-AFFY-27 SCAN:MEXP:3953 E-MEXP-115-raw-data-331225235.txt GCRMA normalization E-MEXP-115-processed-data-1341986893.txt sulphur 0.2 l/hr +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Array Design REF" "Scan Name" "Array Data File" "Normalization Name" "Derived Array Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" diff --git a/src/test/resources/test-data/BII-I-1/i_investigation.txt b/src/test/resources/test-data/BII-I-1/i_investigation.txt index 106a3fdc..b4f074a4 100644 --- a/src/test/resources/test-data/BII-I-1/i_investigation.txt +++ b/src/test/resources/test-data/BII-I-1/i_investigation.txt @@ -1,8 +1,8 @@ ONTOLOGY SOURCE REFERENCE -Term Source Name "" "OBI" "BTO" "NEWT" "UO" "CHEBI" "PATO" "EFO" -Term Source File "" "" "ArrayExpress Experimental Factor Ontology" "" "" "" "" "" -Term Source Version "" "" "v 1.26" "v 1.26" "v 1.26" "v 1.26" "v 1.26" "v 1.26" -Term Source Description "" "" "BRENDA tissue / enzyme source" "NEWT UniProt Taxonomy Database" "Unit Ontology" "Chemical Entities of Biological Interest" "Phenotypic qualities (properties)" "ArrayExpress Experimental Factor Ontology" +Term Source Name "" "OBI" "OBI_BCGO" "NCBITAXON" "CL" "e.g. OBI" "CHEBI" "RID" "EHDAA" "EFO" "FYPO" "BTO" "NEWT" "UO" "PATO" +Term Source File "" "" "http://data.bioontology.org/ontologies/OBI_BCGO" "http://data.bioontology.org/ontologies/NCBITAXON" "http://data.bioontology.org/ontologies/CL" "" "http://bioportal.bioontology.org/ontologies/49736" "http://bioportal.bioontology.org/ontologies/49816" "http://bioportal.bioontology.org/ontologies/45254" "http://bioportal.bioontology.org/ontologies/49794" "http://bioportal.bioontology.org/ontologies/49892" "ArrayExpress Experimental Factor Ontology" "" "" "" +Term Source Version "" "" "7" "2" "43" "" "49736" "49816" "45254" "49794" "49892" "v 1.26" "v 1.26" "v 1.26" "v 1.26" +Term Source Description "" "" "Beta Cell Genomics Ontology" "National Center for Biotechnology Information (NCBI) Organismal Classification" "Cell Ontology" "" "Chemical entities of biological interest" "RadLex" "Human developmental anatomy, abstract version" "Experimental Factor Ontology" "Fission Yeast Phenotype Ontology" "BRENDA tissue / enzyme source" "NEWT UniProt Taxonomy Database" "Unit Ontology" "Phenotypic qualities (properties)" INVESTIGATION Investigation Identifier "BII-I-1" Investigation Title "Growth control of the eukaryote cell: a systems biology study in yeast" @@ -10,16 +10,19 @@ Investigation Description "Background Cell growth underlies many key cellular an Investigation Submission Date "2007-04-30" Investigation Public Release Date "2009-03-10" Comment [Created with configuration] "" -Comment [Last Opened With Configuration] "isaconfig-default_v2011-02-18" -Comment [Last opened with configuration] "isaconfig-default_v2011-02-18" +Comment [Last Opened With Configuration] "isaconfig-default_v2013-02-13-augmentedGigaDB" +Comment [Owning Organisation URI] "" +Comment [Consortium URI] "" +Comment [Principal Investigator URI] "" +Comment [Investigation keywords] "" INVESTIGATION PUBLICATIONS -Investigation PubMed ID "17439666" -Investigation Publication DOI "doi:10.1186/jbiol54" -Investigation Publication Author List "Castrillo JI, Zeef LA, Hoyle DC, Zhang N, Hayes A, Gardner DC, Cornell MJ, Petty J, Hakes L, Wardleworth L, Rash B, Brown M, Dunn WB, Broadhurst D, O'Donoghue K, Hester SS, Dunkley TP, Hart SR, Swainston N, Li P, Gaskell SJ, Paton NW, Lilley KS, Kell DB, Oliver SG." -Investigation Publication Title "Growth control of the eukaryote cell: a systems biology study in yeast." -Investigation Publication Status "indexed in Pubmed" -Investigation Publication Status Term Accession Number "" -Investigation Publication Status Term Source REF "" +Investigation PubMed ID "17439666" "1231222" "1234121" +Investigation Publication DOI "doi:10.1186/jbiol54" "" "" +Investigation Publication Author List "Castrillo JI, Zeef LA, Hoyle DC, Zhang N, Hayes A, Gardner DC, Cornell MJ, Petty J, Hakes L, Wardleworth L, Rash B, Brown M, Dunn WB, Broadhurst D, O'Donoghue K, Hester SS, Dunkley TP, Hart SR, Swainston N, Li P, Gaskell SJ, Paton NW, Lilley KS, Kell DB, Oliver SG." "Piatnochka IT." "Monticelli G, Santori S." +Investigation Publication Title "Growth control of the eukaryote cell: a systems biology study in yeast." "Effect of prednisolone on the cardiovascular system in complex treatment of newly detected pulmonary tuberculosis" "Indications for the use of prostheses in the treatment of pathological fractures due to primary malignant and metastatic tumours of bone." +Investigation Publication Status "indexed in Pubmed" "Published" "Published" +Investigation Publication Status Term Accession Number "" "" "" +Investigation Publication Status Term Source REF "" "" "" INVESTIGATION CONTACTS Investigation Person Last Name "Oliver" "Juan" "Leo" Investigation Person First Name "Stephen" "Castrillo" "Zeef" @@ -32,16 +35,19 @@ Investigation Person Affiliation "Faculty of Life Sciences, Michael Smith Buildi Investigation Person Roles "corresponding author" "author" "author" Investigation Person Roles Term Accession Number "" "" "" Investigation Person Roles Term Source REF "" "" "" +Comment[Investigation Person REF] "" "" "" STUDY Study Identifier "BII-S-1" Study Title "Study of the impact of changes in flux on the transcriptome, proteome, endometabolome and exometabolome of the yeast Saccharomyces cerevisiae under different nutrient limitations" Study Description "We wished to study the impact of growth rate on the total complement of mRNA molecules, proteins, and metabolites in S. cerevisiae, independent of any nutritional or other physiological effects. To achieve this, we carried out our analyses on yeast grown in steady-state chemostat culture under four different nutrient limitations (glucose, ammonium, phosphate, and sulfate) at three different dilution (that is, growth) rates (D = u = 0.07, 0.1, and 0.2/hour, equivalent to population doubling times (Td) of 10 hours, 7 hours, and 3.5 hours, respectively; u = specific growth rate defined as grams of biomass generated per gram of biomass present per unit time)." +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" Study File Name "s_BII-S-1.txt" STUDY DESIGN DESCRIPTORS Study Design Type "intervention design" -Study Design Type Term Accession Number "0000115" +Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000115" Study Design Type Term Source REF "OBI" STUDY PUBLICATIONS Study PubMed ID "17439666" @@ -53,29 +59,29 @@ Study Publication Status Term Accession Number "" Study Publication Status Term Source REF "" STUDY FACTORS Study Factor Name "limiting nutrient" "rate" -Study Factor Type "chemical compound" "rate" -Study Factor Type Term Accession Number "37577" "0000161" +Study Factor Type "chemical entity" "rate" +Study Factor Type Term Accession Number "http://purl.obolibrary.org/obo/CHEBI_24431" "http://purl.obolibrary.org/obo/PATO_0000161" Study Factor Type Term Source REF "CHEBI" "PATO" STUDY ASSAYS -Study Assay File Name "a_metabolome.txt" "a_proteome.txt" "a_transcriptome.txt" -Study Assay Measurement Type "metabolite profiling" "protein expression profiling" "transcription profiling" -Study Assay Measurement Type Term Accession Number "0000366" "" "0000424" +Study Assay File Name "a_proteome.txt" "a_metabolome.txt" "a_transcriptome.txt" +Study Assay Measurement Type "protein expression profiling" "metabolite profiling" "transcription profiling" +Study Assay Measurement Type Term Accession Number "" "0000366" "0000424" Study Assay Measurement Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Type "mass spectrometry" "mass spectrometry" "DNA microarray" Study Assay Technology Type Term Accession Number "" "" "0400148" Study Assay Technology Type Term Source REF "OBI" "OBI" "OBI" -Study Assay Technology Platform "LC-MS/MS" "iTRAQ" "Affymetrix" +Study Assay Technology Platform "iTRAQ" "LC-MS/MS" "Affymetrix" STUDY PROTOCOLS Study Protocol Name "growth protocol" "mRNA extraction" "protein extraction" "biotin labeling" "ITRAQ labeling" "EukGE-WS4" "metabolite extraction" -Study Protocol Type "growth" "mRNA extraction" "protein extraction" "labeling" "labeling" "hybridization" "extraction" -Study Protocol Type Term Accession Number "growth" "mRNA extraction" "protein extraction" "labeling" "labeling" "hybridization" "extraction" +Study Protocol Type "growth" "RNA extraction" "extraction" "addition of molecular label" "addition of molecular label" "nucleic acid hybridization" "extraction" +Study Protocol Type Term Accession Number "" "http://purl.obolibrary.org/obo/OBI_0666666" "http://purl.obolibrary.org/obo/OBI_0302884" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0302903" "http://purl.obolibrary.org/obo/OBI_0302884" Study Protocol Type Term Source REF "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" -Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip � Sample Clean Up Module. The column was eluted in the first instance using 10 �l RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip � Expression Analysis technical manual. GeneChip � control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip � manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" +Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ??? Sample Clean Up Module. The column was eluted in the first instance using 10 ???l RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ??? Expression Analysis technical manual. GeneChip ??? control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ??? manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" Study Protocol URI "" "" "" "" "" "" "" Study Protocol Version "" "" "" "" "" "" "" -Study Protocol Parameters Name "" "" "" "" "" "" "sample volume;standard volume" -Study Protocol Parameters Name Term Accession Number "" "" "" "" "" "" ";" -Study Protocol Parameters Name Term Source REF "" "" "" "" "" "" ";" +Study Protocol Parameters Name "" "" "" "" "" "" "sampling" +Study Protocol Parameters Name Term Accession Number "" "" "" "" "" "" "" +Study Protocol Parameters Name Term Source REF "" "" "" "" "" "" "" Study Protocol Components Name "" "" "" "" "" "" "" Study Protocol Components Type "" "" "" "" "" "" "" Study Protocol Components Type Term Accession Number "" "" "" "" "" "" "" @@ -92,16 +98,19 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" +Comment[Study Person REF] "" "" "" STUDY Study Identifier "BII-S-2" Study Title "A time course analysis of transcription response in yeast treated with rapamycin, a specific inhibitor of the TORC1 complex: impact on yeast growth" Study Description "Comprehensive high-throughput analyses at the levels of mRNAs, proteins, and metabolites, and studies on gene expression patterns are required for systems biology studies of cell growth [4,26-29]. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. The effect of rapamycin were studied as follows: a culture growing at mid-exponential phase was divided into two. Rapamycin (200 ng/ml) was added to one half, and the drug's solvent to the other, as the control. Samples were taken at 0, 1, 2 and 4 h after treatment. Gene expression at the mRNA level was investigated by transcriptome analysis using Affymetrix hybridization arrays." +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" Study File Name "s_BII-S-2.txt" STUDY DESIGN DESCRIPTORS Study Design Type "time series design" -Study Design Type Term Accession Number "0500020" +Study Design Type Term Accession Number "" Study Design Type Term Source REF "OBI" STUDY PUBLICATIONS Study PubMed ID "17439666" @@ -113,9 +122,9 @@ Study Publication Status Term Accession Number "" Study Publication Status Term Source REF "" STUDY FACTORS Study Factor Name "compound" "exposure time" "dose" -Study Factor Type "compound" "time" "dose" -Study Factor Type Term Accession Number "0000368" "0000721" "0000428" -Study Factor Type Term Source REF "EFO" "EFO" "EFO" +Study Factor Type "chemical entity" "time" "dose" +Study Factor Type Term Accession Number "http://purl.obolibrary.org/obo/CHEBI_24431" "http://purl.obolibrary.org/obo/PATO_0000165" "http://purl.obolibrary.org/obo/OBI_0000984" +Study Factor Type Term Source REF "CHEBI" "OBI_BCGO" "OBI" STUDY ASSAYS Study Assay File Name "a_microarray.txt" Study Assay Measurement Type "transcription profiling" @@ -126,20 +135,20 @@ Study Assay Technology Type Term Accession Number "0400148" Study Assay Technology Type Term Source REF "OBI" Study Assay Technology Platform "Affymetrix" STUDY PROTOCOLS -Study Protocol Name "EukGE-WS4" "growth" "mRNA extraction" "biotin labeling" -Study Protocol Type "hybridization" "growth" "mRNA extraction" "labeling" -Study Protocol Type Term Accession Number "hybridization" "" "" "" -Study Protocol Type Term Source REF "OBI" "" "" "" -Study Protocol Description "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip � Expression Analysis technical manual. GeneChip � control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip � manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5mins, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 �l 1x hybridisation buffer and incubated at 45 C for 10 min. 200 �l of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "The culture was grown in YMB minimum media + 2% glucose + supplement to early exponential growth (OD ~0.32)" "1. Biomass samples (45ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5 min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5 min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip � Sample Clean Up Module. The column was eluted in the first instance using 10 �l RNase-free water, and for a second time using 11 �l RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." -Study Protocol URI "" "" "" "" -Study Protocol Version "" "" "" "" -Study Protocol Parameters Name "" "" "" "" -Study Protocol Parameters Name Term Accession Number "" "" "" "" -Study Protocol Parameters Name Term Source REF "" "" "" "" -Study Protocol Components Name "" "" "" "" -Study Protocol Components Type "" "" "" "" -Study Protocol Components Type Term Accession Number "" "" "" "" -Study Protocol Components Type Term Source REF "" "" "" "" +Study Protocol Name "EukGE-WS4" "mRNA extraction" "biotin labeling" "extraction" "labeling" "NMR spectroscopy" "nmr assay" "data normalization" "data transformation" +Study Protocol Type "nucleic acid hybridization" "RNA extraction" "addition of molecular label" "extraction" "addition of molecular label" "NMR spectroscopy" "nmr assay" "normalization data transformation" "data transformation" +Study Protocol Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0302903" "http://purl.obolibrary.org/obo/OBI_0666666" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0302884" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0000623" "" "http://purl.obolibrary.org/obo/OBI_0200169" "http://purl.obolibrary.org/obo/OBI_0200000" +Study Protocol Type Term Source REF "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" "" "OBI" "OBI" +Study Protocol Description "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ??? Expression Analysis technical manual. GeneChip ??? control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ??? manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5mins, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ???l 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ???l of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "1. Biomass samples (45ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5 min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5 min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ??? Sample Clean Up Module. The column was eluted in the first instance using 10 ???l RNase-free water, and for a second time using 11 ???l RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "" "" "" "" "" +Study Protocol URI "" "" "" "" "" "" "" "" "" +Study Protocol Version "" "" "" "" "" "" "" "" "" +Study Protocol Parameters Name "" "" "" "" "" ";;;" "" "" "" +Study Protocol Parameters Name Term Accession Number "" "" "" "" "" "" "" "" "" +Study Protocol Parameters Name Term Source REF "" "" "" "" "" "" "" "" "" +Study Protocol Components Name "" "" "" "" "" "" "" "" "" +Study Protocol Components Type "" "" "" "" "" "" "" "" "" +Study Protocol Components Type Term Accession Number "" "" "" "" "" "" "" "" "" +Study Protocol Components Type Term Source REF "" "" "" "" "" "" "" "" "" STUDY CONTACTS Study Person Last Name "Oliver" "Juan" "Leo" Study Person First Name "Stephen" "Castrillo" "Zeef" @@ -152,3 +161,4 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" +Comment[Study Person REF] "" "" "" diff --git a/src/test/resources/test-data/BII-I-1/s_BII-S-1.txt b/src/test/resources/test-data/BII-I-1/s_BII-S-1.txt index 2c3613c5..f0b691c1 100644 --- a/src/test/resources/test-data/BII-I-1/s_BII-S-1.txt +++ b/src/test/resources/test-data/BII-I-1/s_BII-S-1.txt @@ -1,165 +1,165 @@ -Source Name Characteristics[organism] Characteristics[strain] Characteristics[genotype] Protocol REF Sample Name Factor Value[limiting nutrient] Factor Value[rate] Unit -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot1 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot2 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot3 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot4 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot5 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot6 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot7 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot8 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot9 carbon 0.07 l/hour -culture1 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.07-aliquot10 carbon 0.07 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot1 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot2 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot3 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot4 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot5 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot6 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot7 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot8 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot9 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot10 carbon 0.1 l/hour -culture2 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.1-aliquot11 carbon 0.1 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot1 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot2 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot3 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot4 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot5 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot6 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot7 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot8 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot9 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot10 carbon 0.2 l/hour -culture3 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol C-0.2-aliquot11 carbon 0.2 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot1 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot2 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot3 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot4 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot5 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot6 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot7 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot8 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot9 nitrogen 0.07 l/hour -culture4 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.07-aliquot10 nitrogen 0.07 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot1 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot2 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot3 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot4 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot5 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot6 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot7 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot8 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot9 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot10 nitrogen 0.1 l/hour -culture5 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.1-aliquot11 nitrogen 0.1 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot1 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot2 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot3 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot4 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot5 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot6 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot7 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot8 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot9 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot10 nitrogen 0.2 l/hour -culture6 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol N-0.2-aliquot10 nitrogen 0.2 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot1 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot2 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot3 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot4 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot5 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot6 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot7 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot8 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot9 phosphorus 0.07 l/hour -culture7 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.07-aliquot10 phosphorus 0.07 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot1 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot2 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot3 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot4 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot5 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot6 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot7 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot8 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot9 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot10 phosphorus 0.1 l/hour -culture8 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.1-aliquot11 phosphorus 0.1 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot1 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot2 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot3 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot4 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot5 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot6 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot7 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot8 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot9 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot10 phosphorus 0.2 l/hour -culture9 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol P-0.2-aliquot11 phosphorus 0.2 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot1 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot2 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot3 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot4 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot5 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot6 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot7 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot8 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot9 sulfur 0.07 l/hour -culture10 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.07-aliquot10 sulfur 0.07 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot1 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot2 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot3 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot4 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot5 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot6 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot7 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot8 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot9 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot10 sulfur 0.1 l/hour -culture11 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.1-aliquot11 sulfur 0.1 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot1 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot2 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot3 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot4 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot5 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot6 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot7 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot8 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot9 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot10 sulfur 0.2 l/hour -culture12 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol S-0.2-aliquot11 sulfur 0.2 l/hour -culture13 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.07-aliquot1 ethanol 0.07 l/hour -culture13 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.07-aliquot2 ethanol 0.07 l/hour -culture13 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.07-aliquot3 ethanol 0.07 l/hour -culture13 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.07-aliquot4 ethanol 0.07 l/hour -culture13 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.07-aliquot5 ethanol 0.07 l/hour -culture13 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.07-aliquot6 ethanol 0.07 l/hour -culture14 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.1-aliquot1 ethanol 0.1 l/hour -culture14 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.1-aliquot2 ethanol 0.1 l/hour -culture14 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.1-aliquot3 ethanol 0.1 l/hour -culture14 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.1-aliquot4 ethanol 0.1 l/hour -culture14 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.1-aliquot5 ethanol 0.1 l/hour -culture14 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.1-aliquot6 ethanol 0.1 l/hour -culture15 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.2-aliquot1 ethanol 0.2 l/hour -culture15 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.2-aliquot2 ethanol 0.2 l/hour -culture15 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.2-aliquot3 ethanol 0.2 l/hour -culture15 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.2-aliquot4 ethanol 0.2 l/hour -culture15 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.2-aliquot5 ethanol 0.2 l/hour -culture15 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol E-0.2-aliquot6 ethanol 0.2 l/hour -culture16 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.07-aliquot1 glucose 0.07 l/hour -culture16 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.07-aliquot2 glucose 0.07 l/hour -culture16 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.07-aliquot3 glucose 0.07 l/hour -culture16 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.07-aliquot4 glucose 0.07 l/hour -culture16 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.07-aliquot5 glucose 0.07 l/hour -culture16 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.07-aliquot6 glucose 0.07 l/hour -culture17 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.1-aliquot1 glucose 0.1 l/hour -culture17 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.1-aliquot2 glucose 0.1 l/hour -culture17 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.1-aliquot3 glucose 0.1 l/hour -culture17 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.1-aliquot4 glucose 0.1 l/hour -culture17 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.1-aliquot5 glucose 0.1 l/hour -culture17 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.1-aliquot6 glucose 0.1 l/hour -culture18 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.2-aliquot1 glucose 0.2 l/hour -culture18 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.2-aliquot2 glucose 0.2 l/hour -culture18 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.2-aliquot3 glucose 0.2 l/hour -culture18 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.2-aliquot4 glucose 0.2 l/hour -culture18 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.2-aliquot5 glucose 0.2 l/hour -culture18 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD growth protocol G-0.2-aliquot6 glucose 0.2 l/hour +"Source Name" "Characteristics[organism]" "Term Source REF" "Term Accession Number" "Characteristics[strain]" "Term Source REF" "Term Accession Number" "Characteristics[genotype]" "Term Source REF" "Term Accession Number" "Protocol REF" "Sample Name" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot1" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot2" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot3" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot4" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot5" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot6" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot7" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot8" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot9" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.07-aliquot10" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot1" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot2" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot3" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot4" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot5" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot6" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot7" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot8" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot9" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot10" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.1-aliquot11" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot1" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot2" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot3" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot4" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot5" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot6" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot7" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot8" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot9" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot10" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture3" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "C-0.2-aliquot11" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot1" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot2" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot3" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot4" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot5" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot6" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot7" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot8" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot9" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture4" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.07-aliquot10" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot1" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot2" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot3" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot4" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot5" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot6" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot7" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot8" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot9" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot10" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture5" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.1-aliquot11" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot1" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot2" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot3" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot4" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot5" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot6" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot7" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot8" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot9" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot10" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture6" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "N-0.2-aliquot11" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot1" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot2" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot3" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot4" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot5" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot6" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot7" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot8" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot9" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture7" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.07-aliquot10" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot1" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot2" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot3" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot4" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot5" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot6" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot7" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot8" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot9" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot10" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture8" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.1-aliquot11" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot1" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot2" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot3" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot4" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot5" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot6" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot7" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot8" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot9" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot10" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture9" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "P-0.2-aliquot11" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot1" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot2" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot3" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot4" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot5" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot6" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot7" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot8" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot9" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture10" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.07-aliquot10" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot1" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot2" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot3" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot4" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot5" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot6" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot7" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot8" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot9" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot10" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture11" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.1-aliquot11" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot1" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot2" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot3" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot4" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot5" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot6" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot7" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot8" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot9" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot10" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture12" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "S-0.2-aliquot11" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot1" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot2" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot3" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot4" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot5" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture13" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.07-aliquot6" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot1" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot2" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot3" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot4" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot5" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture14" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.1-aliquot6" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot1" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot2" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot3" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot4" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot5" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture15" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "E-0.2-aliquot6" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.2" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot1" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot2" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot3" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot4" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot5" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture16" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.07-aliquot6" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot1" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot2" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot3" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot4" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot5" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture17" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.1-aliquot6" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot1" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot2" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot3" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot4" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot5" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" +"culture18" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "growth protocol" "G-0.2-aliquot6" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hour" "" "" diff --git a/src/test/resources/test-data/BII-I-1/s_BII-S-2.txt b/src/test/resources/test-data/BII-I-1/s_BII-S-2.txt index 1e9b41b5..9c366671 100644 --- a/src/test/resources/test-data/BII-I-1/s_BII-S-2.txt +++ b/src/test/resources/test-data/BII-I-1/s_BII-S-2.txt @@ -1,3 +1,15 @@ -Source Name Characteristics[organism] Characteristics[strain] Characteristics[genotype] Characteristics[mating type] Protocol REF Sample Name -Saccharomyces cerevisiae FY1679 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD mating_type_alpha growth NZ_0hrs_Grow_1 -Saccharomyces cerevisiae FY1679 NEWT:Saccharomyces cerevisiae (Baker's yeast) FY1679 KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD mating_type_alpha growth NZ_0hrs_Grow_2 +"Source Name" "Characteristics[organism]" "Term Source REF" "Term Accession Number" "Characteristics[strain]" "Term Source REF" "Term Accession Number" "Characteristics[genotype]" "Term Source REF" "Term Accession Number" "Characteristics[mating type]" "Term Source REF" "Term Accession Number" "Protocol REF" "Sample Name" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_0hrs_Grow1_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow1_Drug_Sample_1" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow1_Drug_Sample_1" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow1_Drug_Sample_1" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow1_Vehicle_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow1_Vehicle_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_1" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow1_Vehicle_Sample_1" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_0hrs_Grow2_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow2_Drug_Sample_2" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow2_Drug_Sample_2" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow2_Drug_Sample_2" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_1hrs_Grow2_Vehicle_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_2hrs_Grow2_Vehicle_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow_2" "Saccharomyces cerevisiae" "NCBITAXON" "http://purl.obolibrary.org/obo/NCBITaxon_4932" "FY1679" "" "" "KanMx4 MATa/MATalpha ura3-52/ura3-52 leu2-1/+trp1-63/+his3-D200/+ hoD KanMx4/hoD" "" "" "alpha mating type (yeast)" "OBI" "http://purl.obolibrary.org/obo/PATO_0001344" "" "NZ_4hrs_Grow2_Vehicle_Sample_2" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" From 958d6115c718e2005081145b9dc805c66a8751c4 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 17 Jan 2014 13:21:13 +0000 Subject: [PATCH 101/111] BII-I-1 investigation and configurationFilesLocation updated --- isatab files/BII-I-1/i_Investigation.txt | 10 +++++----- .../defaults/settings/defaultsettings.properties | 2 +- .../resources/test-data/BII-I-1/i_investigation.txt | 10 +++++----- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/isatab files/BII-I-1/i_Investigation.txt b/isatab files/BII-I-1/i_Investigation.txt index b4f074a4..1b542db4 100644 --- a/isatab files/BII-I-1/i_Investigation.txt +++ b/isatab files/BII-I-1/i_Investigation.txt @@ -65,17 +65,17 @@ Study Factor Type Term Source REF "CHEBI" "PATO" STUDY ASSAYS Study Assay File Name "a_proteome.txt" "a_metabolome.txt" "a_transcriptome.txt" Study Assay Measurement Type "protein expression profiling" "metabolite profiling" "transcription profiling" -Study Assay Measurement Type Term Accession Number "" "0000366" "0000424" +Study Assay Measurement Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000615" "http://purl.obolibrary.org/obo/OBI_0000366" "http://purl.obolibrary.org/obo/OBI_0000424" Study Assay Measurement Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Type "mass spectrometry" "mass spectrometry" "DNA microarray" -Study Assay Technology Type Term Accession Number "" "" "0400148" +Study Assay Technology Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000470" "http://purl.obolibrary.org/obo/OBI_0000470" "http://purl.obolibrary.org/obo/OBI_0400148" Study Assay Technology Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Platform "iTRAQ" "LC-MS/MS" "Affymetrix" STUDY PROTOCOLS Study Protocol Name "growth protocol" "mRNA extraction" "protein extraction" "biotin labeling" "ITRAQ labeling" "EukGE-WS4" "metabolite extraction" Study Protocol Type "growth" "RNA extraction" "extraction" "addition of molecular label" "addition of molecular label" "nucleic acid hybridization" "extraction" Study Protocol Type Term Accession Number "" "http://purl.obolibrary.org/obo/OBI_0666666" "http://purl.obolibrary.org/obo/OBI_0302884" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0302903" "http://purl.obolibrary.org/obo/OBI_0302884" -Study Protocol Type Term Source REF "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" +Study Protocol Type Term Source REF "" "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ??? Sample Clean Up Module. The column was eluted in the first instance using 10 ???l RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ??? Expression Analysis technical manual. GeneChip ??? control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ??? manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" Study Protocol URI "" "" "" "" "" "" "" Study Protocol Version "" "" "" "" "" "" "" @@ -128,10 +128,10 @@ Study Factor Type Term Source REF "CHEBI" "OBI_BCGO" "OBI" STUDY ASSAYS Study Assay File Name "a_microarray.txt" Study Assay Measurement Type "transcription profiling" -Study Assay Measurement Type Term Accession Number "0000424" +Study Assay Measurement Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000424" Study Assay Measurement Type Term Source REF "OBI" Study Assay Technology Type "DNA microarray" -Study Assay Technology Type Term Accession Number "0400148" +Study Assay Technology Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0400148" Study Assay Technology Type Term Source REF "OBI" Study Assay Technology Platform "Affymetrix" STUDY PROTOCOLS diff --git a/src/main/resources/defaults/settings/defaultsettings.properties b/src/main/resources/defaults/settings/defaultsettings.properties index 2114a7ba..e1d8e6a6 100644 --- a/src/main/resources/defaults/settings/defaultsettings.properties +++ b/src/main/resources/defaults/settings/defaultsettings.properties @@ -1,6 +1,6 @@ strictValidation.isOn=false alwaysShowInvestigation=${isacreator.alwaysShowInvestigation} version=${isacreator.version} -configurationFilesLocation=http://cloud.github.com/downloads/ISA-tools/Configuration-Files/isaconfig-default_v2011-02-18.zip +configurationFilesLocation=https://bitbucket.org/eamonnmag/isatools-downloads/downloads/isaconfig-default_v2014-01-16.zip showGenomeSpace=true ontologyTermURI=true \ No newline at end of file diff --git a/src/test/resources/test-data/BII-I-1/i_investigation.txt b/src/test/resources/test-data/BII-I-1/i_investigation.txt index b4f074a4..1b542db4 100644 --- a/src/test/resources/test-data/BII-I-1/i_investigation.txt +++ b/src/test/resources/test-data/BII-I-1/i_investigation.txt @@ -65,17 +65,17 @@ Study Factor Type Term Source REF "CHEBI" "PATO" STUDY ASSAYS Study Assay File Name "a_proteome.txt" "a_metabolome.txt" "a_transcriptome.txt" Study Assay Measurement Type "protein expression profiling" "metabolite profiling" "transcription profiling" -Study Assay Measurement Type Term Accession Number "" "0000366" "0000424" +Study Assay Measurement Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000615" "http://purl.obolibrary.org/obo/OBI_0000366" "http://purl.obolibrary.org/obo/OBI_0000424" Study Assay Measurement Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Type "mass spectrometry" "mass spectrometry" "DNA microarray" -Study Assay Technology Type Term Accession Number "" "" "0400148" +Study Assay Technology Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000470" "http://purl.obolibrary.org/obo/OBI_0000470" "http://purl.obolibrary.org/obo/OBI_0400148" Study Assay Technology Type Term Source REF "OBI" "OBI" "OBI" Study Assay Technology Platform "iTRAQ" "LC-MS/MS" "Affymetrix" STUDY PROTOCOLS Study Protocol Name "growth protocol" "mRNA extraction" "protein extraction" "biotin labeling" "ITRAQ labeling" "EukGE-WS4" "metabolite extraction" Study Protocol Type "growth" "RNA extraction" "extraction" "addition of molecular label" "addition of molecular label" "nucleic acid hybridization" "extraction" Study Protocol Type Term Accession Number "" "http://purl.obolibrary.org/obo/OBI_0666666" "http://purl.obolibrary.org/obo/OBI_0302884" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0600038" "http://purl.obolibrary.org/obo/OBI_0302903" "http://purl.obolibrary.org/obo/OBI_0302884" -Study Protocol Type Term Source REF "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" +Study Protocol Type Term Source REF "" "OBI" "OBI" "OBI" "OBI" "OBI" "OBI" Study Protocol Description "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorously or 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl buffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "1. Biomass samples (45 ml) were taken via the sample port of the Applikon fermenters. The cells were pelleted by centrifugation for 5 min at 5000 rpm. The supernatant was removed and the RNA pellet resuspended in the residual medium to form a slurry. This was added in a dropwise manner directly into a 5 ml Teflon flask (B. Braun Biotech, Germany) containing liquid nitrogen and a 7 mm-diameter tungsten carbide ball. After allowing evaporation of the liquid nitrogen the flask was reassembled and the cells disrupted by agitation at 1500 rpm for 2 min in a Microdismembranator U (B. Braun Biotech, Germany) 2. The frozen powder was then dissolved in 1 ml of TriZol reagent (Sigma-Aldrich, UK), vortexed for 1 min, and then kept at room temperature for a further 5min. 3. Chloroform extraction was performed by addition of 0.2 ml chloroform, shaking vigorouslyor 15 s, then 5min incubation at room temperature. 4. Following centrifugation at 12,000 rpm for 5 min, the RNA (contained in the aqueous phase) was precipitated with 0.5 vol of 2-propanol at room temperature for 15 min. 5. After further centrifugation (12,000 rpm for 10 min at 4 C) the RNA pellet was washed twice with 70 % (v/v) ethanol, briefly air-dried, and redissolved in 0.5 ml diethyl pyrocarbonate (DEPC)-treated water. 6. The single-stranded RNA was precipitated once more by addition of 0.5 ml of LiCl bffer (4 M LiCl, 20 mM Tris-HCl, pH 7.5, 10 mM EDTA), thus removing tRNA and DNA from the sample. 7. After precipitation (20 C for 1 h) and centrifugation (12,000 rpm, 30 min, 4 C), the RNA was washed twice in 70 % (v/v) ethanol prior to being dissolved in a minimal volume of DEPC-treated water. 8. Total RNA quality was checked using the RNA 6000 Nano Assay, and analysed on an Agilent 2100 Bioanalyser (Agilent Technologies). RNA was quantified using the Nanodrop ultra low volume spectrophotometer (Nanodrop Technologies)." "" "This was done using Enzo BioArrayTM HighYieldTM RNA transcript labelling kit (T7) with 5 ul cDNA. The resultant cRNA was again purified using the GeneChip ??? Sample Clean Up Module. The column was eluted in the first instance using 10 ???l RNase-free water, and for a second time using 11 ul RNase-free water. cRNA was quantified using the Nanodrop spectrophotometer. A total of 15 ug of cRNA (required for hybridisation) was fragmented. Fragmentation was carried out by using 2 ul of fragmentation buffer for every 8 ul cRNA." "" "For each target, a hybridisation cocktail was made using the standard array recipe as described in the GeneChip ??? Expression Analysis technical manual. GeneChip ??? control oligonucleotide and 20x eukaryotic hybridisation controls were used. Hybridisation buffer was made as detailed in the GeneChip ??? manual and the BSA and herring sperm DNA was purchased from Invitrogen. The cocktail was heated to 99 C for 5 min, transferred to 45 C for 5 min and then spun for 5 min to remove any insoluble material. Affymetrix Yeast Yg_s98 S. cerevisiae arrays were pre-hybridised with 200 ul 1x hybridisation buffer and incubated at 45 C for 10 min. 200 ul of the hybridisation cocktail was loaded onto the arrays. The probe array was incubated in a rotisserie at 45 C, rotating at 60 rpm. Following hybridisation, for 16 hr, chips were loaded onto a Fluidics station for washing and staining using the EukGe WS2v4 programme controlled using Microarray Suite 5 software." "" Study Protocol URI "" "" "" "" "" "" "" Study Protocol Version "" "" "" "" "" "" "" @@ -128,10 +128,10 @@ Study Factor Type Term Source REF "CHEBI" "OBI_BCGO" "OBI" STUDY ASSAYS Study Assay File Name "a_microarray.txt" Study Assay Measurement Type "transcription profiling" -Study Assay Measurement Type Term Accession Number "0000424" +Study Assay Measurement Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000424" Study Assay Measurement Type Term Source REF "OBI" Study Assay Technology Type "DNA microarray" -Study Assay Technology Type Term Accession Number "0400148" +Study Assay Technology Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0400148" Study Assay Technology Type Term Source REF "OBI" Study Assay Technology Platform "Affymetrix" STUDY PROTOCOLS From f8c6a09345ad121122a62f971986469704867791 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 17 Jan 2014 14:43:25 +0000 Subject: [PATCH 102/111] Setting URIs in OntologyTerm when available, improvement on printout of URI mapping --- .../io/importisa/ISAtabImporter.java | 4 +++- .../StructureToInvestigationMapper.java | 5 +---- .../ontologymanager/OntologyManager.java | 21 ++++++++++++++----- .../ontologymanager/common/OntologyTerm.java | 6 ++++-- .../model/TableReferenceObject.java | 5 ++++- 5 files changed, 28 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java index 5bcd91b7..bc4da980 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/ISAtabImporter.java @@ -208,7 +208,9 @@ protected boolean commonImportFile(String parentDir) { } System.out.println("********************\n"+OntologyManager.getURIMappingInfo()); - messages.add(new ErrorMessage(ErrorLevel.INFO, OntologyManager.getURIMappingInfoHTML())); + String mappingInfo = OntologyManager.getURIMappingInfoHTML(); + if (mappingInfo!=null && !mappingInfo.equals("")) + messages.add(new ErrorMessage(ErrorLevel.INFO, mappingInfo)); } catch (IOException e) { diff --git a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java index b4172e58..8db51575 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java @@ -645,10 +645,7 @@ private String groupElements(String fieldBeingCombined, String term, ontologyTermsDefined.add(ot); if (!(ISAcreatorProperties.getOntologyTermURIProperty() && ot.getOntologyTermURI()!=null && !ot.getOntologyTermURI().equals(""))) toReturn = term; - //else { - // System.out.println("Keeping term in mapping, without URI ===>"+ term); - - //} + OntologyManager.addToOntologyTerms(ot); } } diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index baa34327..c7fd521a 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -55,6 +55,8 @@ public class OntologyManager { public static final String OLS = "OLS"; public static final String BIO_PORTAL = "BioPortal"; + private static boolean foundURIs = false; + //All the ontologySourceRefObject, indexed by their (abbreviated) name private static Map ontologySources = new HashMap(); @@ -73,6 +75,10 @@ private static void addToNoURITermMap(String k, OntologyTerm v){ noURITermMap.put(k, v); } + public static void foundURI(){ + foundURIs = true; + } + /*** ontologyTermHistory methods ****/ public static void addToOntologyTermHistory(OntologyTerm oo) { @@ -244,11 +250,6 @@ public static void setOntologySources(Set ontologiesUse ontologySources.put(sourceRefObject.getSourceName(), sourceRefObject); } -// //Used in ISAcreator.saveProfilesAndGoToMain and ISAcreator.SaveAction -// public static void clearReferencedOntologySources() { -// ontologySources.clear(); -// } - public static OntologySourceRefObject getOntologySourceReferenceObjectByAbbreviation(String source) { for (OntologySourceRefObject ontologySourceRefObject : getOntologySources()) { if (source.equalsIgnoreCase(ontologySourceRefObject.getSourceName())) { @@ -288,6 +289,9 @@ public static int searchResultCacheSize(){ public static String getURIMappingInfo(){ + if (!foundURIs) + return ""; + StringBuilder builder = new StringBuilder(); if (!noURITermMap.isEmpty()){ @@ -297,7 +301,9 @@ public static String getURIMappingInfo(){ OntologyTerm ot = noURITermMap.get(key); builder.append("\n\t"+ ot.getOntologyTermName()+ "\t"+ ot.getOntologySource() +"\t" + ot.getOntologyTermURI()); } + } + if (!ontologyTerms.isEmpty()){ builder.append("\nTerms that could be mapped to a URI: "); for(String key: ontologyTerms.keySet()){ OntologyTerm ot = ontologyTerms.get(key); @@ -309,6 +315,9 @@ public static String getURIMappingInfo(){ public static String getURIMappingInfoHTML(){ + if (!foundURIs) + return ""; + StringBuilder builder = new StringBuilder(); if (!noURITermMap.isEmpty()){ @@ -318,7 +327,9 @@ public static String getURIMappingInfoHTML(){ OntologyTerm ot = noURITermMap.get(key); builder.append("

"+ ot.getOntologySource()+":"+ot.getOntologyTermName() +"

"); } + } + if (!ontologyTerms.isEmpty()){ builder.append("
Terms that could be mapped to a URI: "); for(String key: ontologyTerms.keySet()){ OntologyTerm ot = ontologyTerms.get(key); diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java index 3f70931c..1c1a12cc 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/common/OntologyTerm.java @@ -37,6 +37,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi package org.isatools.isacreator.ontologymanager.common; import org.apache.commons.collections15.map.ListOrderedMap; +import org.isatools.isacreator.ontologymanager.OntologyManager; import org.isatools.isacreator.ontologymanager.OntologySourceRefObject; import org.isatools.isacreator.ontologymanager.utils.OntologyTermUtils; import org.isatools.isacreator.settings.ISAcreatorProperties; @@ -125,9 +126,10 @@ public String getOntologyTermURI() { if (ontologyTermIRI==null){ String iri = OntologyTermUtils.getURI(this); //System.out.println("term====>" + getOntologyTermName()+", iri ===> "+iri); - if (iri!=null) + if (iri!=null) { ontologyTermIRI = iri; - else + OntologyManager.foundURI(); + }else ontologyTermIRI = ""; } return ontologyTermIRI; diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java index 4cef446b..ebde26b0 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java @@ -353,7 +353,10 @@ public void addRowData(String[] headers, String[] rowData) { OntologyTerm ot = null; if (!referencedOntologyTerms.containsKey(prevVal)) { - ot = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + if (accession!=null && accession.contains("http://")) + ot = new OntologyTerm(term, null, accession, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + else + ot = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); referencedOntologyTerms.put(prevVal, ot); } else { From 27b20647366618a4a5ff80dcbca77435b1ea9a59 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 17 Jan 2014 14:47:01 +0000 Subject: [PATCH 103/111] Completed annotation of test dataset --- isatab files/BII-I-1/i_Investigation.txt | 2 +- src/test/resources/test-data/BII-I-1/i_investigation.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/isatab files/BII-I-1/i_Investigation.txt b/isatab files/BII-I-1/i_Investigation.txt index 1b542db4..b3396128 100644 --- a/isatab files/BII-I-1/i_Investigation.txt +++ b/isatab files/BII-I-1/i_Investigation.txt @@ -110,7 +110,7 @@ Study Public Release Date "2009-03-10" Study File Name "s_BII-S-2.txt" STUDY DESIGN DESCRIPTORS Study Design Type "time series design" -Study Design Type Term Accession Number "" +Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0500020" Study Design Type Term Source REF "OBI" STUDY PUBLICATIONS Study PubMed ID "17439666" diff --git a/src/test/resources/test-data/BII-I-1/i_investigation.txt b/src/test/resources/test-data/BII-I-1/i_investigation.txt index 1b542db4..b3396128 100644 --- a/src/test/resources/test-data/BII-I-1/i_investigation.txt +++ b/src/test/resources/test-data/BII-I-1/i_investigation.txt @@ -110,7 +110,7 @@ Study Public Release Date "2009-03-10" Study File Name "s_BII-S-2.txt" STUDY DESIGN DESCRIPTORS Study Design Type "time series design" -Study Design Type Term Accession Number "" +Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0500020" Study Design Type Term Source REF "OBI" STUDY PUBLICATIONS Study PubMed ID "17439666" From aa6fc0bf78785e7d0ef5dc0fb527947be6a8af3a Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Fri, 17 Jan 2014 14:49:13 +0000 Subject: [PATCH 104/111] Added variable for configuration zip file --- package.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/package.sh b/package.sh index 1902e0d5..ff0f99ad 100755 --- a/package.sh +++ b/package.sh @@ -30,19 +30,21 @@ fi rm -rf Configurations rm -rf src/main/resources/Configurations +CONFIGURATION=isaconfig-default_v2014-01-16.zip + mkdir Configurations mkdir src/main/resources/Configurations cd Configurations -wget https://bitbucket.org/eamonnmag/isatools-downloads/downloads/isaconfig-default_v2013-02-13.zip --no-check-certificate -cp isaconfig-default_v2013-02-13.zip ../src/main/resources/Configurations/ -unzip isaconfig-default_v2013-02-13.zip -rm isaconfig-default_v2013-02-13.zip +wget https://bitbucket.org/eamonnmag/isatools-downloads/downloads/"$CONFIGURATION" --no-check-certificate +cp $CONFIGURATION ../src/main/resources/Configurations/ +unzip $CONFIGURATION +rm $CONFIGURATION cd ../ ## keeping configurations in resources so that they are included in the jar cd src/main/resources/Configurations -unzip isaconfig-default_v2013-02-13.zip -rm isaconfig-default_v2013-02-13.zip +unzip $CONFIGURATION +rm $CONFIGURATION cd ../../../.. mvn $MVNOPTS -Dmaven.test.skip=true clean assembly:assembly From c06389efcf0e5e2888d57e782cbeaf04f073b985 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 17 Jan 2014 14:57:30 +0000 Subject: [PATCH 105/111] Reinserted a method I should not have removed. --- .../org/isatools/isacreator/gui/DataEntryEnvironment.java | 8 ++++++++ .../isatools/isacreator/spreadsheet/MultipleSortGUI.java | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java index d316d6f4..9aaf41f7 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java @@ -567,6 +567,14 @@ public void mouseExited(MouseEvent event) { return navigationPanel; } + /** + * This is used by plugins, so do not delete. + * @return + */ + public DefaultMutableTreeNode getSelectedNodeInOverviewTree() { + return selectedNode; + } + private DefaultMutableTreeNode createStudyNode(Investigation inv, Study study) { if (ApplicationManager.getUserInterfaceForISASection(study) == null) { ApplicationManager.assignDataEntryToISASection(study, new StudyDataEntry(DataEntryEnvironment.this, study)); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java b/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java index c33f51bf..51fb7dd7 100755 --- a/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/MultipleSortGUI.java @@ -44,6 +44,7 @@ The ISA Team and the ISA software suite have been funded by the EU Carcinogenomi import org.jdesktop.fuse.ResourceInjector; import javax.swing.*; +import javax.swing.border.EmptyBorder; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -109,7 +110,9 @@ private void instantiateFrame() { headerCont.setSize(new Dimension(300, 25)); headerCont.setLayout(new BoxLayout(headerCont, BoxLayout.LINE_AXIS)); headerCont.add(UIHelper.createLabel("Perform Multiple Sort", UIHelper.VER_14_BOLD, UIHelper.DARK_GREEN_COLOR, JLabel.LEFT)); + headerCont.setBorder(new EmptyBorder(10,10,10,10)); add(headerCont, BorderLayout.NORTH); + instantiatePanel(); pack(); @@ -281,6 +284,7 @@ public void run() { // panel to contain everything. JPanel container = new JPanel(new BorderLayout()); container.setBackground(UIHelper.BG_COLOR); + container.setBorder(new EmptyBorder(10,10,10,10)); add(options, BorderLayout.CENTER); add(doSortPanel, BorderLayout.SOUTH); } From b8738fa0c1a4106ad9938485202a2eac600cb143 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 17 Jan 2014 15:03:49 +0000 Subject: [PATCH 106/111] Some changes to make the tool backwards compatible. --- .../isatools/isacreator/ontologymanager/OntologyManager.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java index c7fd521a..fb4152d3 100644 --- a/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java +++ b/src/main/java/org/isatools/isacreator/ontologymanager/OntologyManager.java @@ -86,6 +86,10 @@ public static void addToOntologyTermHistory(OntologyTerm oo) { addToOntologyTermHistory(oo.getShortForm(), oo); } + public static Map getOntologySelectionHistory() { + return ontologyTerms; + } + /** * * @param label From 320e7a5029cf209b262da4d395d2b7e623d5906d Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Fri, 17 Jan 2014 15:38:47 +0000 Subject: [PATCH 107/111] Now removes any spaces between comments for consistency. --- .../isacreator/io/importisa/InvestigationImport.java | 2 +- .../org/isatools/isacreator/utils/StringProcessing.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java index b0436bdf..9fa1a006 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java @@ -128,7 +128,7 @@ public Pair()); diff --git a/src/main/java/org/isatools/isacreator/utils/StringProcessing.java b/src/main/java/org/isatools/isacreator/utils/StringProcessing.java index a4077d3c..f2fb93ac 100644 --- a/src/main/java/org/isatools/isacreator/utils/StringProcessing.java +++ b/src/main/java/org/isatools/isacreator/utils/StringProcessing.java @@ -128,15 +128,15 @@ public static String extractQualifierFromField(String value) { } /** - * From a Comment[qualifier] for example, this method with inject a space + * From a Comment [qualifier] for example, this method will remove any spaces * between the Comment and [qualifier] so that everything is consistent in the * interface * @param fieldName field to check and split * @return modified field */ - public static String insertSpaceIntoQualifiedField(String fieldName) { + public static String removeSpaceFromQualifiedField(String fieldName) { if(fieldName.contains("[")) { - return fieldName.substring(0,fieldName.indexOf("[")).trim() + " " + fieldName.substring(fieldName.indexOf("[")); + return fieldName.substring(0,fieldName.indexOf("[")).trim() + fieldName.substring(fieldName.indexOf("[")); } return fieldName; } From e04ab236c4e1c1cc33593394b4f43bac6ba0a487 Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 20 Jan 2014 11:58:37 +0000 Subject: [PATCH 108/111] Adding accession to OntologyTerm --- .../io/importisa/StructureToInvestigationMapper.java | 2 +- .../isacreator/spreadsheet/model/TableReferenceObject.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java index 8db51575..cceb119c 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/StructureToInvestigationMapper.java @@ -639,7 +639,7 @@ private String groupElements(String fieldBeingCombined, String term, if (accession.contains("http://")) ontologyTermsDefined.add(new OntologyTerm( - term, null, accession, getOntologySource(sourceRef))); + term, accession, accession, getOntologySource(sourceRef))); else { OntologyTerm ot = new OntologyTerm(term, accession, null, getOntologySource(sourceRef)); ontologyTermsDefined.add(ot); diff --git a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java index ebde26b0..5489ee6c 100644 --- a/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java +++ b/src/main/java/org/isatools/isacreator/spreadsheet/model/TableReferenceObject.java @@ -340,7 +340,7 @@ public void addRowData(String[] headers, String[] rowData) { rowDataModified.set(prevValLoc, s + ":" + prevVal); } } else if (headers[i].toLowerCase().trim().contains("term accession number")) { - if (!s.equals("")) { + //if (!s.equals("")) { String prevVal = rowDataModified.get(prevValLoc); if (prevVal.contains(":")) { @@ -354,7 +354,7 @@ public void addRowData(String[] headers, String[] rowData) { OntologyTerm ot = null; if (!referencedOntologyTerms.containsKey(prevVal)) { if (accession!=null && accession.contains("http://")) - ot = new OntologyTerm(term, null, accession, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); + ot = new OntologyTerm(term, accession, accession, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); else ot = new OntologyTerm(term, accession, null, OntologyManager.getOntologySourceReferenceObjectByAbbreviation(source)); referencedOntologyTerms.put(prevVal, ot); @@ -368,7 +368,7 @@ public void addRowData(String[] headers, String[] rowData) { } } - } + //} } else { rowDataModified.add(s); prevValLoc = rowDataModified.size() - 1; From 79b74107e547ce4e867cca2ae7035a6f1f3e5031 Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Mon, 20 Jan 2014 11:58:53 +0000 Subject: [PATCH 109/111] New images. Show different images if on study sample or assay file. --- .../isacreator/gui/DataEntryEnvironment.java | 7 ++++++- .../gui-package.properties | 1 + src/main/resources/images/gui/assay_help.png | Bin 3223 -> 4170 bytes .../images/gui/study_sample_help.png | Bin 0 -> 5326 bytes 4 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 src/main/resources/images/gui/study_sample_help.png diff --git a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java index 9aaf41f7..1835bf03 100755 --- a/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java +++ b/src/main/java/org/isatools/isacreator/gui/DataEntryEnvironment.java @@ -97,7 +97,7 @@ public class DataEntryEnvironment extends AbstractDataEntryEnvironment implement @InjectedResource private ImageIcon loading, visualizationIcon, visualizationIconOver, addStudyIcon, addStudyIconOver, removeStudyIcon, removeStudyIconOver, removeStudyIconInactive, navigationPanelHeader, informationPanelHeader, - warning_reducedFunctionality, removeStudyDialogImage, investigationHelp, studyHelp, assayHelp, generalHelp; + warning_reducedFunctionality, removeStudyDialogImage, investigationHelp, studyHelp, assayHelp, studySampleHelp, generalHelp; private DefaultMutableTreeNode overviewTreeRoot; private DefaultTreeModel overviewTreeModel; @@ -840,6 +840,11 @@ public void valueChanged(TreeSelectionEvent event) { } } setCurrentPage(ApplicationManager.getUserInterfaceForISASection(assay)); + + Spreadsheet spreadsheet = ((AssaySpreadsheet) ApplicationManager.getUserInterfaceForISASection(assay)).getSpreadsheet(); + if (spreadsheet.getSpreadsheetTitle().contains("Sample Definition")) { + setStatusPaneInfo(studySampleHelp); + } } else { setStatusPaneInfo(""); setCurrentPage(newSubmission); diff --git a/src/main/resources/dependency-injections/gui-package.properties b/src/main/resources/dependency-injections/gui-package.properties index 8c5d9260..19b55650 100644 --- a/src/main/resources/dependency-injections/gui-package.properties +++ b/src/main/resources/dependency-injections/gui-package.properties @@ -70,6 +70,7 @@ DataEntryEnvironment.investigationHelp=/images/gui/investigation_help.png DataEntryEnvironment.studyHelp=/images/gui/study_help.png DataEntryEnvironment.assayHelp=/images/gui/assay_help.png DataEntryEnvironment.generalHelp=/images/gui/general_help.png +DataEntryEnvironment.studySampleHelp=/images/gui/study_sample_help.png # AbstractDataEntryEnvironment - these are actually not used since I don'columnValues know how to get the static # Variables to work with the Fuse API. diff --git a/src/main/resources/images/gui/assay_help.png b/src/main/resources/images/gui/assay_help.png index d53eb752144cb74fd914412780477209ab4a1aaa..d8b534a48d6919d3224f276f122b3b889ee035a5 100644 GIT binary patch literal 4170 zcmb7nXEYlQ)P88Ks8M@2h*gTBwO0f&szi%YirPCtO6@IXiM?ly603+&HL6x^YR}rU zMy;s6e*e$^5AS==9p|2VKRo9-&pG#8w62ai1&{>@001a7U{LsN?YoU4QsUbzUjYod zEzBOOMjraEHXiRRkk$ZYD_2WvkcP8`tu@@*!pa-bXDtT+Q0-|zm0x(x?q&Nqv97cC z1k{|Y^76^cL>_)dt+Qe(O!O9A3&z)6S@Jpp@TBp{}ip(ENuDd zj?q(|nNQ#QPK#5MeM4LqMR#-dr-huJp6Y^WR#K_Sp<=&?YE89Kk*gC!@oI$=las~S zL^VoaaUC|7ZH@!4-0j0d!~O(rb^GopdWnEG%<=Ith#?ZZ+1(MB-`o=#6BEPla{SZe z-^ZvZV8*5g9C0Lsq?7J-X{>>rUGMy2RFFnI)m%~Jkc<05p0F0IBsV7iTK_MltcHn6 zCbgszA87gga>IqSG31^~{XS`{_i_E{+9o}*& zVqz>jKuTLhMWr8anDK@$;6l#N$CJa`V8+WJoBt0)NO{jY5^Qo8F0jy*z9n;YbrmW_ zY`IYbqx4(UcFpn56{b8NF(0M=YvryWt(DX*^kLza1WQi@4mMSh$xr;q6zKX{VwAPS z_Z!E!1uOU*$@;Rg-d>TgrihFc6=WaeX1SPkFNmL{-KOyR`WkWa^(5A(6xW`g)g7hg zwB{NM7o|J7U*ZI^^E+C;+Lsb@qY;dJJ7%*0C5x5=(*e6ZF+r{TrhTkpNZLmP>GM8_ z&&y!@=RZ_uZUJXUIn&Y8GY|dyIVP)?8Xv>Ki^2rK<|p|%^W5lBDGqGXkziB8BN$>2 zwyhjVi!?Rdqk|yg!(RVb87{R9Ir5TbizK>gfiAUj#&k770oK^Ko@6 zJuEzj4uoH=%r4U~Zsdl`wbGK?LQ;@88rH#V@yzguLSMxJ6er#5H$gDEc{u-MiXv0P zMMQ`@t#dE^7SrP|Hm4_`GHm@F4SDG5c&Hu)gr9=9OGHbGtj`fH@4_(2JVtjGDZEv`2|BcxcV}FI~KTUJwQHl zTla$mpXsaBy;A~;8-kC9J{)ycDSZrZGc&tB@SvY+v4mjH^1LOtYwAbb76J3$w3)KB z0@T9wTm<6&NL)@LQM8R0X3y4=Rs01bLr-X=6Z@qY=!RPukYtZ2?(sInDwqUrP*h1E zF)T1H5>>8;ICbp?G+YC1x~bb$Wh@wJ#f1~_+6#EjO}bTI&w?(3<23d^#&XPOCJJ(` zkcS=brN)3?lYPy(nmWAxL-j9agO1+hSn;GjG3}ZwY5IMq_x{lt!J&Q?{f(muo~Q9z zzKjc3-CCi*r^@xMgYyOa065`Z@izwFgMU+$&FZ+7LZl^hzI4f3kybcAERDW23GQq- z^NMaTRt3XBWiGmDi7=;EywnV8?ho%49D8p{TjsY;B1LVxNL+w%ArVSvQP6P1*rf2A zmtPF=+rOeq>bTZ4#fAhpq7R(5Iz$VhTqcz)WA$GiEd1r)pSBwe=kV)Ic7h%s_-HD5t#^IGAaOczeEPyS?oc>S<_IQSyL=Z@-_~%ZB}+Sq z5E7xW-`(C)Tg8tTDlYl${uwyq0!oHOpFmw8jF7VDdB@FT)I8dPLcPR%>Dqt&?FZ%d zA77d#%OC>ZEne-3fw8o?)pE2_gTgggBFo2NGkF>b-eaJ(c{;TA&p!d8pne6tv*?hO z%r(3TAA(aM?IottmN**n1y!5;5j7aB_)ACiA}kB6uo0z-PY;f$+GmNJ~<96JbM{{_grtv z8Sv2G=34sKENqbe`3POgxLaPoN}xwF9M`iw)c(2A;sJUIa(2^1tE|_-ilHVHSV^58 zeu?oFR+>7%YZ!Ee%!zR&6qF{}`VLFHRV+DZ_c8)4nKZ>^zV-H(l>fB%gO{@L+bhNU zvQ+(P-fx})!IPm}cTVS20-kU1Cu6X-7T(O!Rw}hODz|dM3dS_s~KY7IasfKH_NL_d_KHRaOUfsow;Zt)4vVbLv!j$}3x-`v%p}v$qD!-UTQ-x3skdTtO7ata zPvZ|(MD8hWRws{DwC;Xi9B!=A{rDC4F9Oru#wPAc`?bu0#ql~_zUmNllH;mE3qjIzv1$?9xh0G7se-=NZYY;5(AVCwlt<%S z_idkWCXV)Qtd3ahFv;koM#L5G_0&wCQcCoo3Rfkx$R+I-dPL{@iO(bXXuc?=6`%BP zqgy!g>pHYfm8aC#_**kZP{4hj$8UWR!pNd8s(u5(rJ1F#UW3;VU7yOHVujLoKlT_* zjyvYMl(-xIuyO?$C^^&pylb4-$?TGExV(z9qL&@0~hg-Fa~E1EvaR-*qZV zV4$DZdN<^k@u0Vfk8#MTtE-Dvcrz3G^O0vX;yTd_DD)Chg2-p2M5Wt zHhn{Tx-=QOyLt3)D)#%OXW@wW!@=42b%cE|FHg_X_^4ys_#EzUj#^)AP)swIJxJ{Sd5_oZRg6y zMvndWw8IShf)_$8&M!Xya=t3s_jHT`e}4sCU#G$JlIP!3!_$vK3kq+~UzGj%vf)vf zc}v^|T}tc?e?nHOj0@Z>RoaF7gYki9>k7VlLS6x|PTQWg}3z)Q|^z-uHH`DABa-r+<#+PYQ;vJo#oOHo$NpvsV*7$)<2o zIlIc)%n3~3>ZIa$k@sQh++A@1L)gO)R-8NWB8BLdRuPaA#^WV}WmJ;@@8|dJ8M)zA))KympLh`A>1{Ex^~ZbQ z?Ck8*V=a;Klt(6ZCn)=SBghl3AG96OIu#4FrF8}rSj+r=V8mZBS3Nruuk0p!z>6BXf!dpw!7xY@o&l& z#LGa%$WeyKB^@Bluom8if>SRkAkt&u?#Hsi(js=%m3b(6fKH-DLw{6xxN$Nup*=N5 zjfEYNqx#vfE~b0*;Z)Z^X0hy1t!c&~Vn%SPxN`u-w5A?wCAuLR2oqy=*iWcCtNRpr znM^FK#~u1vIqAvjAL2m=T%wP+f(T>Prel^xyqEkN|M=9&<7OjLc#{7eJr|6=NE|iP zGFdlz!pbxpqPz`!sI!pdv63LZDCUO)FHY??w9J91%9A)vs3SR%(X0XmlH zx`KIq%s)RJnd}5IZNpnjeB)A}9);ccW`y3i#bUrh#tT6OSR9iFIY66aaRz zU84e0pJlLZT%IL%e@QLFkr#f?EIr1Raa`t)kL332b_JZG z-py_qY!IZnJOzXXpbXiS)iDa{qs!v``VxevTbq5Y-6E`j*KmnjzK?VVc-%w1YX13e z6AC5eRkY*RYd4E<*Kp_{{Dpi5n|f0mR|<($TjyMc`V@ADwTUdkM&XMcK^9oQl#z-; zg_W6OvJZHeN~q_aA`|6IxcG?O{EJ88lZ>b~Wfzq}&y;~f{HoLl2OA3@Cc9FvA&wx_ zM2U|QCE-H)duyId39K~6?_S6<10e>{n186|ens;CQzfY7;w#_|fI{M**>@S6;Qv-M MRCSHpUYvU&T@RXORLU%zSy1D*xBps?4{3au-1CP-I@AmWH?B=h` zibRfU=;`Vtds30TsLu$=>+Jgb`}X$t)Z)YyaYdoVw6V~^)YaE>s*wHu{!^EC z@bK~J>FW9U`ttJgm&s51`ud{EZvOuMg0r08;NkG`@%Q-nz|XJt_xIY`-0|`99(PR0 z(ZQ9-QoGKj;pX0{)Nc%LJDJE^kjF^H;-B5#->S=ix6Yiz(7599&)nqH_xJd;)rs-) z^Rvy9+}+=u%wO*A@0Q6>uhW0;@bQ<*RK?q=%iXlr;>q>)_O{BvtkHF*(QKy6cg*6j z#M-Ex%vqw*W0=ZN*XzBO$xe~SN3qy^H;X~z?&#X$((?G}<>uzt>%E@MTHxX1lE_NS z-m%!(+TQNStJHAhX5Ub zs>HYB?AE;4l-uCnoXcL--^rH9PsZKS)atjF$xfWZvF-Hb)6~}L>g!IQMo5rus?%`Q z=H89QL9^F`=H}+)<>n`VKhWU1#@Vdf?Ze{c-_X>~)7{7M_w>Hlo4?$cq0MNc&uO^T zk;v4%uhe#N>(ZprWyRs0$=tK)^4zl2h}Gc8&fC4| z>g(s|>Hq)#A^8LW00930EC2ui0LcKP000R80RIUbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2ANwTELlPFWFT*0!Y6Z zmodY%z&QnxeyBlu*p9oqckAINULnsJlKJTtOw{$xSJL14uA3ta=^2cmg1IQU?MH@=sEKS1Je5IZq8GFKHf64>LCOfuIA zkp6&jP$R-5LsvIRO4sC;J*olaDKGM+PLe5bX(otX`twIT0QB_*naiCiCv#r@;ms|X zxJhP#bM}c^nt$vfBwtaGsimKDrU_&geN94UnTYoJB$RZ3B?S$bN`aB1WJb#5D!4HB zBc)mShl31EoS^EetjdrD0AVu!6vGz)Sn_C`o*EcSIn3dJ1F2QT06+z-7Hcf4OyHm? zLNsKtY6XungKMr#+Cm4Ej8^5vs%?zn!x}AwD{i<}_%H_-2CT{if&_iBssUWcqRjyp zpkVL45FDWI0S$QKi8T};Autlpz+mvf2q&yC43!Lw#Fkz_Ip|a@fWw9rXqce!#vFI7 z@fkjZal*0%5fR23XK1X*y)3uvG72TcEc47X*KBjm7XX5X!2+*iUINVknI}~&IP!wW zNGE+j3JAGC0VNx+{PNU^Bm%R|BFJ;I%$hi}_17g70tg_wFf1?up!kD>9aXUa^99^wa83st&_nzq6}^JIRYuIveDhJL z;6y?y6ft=Nf=ghA86((xNA}v6Aju^kNrMU8fE6cfVG1sgU-JSm0~N5qAx7AN7F+<0 z!5M=D_u`-S1~3kg2#|nYVSxxoXatN5V{n|np7sh60+9$17=M}G)KYk_VC)VPs2E8! zOpu1ZTmyIZ+Fb|#z#|ej@bE9W03zWS2a9}|#E1g`Oug$L@B6f#g?T}1Y5&E4pm}^*8!#jxO>3iZq|X8 z94{v^paB4gAOjg33t5c>zzt$m5gOP50F6x5BURN%BESkjAArE%G*~kaP~%kF+T;l; z;3@!op$ivDBmfFv0!ONn36Y#6NxDFURI2iqCy>DnNY)T3+`yK=RAmKlK!ZyRu4YuQ zmpIau%wsVj3wB@^LwM=SF_@s5#S$hlHPQuSf)kiB80SG^fP-^ZvjP(coy?+%0tlqS zottDrn;1g>19Pe>4By1(s+6^nE*L8eT$qCotT3*PjY|;bLYJ}DwGdyb3SMmZ*0?fe zf-{J#Tt47J8;oTD4ZQ3QGP~CVrlG2C`M?L`5`)IXFs_%5feXhX!a`_ZtOa-h2Xz3# z4Tj196&Q7>LnQzXOyLD$OjMf{A;LfBfHAsRb*5HegUD1xNrM>SqHGX^Os{Iy7WiPK zs^Z7gQVNfEi~(h2wdxtxFotI>M5-rPfGKY91*56}9exe0U>yadv1Q!$wRX_lMqB`;KKKo4%H@S92=NKdDMSTOdP67<09@sM z;{X)s1C$>4k4Vfhh>~z4<@gYX^NO&L zBS?CEB~-|zo4137M0(S)qqIhx5CBkbt_Yb{Nc2oSxg#*-2+LzNkY?~cg&3jKvi1k6 zJ930iUpfFss5L{3poLgpx(HK%DngtPKT~Vr&;f(9Ak`6x!4W3-=OQ!^+77Wcw)ed4DQrR5CNY8tZ@UE%ek2AW+<|S6AVPeP zT7*Zi?G8lf?ThFe+_vpEyy-*nid+2R7|*!IH_q{nd;H@d54p%kPV$nQ{NyPAPr1rh z&hnPK{N*r@xmId01erHv2`g9u4{W}W9Q_@xCj4@==%k3UZKn z&2ye0JP?A z2NHxJ6lC&y7YOqI5d^dgr+_=hfd!!iSnz=$Sb`>af+(1RD!76y*n%$j Jf_xDW06Ub*i#q@S diff --git a/src/main/resources/images/gui/study_sample_help.png b/src/main/resources/images/gui/study_sample_help.png new file mode 100644 index 0000000000000000000000000000000000000000..3ea4ef0f5edfe218a92dbe835749ab23d44b8df5 GIT binary patch literal 5326 zcmb_99>FgWu#@mTR+0oP9iAT%*jf<0!(;LU2_XAD}BqRVYEj4A6z&RWu#Ek<3 z#klNwBol!_0@{VWvEzo*KZA{qjUyc3;Kcvb8MLYq7ZaAnWA~8Pq6wjtr2`bQPvoFt;vM=-Xb-^QV0UOB!aTu?c`SA z>f-jQ4Z%P!{5OaQ>=15*%i(6>|MM~zv}WtXadw8TC&L&~36UZhW)Z%GzHq{%W5ew8 zwV!!}Bf=n4bu$b^H&7U(k&H*0Kq6~`w;QG)osYGQ5^LZuY@^M2;NanPVKXz~c!E+W z%Bhrx?{RmO#JBnT_7R%Qet^>t8nE-vSRYv8`#L^qyObBU>)SEbBI#d3=mzX#fnxiD z1R3Y+26GW(1*ZhINtaWu-rKNAQL`EwPklayvVRp~J^Yk=|JjYM8qn!5)$veOkR|hk zBfvb6pndn8AdVe&h0Cmj-KP|^atWG7VurKGD0c;T&J(`S_1VFOrD*D^3#2@K}*U zA!hOZd}=AT%#4=K2s5s~fp*p5n3L)VxAQ^l(o`>t)wbn|7@~y~Hp!ZWUJ}@`FB9@o{yBCTMXFv&E^Uw_EEmQ|gjRW82@m&_rCQb0iSf>L8ST z_gKDBCNsBvDilnjjE#i6XOj-g6$|g5sB}*5SX=&A=}TWASU6VRv+SBbrm%6)0@6oZ zm8WZ@IIv1%g+^*-$DWWTYZ}qU7GUG-PegrEekRTrVvU$FVv(Q#e(2}VTrnr7)71yx zMYCn_!wkA%yg-K8^B4vALbT>i8FFfvMYRuS6>az}%LxLh=)?QZqefFwQrs@vLLlSZ z@AHZY{}L8qyO|94G+41ZtdddYH!Q&JjZ6Y@7wg%iL-Cg-?`jWdtHScmz|3`;&c))tknWoRfI{1UmgA z4*Jdk$EP!rV1DVqW9fZO1MlyL4*g7Mq`AMTl$fsbd6&ri3Wwj8*+ZD-r2V5;+%k;d zM%h8_2Oh&JU&_#-h4-5sK8OV$uQblORUwgvHeHYb_e3 zx9(faNLqN;ss9w(s0)n{t@C&-t%cCi>1H2%RS@cX5>ERlW#CSu-X=dga8R^@Yu3ck zgh{iYpIP7?d>+LJG8TE%?uIV^IW6(B(Db&c zCg~@$*`T{sTCs^Q`#A8iLf6)B!lH7LqwblxqExed=CfTz&?TdEnrt5f(#w#Hw~YVC zZ=^-Hg($I>=>+lJ`n=tGb{fhkhtnOBU+?vEgA3Lmm-lk3!DXQ_1& zjnV@LovgqgW#d_gt)f8`ZXTr8EIL%>ipndiK%$hv%tm6*jCA(1p=@&ru+>s= z@y0Z{nh|dY+PP_Re1w1ZBF)9O#SNotVP6#i8iA|Z>A_?XdQC4O4l)9!^&sOSr!IBT z#1d~e;&^+rsFmrgvEAI7=6VRuO#h`N@BjeX5A-qAmDAOnC0%b6)oQEKfditl@RcUF zp3Tms;F_`rI{H%M=QE;C?~Mr{U;0#LZ*%eFXfM2;>2aC(*?)7DM{?}`3E8J?7ac#m z>X|jj-lffy>n!DDu->w2Ekp^#a5}0spJa|G{upIX(yRYDMjU*l*@4z|@(YWnq_MEq z3%LS^_)C>~yj-d9KRx)H8OvA3x70|zi#;CEQ-ce=Na}17$5+m8j3t?3oS!XHlFhEy z?dU#}c_*=6$gpByq*a~i2cufpIp}ZJJ%Y3a-kc*y<-nN*r<1^g#6F5*ZWWowq@BRb3Nxl?66@i6CBpTp`5iD&Px zM*1z5c=Z+AR%%AXPGrDO0%7~N?;l)|pqxU2<}l+j^gmZ*6$~{9vPu{)E`N?yf6^#w zU&;3ywptAfx#^nS;!$OjLv8$Uld~G&?K&$3RdFZ6K<7M~T>@*LZ^>jM4d!1++= zroB4nA1pg<&!bI%!TVS91yJJUPo>Eh^pJ_{%feSAFcamcSq&p)oVThoPm1iGEA``W zj?d3Uk1Z`KMTR*^h29-`<+;6g3yjuCp18k8s(;HYqO9wv^TVU{{>o@yE8+Q`0Q1h6 z>$Qly1v`h^6jR=toIoVQH%BX5*syT{15EVW`z89lpp7fD+?uiPENXDD{-D1jT5plB zxs%JRbOzes^QQ}%LTp$5LsXg^GwD{?kMw4$srC z-V#$lS0~)>6zw4If3pBH1*CPa`|=-6J*`yV3-_i7adbE-i=27Vj2yK`of6Jx8S)md z119Cd_j7CVEMCkSH>e;7dl>ASa>c*;v#ZNE`z=A7gsKOqCK8EOiT?Lm@T}R=VtIjQ zFBTYt{?H(T8O3XOUoXiijh=Il8emn2#wX|Birl%p#NZ_D!W-RLP%Q8ugF$oSh(|}c)p?<#~=r&6S!OKjBcV+lh>}%;scwM zZd&OuvqhlPb!hF2cI20PluXZtWu-~D%Dn`QgE znn?7i=ZYw0tTc}ElWl3qG13ta(gV&~xvukVTyysyg%8dYAoqqC;`;30P@l{mw!q`N z?d#0zm`v=%f$7?GFrG@=b{A}(ca!i7v4dh7GcY|vd*$5d%lHsU4 zlP8sb4<;Ltg5LgF)qh=jR~sA4b@1)8dh~C&`)r+!2dAniGcR8ksjWXcK$BU$yB4w% z@~b$3A=K`Yg;}CBA2VaIQgh=B5gi!6L-Wgic(kkoujXh&xuk8rsM)ju@k2 zOPg(Kke=@WbIxxbo+Krg9d2o_K#vtlhCYu19(@i{)@xp9Qbi$he(}rwwhSWvm${__ z%{-^`X#>JBb3f+Ru`V+9+ztBhn$2T)LTFKO<|1E~lW8uN(9@?LLP%X)6P8L}#CwYe ztH$?;2dLE)1(|)vl)4si{;Uo`h{U--g0sNg^!_g1MoNLp&+eO>=<(fHrCsY=Cs+Tl zX6~es9GM(h<8s^2nuc4GtKWtO1}-Xc2GMelhvYiy=UifrSqAwNL;F;>t&g5fEpzQd z6GVv%#OX{boQ83n)&@~a;xOP#X=`f)KaC+`&Jxw6vO%={=fz3(&gD-Mb^l|DEKc^tg*(73=|CA-8lr!x8nC|56o+Y z{EbOH0~G(0SFmv_39&K6KmX z)93NIJ|h*ek-s*)8=L~{!n_h#mP{_xEhu3e2@tpwHL+sF)z8D3+Ejl4Q_{LmL>*Pc z;W(1-y*fv+Xnp-;y2*U3khRz-r78f}S!IpM)sU7}8vA*-KCPw_SRi-twcLn}D!gh= zze)cGW)K)y)1i*awvARk)tfP_`ZT=bE07|&Hw`Q>C}hKSCwIDU?^@71l!UNb?U+}_ z7k^o;6s1`bD0of@oyI-syQ&`%$fQrC5$Zqqeb-MhH)l|Y!=eMl#|g1vMN}}r;@~H@ zDX8)8!Vs)rj8}gqpHA?fw{q1i=7MhvLO)Z1q{c_RqjlcYCmDtLpzJ4xT!TBB9=TF4;%yDuXAX9ibyBkt}9e}^Qj$)$yz zc898L?g=}_qzYSZ?_Mkg`OC%w6z!jfq5UVC6y3r$cPsT}V->7p(FAL8P})L6YcO8^ z*@tcMWN-9{fSIWJUJKh=6qCrai;s5rbtA{E#~6l9nz&+jnJUhi*F^CvXn%_sr@p|P+-Co@89nA?XY}oO z&QXG(T)C1`memw559P`WW_s%Fxhd7cprUIx#~00?O@C>et`xgc;+g;2{5T}nkZf9y z$vD*)-K@7^BnN-LTnTMdKvGz^?1jD0z3hHozkZXKx@3CMjbXMNKGWz6kf>do8g{jK z0F@!9wBGZ)4*R8F0Ln-#UTz_~G0zemriE+>NX;!FSBLLL!#`4{XK`hIxxw*U=Egg# z=evM&;ua7v0cLgx|HvWuI#K)d_midq%Yd@o4iH$^(^r~dj=pYD?+q3+^KM`NCh zj@0bKCdI0nFTDrExSEdWM^>@A)opZf{THeVr{zs7cr34KLm{BtIdo#}oGN-06Qzn9 z1HtL^$C?sC02)yrj99ZoGIPYfV*GCv9mWe{?vEMir`Nh`=0#qHE&7qEP2gQKg`dP0 zlhzr0$32sMhZ<2Fa;9D0mGu8gg|d;I)~eIWbCsV~Npaf9P2%Mo1D3UTh#L7*)g9f$ zX6Z z{KdePWV!ai3)u|edLaBOYXf^^Thgi*P1&@1`pJWwqWRjz{H=GsZ0d+12zdBb66GeB z$e6!pX{jFTwp7sCT7E2`hxMeub$L`qg1nAY!kYFbmCuS%n*Wuoq8|wvdg`nssBX)j z@nBSdY$I>VkOPeyKYn#+a&1|3IT*T<%93 z`M>q-R8L~}Kz(S%=#jFGf1GW2mBKwbz^1fBpEX`;G4l{g6WP|ugV)j^c z(lAZXAE8f8BzpK&wpW`zlP{lv(OYD)OMvSM!a|ibGid@L0!1l(EqEK@vJLtPrTTA) zcX?k?uoEoN_Ug`M5wFeKZNHDy76#Mg3=F!dbl!JAw5rG%{9w=c{|e5BvyJP!4@kTN W!<07~<^TOZjuu!??VHN$kN*Q#RyFYe literal 0 HcmV?d00001 From bedae1635079cb161e0594ae202a00f33983126d Mon Sep 17 00:00:00 2001 From: Eamonn Maguire Date: Mon, 20 Jan 2014 13:49:50 +0000 Subject: [PATCH 110/111] Inverted the logic - don't know how I did that. Anyway, fixed now. And added a test. --- .../io/importisa/InvestigationImport.java | 3 ++- .../utils/StringProcessingTest.java | 23 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 src/test/java/org/isatools/isacreator/utils/StringProcessingTest.java diff --git a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java index 9fa1a006..5592dbf6 100644 --- a/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java +++ b/src/main/java/org/isatools/isacreator/io/importisa/InvestigationImport.java @@ -127,9 +127,10 @@ public Pair()); } diff --git a/src/test/java/org/isatools/isacreator/utils/StringProcessingTest.java b/src/test/java/org/isatools/isacreator/utils/StringProcessingTest.java new file mode 100644 index 00000000..f2406b38 --- /dev/null +++ b/src/test/java/org/isatools/isacreator/utils/StringProcessingTest.java @@ -0,0 +1,23 @@ +package org.isatools.isacreator.utils; + +import org.junit.Test; + +import static junit.framework.Assert.assertEquals; + +/** + * Created with IntelliJ IDEA. + * User: eamonnmaguire + * Date: 20/01/2014 + * Time: 13:41 + * To change this template use File | Settings | File Templates. + */ +public class StringProcessingTest { + + @Test + public void testSpaceRemovalInQualifier() { + String comment = "Comment [Technical Validation]"; + comment = StringProcessing.removeSpaceFromQualifiedField(comment); + System.out.println(comment); + assertEquals("Comment should have no spaces...", comment, "Comment[Technical Validation]"); + } +} From 1d37043d6581bbb5e6448e52a299c82c65e3cade Mon Sep 17 00:00:00 2001 From: Alejandra Gonzalez-Beltran Date: Mon, 20 Jan 2014 15:47:57 +0000 Subject: [PATCH 111/111] Updating to latest version of BII-I-1 --- isatab files/BII-I-1/a_metabolome.txt | 224 +++++++++--------- isatab files/BII-I-1/a_microarray.txt | 30 +-- isatab files/BII-I-1/a_proteome.txt | 38 +-- isatab files/BII-I-1/a_transcriptome.txt | 98 ++++---- isatab files/BII-I-1/i_Investigation.txt | 60 +++-- .../test-data/BII-I-1/a_metabolome.txt | 224 +++++++++--------- .../test-data/BII-I-1/a_microarray.txt | 30 +-- .../test-data/BII-I-1/a_proteome.txt | 38 +-- .../test-data/BII-I-1/a_transcriptome.txt | 98 ++++---- .../test-data/BII-I-1/i_investigation.txt | 60 +++-- 10 files changed, 474 insertions(+), 426 deletions(-) diff --git a/isatab files/BII-I-1/a_metabolome.txt b/isatab files/BII-I-1/a_metabolome.txt index c7acfbac..4f9465c9 100644 --- a/isatab files/BII-I-1/a_metabolome.txt +++ b/isatab files/BII-I-1/a_metabolome.txt @@ -1,112 +1,112 @@ -"Sample Name" "Material Type" "Term Source REF" "Term Accession Number" "Protocol REF" "Parameter Value[standard volume]" "Unit" "Term Source REF" "Term Accession Number" "Parameter Value[sample volume]" "Unit" "Term Source REF" "Term Accession Number" "Extract Name" "MS Assay Name" "Raw Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"C-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" -"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "JIC83_Sulphate_0.07_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "JIC84_Sulphate_0.07_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "JIC82_Sulphate_0.07_External_1_2.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "JIC82_Sulphate_0.07_External_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"P-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.1-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.2-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.1-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.2-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.1-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"Sample Name" "Material Type" "Term Source REF" "Term Accession Number" "Protocol REF" "Parameter Value[standard volume]" "Unit" "Term Source REF" "Term Accession Number" "Parameter Value[sample volume]" "Unit" "Term Source REF" "Term Accession Number" "Extract Name" "MS Assay Name" "Raw Spectral Data File" "Comment[Data Repository]" "Comment[Data Record Accession]" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"C-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"P-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "JIC83_Sulphate_0.07_External_2_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "JIC84_Sulphate_0.07_External_3_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "JIC82_Sulphate_0.07_External_1_2.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "JIC82_Sulphate_0.07_External_1_3.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" diff --git a/isatab files/BII-I-1/a_microarray.txt b/isatab files/BII-I-1/a_microarray.txt index 6027228c..23a36f92 100644 --- a/isatab files/BII-I-1/a_microarray.txt +++ b/isatab files/BII-I-1/a_microarray.txt @@ -1,15 +1,15 @@ -"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Comment[ArrayExpress Accession]" "Comment[ArrayExpress Raw Data URL]" "Comment[ArrayExpress Processed Data URL]" "Array Design REF" "Scan Name" "Array Data File" "Data Transformation Name" "Derived Array Data File" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" -"NZ_0hrs_Grow1_Sample_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" -"NZ_1hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_2hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_4hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_2hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_4hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_1hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow2_Sample_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" -"NZ_1hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_4hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_2hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_1hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_2hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_4hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Comment[ArrayExpress Accession]" "Comment[ArrayExpress Raw Data URL]" "Comment[ArrayExpress Processed Data URL]" "Array Design REF" "Scan Name" "Array Data File" "Comment[Data Repository]" "Comment[Data Record Accession]" "Data Transformation Name" "Derived Array Data File" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" +"NZ_0hrs_Grow1_Sample_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_1hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow2_Sample_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_1hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_2hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" diff --git a/isatab files/BII-I-1/a_proteome.txt b/isatab files/BII-I-1/a_proteome.txt index ff906e1e..a6894d46 100644 --- a/isatab files/BII-I-1/a_proteome.txt +++ b/isatab files/BII-I-1/a_proteome.txt @@ -1,19 +1,19 @@ -"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "MS Assay Name" "Comment[PRIDE Accession]" "Comment[PRIDE Processed Data Accession]" "Raw Spectral Data File" "Normalization Name" "Protein Assignment File" "Peptide Assignment File" "Post Translational Modification Assignment File" "Data Transformation Name" "Derived Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "JC_S-0.1" "iTRAQ reagent 117" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "JC_C-0.1" "iTRAQ reagent 116" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "JC_N-0.1" "iTRAQ reagent 115" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" -"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" -"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" -"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "JC_C-0.2" "iTRAQ reagent 117" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "JC_N-0.2" "iTRAQ reagent 116" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "JC_P-0.1" "iTRAQ reagent 115" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" -"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" -"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" -"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "JC_P-0.2" "iTRAQ reagent 116" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "JC_S-0.2" "iTRAQ reagent 115" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" -"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" -"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" -"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "MS Assay Name" "Comment[PRIDE Accession]" "Comment[PRIDE Processed Data Accession]" "Raw Spectral Data File" "Comment[Data Record Accession]" "Comment[Data Repository]" "Normalization Name" "Protein Assignment File" "Peptide Assignment File" "Post Translational Modification Assignment File" "Data Transformation Name" "Derived Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "JC_S-0.1" "iTRAQ reagent 117" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "JC_C-0.1" "iTRAQ reagent 116" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "JC_N-0.1" "iTRAQ reagent 115" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "JC_C-0.2" "iTRAQ reagent 117" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "JC_N-0.2" "iTRAQ reagent 116" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "JC_P-0.1" "iTRAQ reagent 115" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "JC_P-0.2" "iTRAQ reagent 116" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "JC_S-0.2" "iTRAQ reagent 115" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" diff --git a/isatab files/BII-I-1/a_transcriptome.txt b/isatab files/BII-I-1/a_transcriptome.txt index 36f6a420..4602ae12 100644 --- a/isatab files/BII-I-1/a_transcriptome.txt +++ b/isatab files/BII-I-1/a_transcriptome.txt @@ -1,49 +1,49 @@ -"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Array Design REF" "Scan Name" "Array Data File" "Normalization Name" "Derived Array Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Array Design REF" "Scan Name" "Array Data File" "Comment[Data Repository]" "Comment[Data Record Accession]" "Normalization Name" "Derived Array Data File" "Comment[Data Record Accession]" "Comment[Data Repository]" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" diff --git a/isatab files/BII-I-1/i_Investigation.txt b/isatab files/BII-I-1/i_Investigation.txt index b3396128..463faf37 100644 --- a/isatab files/BII-I-1/i_Investigation.txt +++ b/isatab files/BII-I-1/i_Investigation.txt @@ -1,20 +1,21 @@ ONTOLOGY SOURCE REFERENCE -Term Source Name "" "OBI" "OBI_BCGO" "NCBITAXON" "CL" "e.g. OBI" "CHEBI" "RID" "EHDAA" "EFO" "FYPO" "BTO" "NEWT" "UO" "PATO" -Term Source File "" "" "http://data.bioontology.org/ontologies/OBI_BCGO" "http://data.bioontology.org/ontologies/NCBITAXON" "http://data.bioontology.org/ontologies/CL" "" "http://bioportal.bioontology.org/ontologies/49736" "http://bioportal.bioontology.org/ontologies/49816" "http://bioportal.bioontology.org/ontologies/45254" "http://bioportal.bioontology.org/ontologies/49794" "http://bioportal.bioontology.org/ontologies/49892" "ArrayExpress Experimental Factor Ontology" "" "" "" -Term Source Version "" "" "7" "2" "43" "" "49736" "49816" "45254" "49794" "49892" "v 1.26" "v 1.26" "v 1.26" "v 1.26" -Term Source Description "" "" "Beta Cell Genomics Ontology" "National Center for Biotechnology Information (NCBI) Organismal Classification" "Cell Ontology" "" "Chemical entities of biological interest" "RadLex" "Human developmental anatomy, abstract version" "Experimental Factor Ontology" "Fission Yeast Phenotype Ontology" "BRENDA tissue / enzyme source" "NEWT UniProt Taxonomy Database" "Unit Ontology" "Phenotypic qualities (properties)" +Term Source Name "CHEBI" "CL" "OBI" "NCBITAXON" "OBI_BCGO" "PATO" "UO" +Term Source File "http://data.bioontology.org/ontologies/CHEBI" "http://data.bioontology.org/ontologies/CL" "http://data.bioontology.org/ontologies/OBI" "http://data.bioontology.org/ontologies/NCBITAXON" "http://data.bioontology.org/ontologies/OBI_BCGO" "http://data.bioontology.org/ontologies/PATO" "http://data.bioontology.org/ontologies/UO" +Term Source Version "78" "43" "21" "2" "8" "160" "42" +Term Source Description "Chemical Entities of Biological Interest Ontology" "Cell Ontology" "Ontology for Biomedical Investigations" "National Center for Biotechnology Information (NCBI) Organismal Classification" "Beta Cell Genomics Ontology" "Phenotypic Quality Ontology" "Units of Measurement Ontology" INVESTIGATION Investigation Identifier "BII-I-1" Investigation Title "Growth control of the eukaryote cell: a systems biology study in yeast" Investigation Description "Background Cell growth underlies many key cellular and developmental processes, yet a limited number of studies have been carried out on cell-growth regulation. Comprehensive studies at the transcriptional, proteomic and metabolic levels under defined controlled conditions are currently lacking. Results Metabolic control analysis is being exploited in a systems biology study of the eukaryotic cell. Using chemostat culture, we have measured the impact of changes in flux (growth rate) on the transcriptome, proteome, endometabolome and exometabolome of the yeast Saccharomyces cerevisiae. Each functional genomic level shows clear growth-rate-associated trends and discriminates between carbon-sufficient and carbon-limited conditions. Genes consistently and significantly upregulated with increasing growth rate are frequently essential and encode evolutionarily conserved proteins of known function that participate in many protein-protein interactions. In contrast, more unknown, and fewer essential, genes are downregulated with increasing growth rate; their protein products rarely interact with one another. A large proportion of yeast genes under positive growth-rate control share orthologs with other eukaryotes, including humans. Significantly, transcription of genes encoding components of the TOR complex (a major controller of eukaryotic cell growth) is not subject to growth-rate regulation. Moreover, integrative studies reveal the extent and importance of post-transcriptional control, patterns of control of metabolic fluxes at the level of enzyme synthesis, and the relevance of specific enzymatic reactions in the control of metabolic fluxes during cell growth. Conclusion This work constitutes a first comprehensive systems biology study on growth-rate control in the eukaryotic cell. The results have direct implications for advanced studies on cell growth, in vivo regulation of metabolic fluxes for comprehensive metabolic engineering, and for the design of genome-scale systems biology models of the eukaryotic cell." Investigation Submission Date "2007-04-30" Investigation Public Release Date "2009-03-10" -Comment [Created with configuration] "" -Comment [Last Opened With Configuration] "isaconfig-default_v2013-02-13-augmentedGigaDB" -Comment [Owning Organisation URI] "" -Comment [Consortium URI] "" -Comment [Principal Investigator URI] "" -Comment [Investigation keywords] "" +Comment[Created with configuration] "" +Comment[Last Opened With Configuration] "" +Comment[Created With Configuration] "" +Comment[Owning Organisation URI] "" +Comment[Consortium URI] "" +Comment[Principal Investigator URI] "" +Comment[Investigation Keywords] "" INVESTIGATION PUBLICATIONS Investigation PubMed ID "17439666" "1231222" "1234121" Investigation Publication DOI "doi:10.1186/jbiol54" "" "" @@ -36,15 +37,24 @@ Investigation Person Roles "corresponding author" "author" "author" Investigation Person Roles Term Accession Number "" "" "" Investigation Person Roles Term Source REF "" "" "" Comment[Investigation Person REF] "" "" "" +Comment[Investigation Person ORCID] "" "" "" STUDY Study Identifier "BII-S-1" +Study File Name "s_BII-S-1.txt" Study Title "Study of the impact of changes in flux on the transcriptome, proteome, endometabolome and exometabolome of the yeast Saccharomyces cerevisiae under different nutrient limitations" Study Description "We wished to study the impact of growth rate on the total complement of mRNA molecules, proteins, and metabolites in S. cerevisiae, independent of any nutritional or other physiological effects. To achieve this, we carried out our analyses on yeast grown in steady-state chemostat culture under four different nutrient limitations (glucose, ammonium, phosphate, and sulfate) at three different dilution (that is, growth) rates (D = u = 0.07, 0.1, and 0.2/hour, equivalent to population doubling times (Td) of 10 hours, 7 hours, and 3.5 hours, respectively; u = specific growth rate defined as grams of biomass generated per gram of biomass present per unit time)." -Comment[Study Grant Number] "" -Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" -Study File Name "s_BII-S-1.txt" +Comment[Manuscript Licence] "CC BY 3.0" +Comment[Experimental Metadata Licence] "CC0" +Comment[Data Repository] "" +Comment[Data Record Accession] "" +Comment[Data Record URI] "" +Comment[Supplementary Information File Name] "" +Comment[Supplementary Information File Type] "" +Comment[Supplementary File URI] "" +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" STUDY DESIGN DESCRIPTORS Study Design Type "intervention design" Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000115" @@ -98,16 +108,27 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" -Comment[Study Person REF] "" "" "" +Comment[Study Person ORCID] "" "" "" +Comment[Funder] "" "" "" +Comment[FundRef ID] "" "" "" +Comment[Grant Identifier] "" "" "" STUDY Study Identifier "BII-S-2" +Study File Name "s_BII-S-2.txt" Study Title "A time course analysis of transcription response in yeast treated with rapamycin, a specific inhibitor of the TORC1 complex: impact on yeast growth" Study Description "Comprehensive high-throughput analyses at the levels of mRNAs, proteins, and metabolites, and studies on gene expression patterns are required for systems biology studies of cell growth [4,26-29]. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. The effect of rapamycin were studied as follows: a culture growing at mid-exponential phase was divided into two. Rapamycin (200 ng/ml) was added to one half, and the drug's solvent to the other, as the control. Samples were taken at 0, 1, 2 and 4 h after treatment. Gene expression at the mRNA level was investigated by transcriptome analysis using Affymetrix hybridization arrays." -Comment[Study Grant Number] "" -Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" -Study File Name "s_BII-S-2.txt" +Comment[Manuscript Licence] "CC BY 3.0" +Comment[Experimental Metadata Licence] "CC0" +Comment[Data Repository] "" +Comment[Data Record Accession] "" +Comment[Data Record URI] "" +Comment[Supplementary Information File Name] "" +Comment[Supplementary Information File Type] "" +Comment[Supplementary File URI] "" +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" STUDY DESIGN DESCRIPTORS Study Design Type "time series design" Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0500020" @@ -161,4 +182,7 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" -Comment[Study Person REF] "" "" "" +Comment[Study Person ORCID] "" "" "" +Comment[Funder] "" "" "" +Comment[FundRef ID] "" "" "" +Comment[Grant Identifier] "" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_metabolome.txt b/src/test/resources/test-data/BII-I-1/a_metabolome.txt index c7acfbac..4f9465c9 100644 --- a/src/test/resources/test-data/BII-I-1/a_metabolome.txt +++ b/src/test/resources/test-data/BII-I-1/a_metabolome.txt @@ -1,112 +1,112 @@ -"Sample Name" "Material Type" "Term Source REF" "Term Accession Number" "Protocol REF" "Parameter Value[standard volume]" "Unit" "Term Source REF" "Term Accession Number" "Parameter Value[sample volume]" "Unit" "Term Source REF" "Term Accession Number" "Extract Name" "MS Assay Name" "Raw Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"C-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" -"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "JIC83_Sulphate_0.07_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "JIC84_Sulphate_0.07_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "JIC82_Sulphate_0.07_External_1_2.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "JIC82_Sulphate_0.07_External_1_3.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"P-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.1-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.2-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.07-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" -"G-0.1-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.1-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" -"G-0.2-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"G-0.2-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" -"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" -"E-0.1-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" -"E-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"Sample Name" "Material Type" "Term Source REF" "Term Accession Number" "Protocol REF" "Parameter Value[standard volume]" "Unit" "Term Source REF" "Term Accession Number" "Parameter Value[sample volume]" "Unit" "Term Source REF" "Term Accession Number" "Extract Name" "MS Assay Name" "Raw Spectral Data File" "Comment[Data Repository]" "Comment[Data Record Accession]" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"C-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot8" "JIC36_Sulphate_0.20_Internal_1_3" "JIC36_Sulphate_0.20_Internal_1_3.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hour" "" "" +"P-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot8" "JIC20_Phosphate_0.07_Internal_1_1" "JIC20_Phosphate_0.07_Internal_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot9" "JIC21_Phosphate_0.07_Internal_2_1" "JIC21_Phosphate_0.07_Internal_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot8" "JIC22_Phosphate_0.10_Internal_1_1" "JIC22_Phosphate_0.10_Internal_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot9" "JIC23_Phosphate_0.10_Internal_2_1" "JIC23_Phosphate_0.10_Internal_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot10" "JIC24_Phosphate_0.10_Internal_3_1" "JIC24_Phosphate_0.10_Internal_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot8" "JIC25_Phosphate_0.20_Internal_1_1" "JIC25_Phosphate_0.20_Internal_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot9" "JIC26_Phosphate_0.20_Internal_2_1" "JIC26_Phosphate_0.20_Internal_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot10" "JIC27_Phosphate_0.20_Internal_3_1" "JIC27_Phosphate_0.20_Internal_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_1" "JIC10_Nitrogen_0.07_Internal_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_2" "JIC10_Nitrogen_0.07_Internal_1_2.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot8" "JIC10_Nitrogen_0.07_Internal_1_3" "JIC10_Nitrogen_0.07_Internal_1_3.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot9" "JIC11_Nitrogen_0.07_Internal_2_1" "JIC11_Nitrogen_0.07_Internal_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot10" "JIC12_Nitrogen_0.07_Internal_3_1" "JIC12_Nitrogen_0.07_Internal_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot8" "JIC13_Nitrogen_0.10_Internal_1_1" "JIC13_Nitrogen_0.10_Internal_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot9" "JIC14_Nitrogen_0.10_Internal_2_1" "JIC14_Nitrogen_0.10_Internal_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot10" "JIC15_Nitrogen_0.10_Internal_3_1" "JIC15_Nitrogen_0.10_Internal_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot8" "JIC16_Nitrogen_0.20_Internal_1_1" "JIC16_Nitrogen_0.20_Internal_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot9" "JIC17_Nitrogen_0.20_Internal_2_1" "JIC17_Nitrogen_0.20_Internal_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot10" "JIC18_Nitrogen_0.20_Internal_3_1" "JIC18_Nitrogen_0.20_Internal_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_1" "JIC1_Carbon_0.07_Internal_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_2" "JIC1_Carbon_0.07_Internal_1_2.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot8" "JIC1_Carbon_0.07_Internal_1_3" "JIC1_Carbon_0.07_Internal_1_3.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot9" "JIC2_Carbon_0.07_Internal_2_1" "JIC2_Carbon_0.07_Internal_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot10" "JIC3_Carbon_0.07_Internal_3_1" "JIC3_Carbon_0.07_Internal_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot8" "JIC4_Carbon_0.10_Internal_1_1" "JIC4_Carbon_0.10_Internal_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot9" "JIC5_Carbon_0.10_Internal_2_1" "JIC5_Carbon_0.10_Internal_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot10" "JIC6_Carbon_0.10_Internal_3_1" "JIC6_Carbon_0.10_Internal_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot8" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot8" "JIC7_Carbon_0.20_Internal_1_1" "JIC7_Carbon_0.20_Internal_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot9" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot9" "JIC8_Carbon_0.20_Internal_2_1" "JIC8_Carbon_0.20_Internal_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot10" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot10" "JIC9_Carbon_0.20_Internal_3_1" "JIC9_Carbon_0.20_Internal_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_1" "JIC46_GlucoseO2_0.07_Internal_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_2" "JIC46_GlucoseO2_0.07_Internal_1_2.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot4" "JIC46_GlucoseO2_0.07_Internal_1_3" "JIC46_GlucoseO2_0.07_Internal_1_3.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot5" "JIC47_GlucoseO2_0.07_Internal_2_1" "JIC47_GlucoseO2_0.07_Internal_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot6" "JIC48_GlucoseO2_0.07_Internal_3_1" "JIC48_GlucoseO2_0.07_Internal_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot4" "JIC49_GlucoseO2_0.10_Internal_1_1" "JIC49_GlucoseO2_0.10_Internal_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot5" "JIC50_GlucoseO2_0.10_Internal_2_1" "JIC50_GlucoseO2_0.10_Internal_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot6" "JIC51_GlucoseO2_0.10_Internal_3_1" "JIC51_GlucoseO2_0.10_Internal_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot4" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot4" "JIC52_GlucoseO2_0.20_Internal_1_1" "JIC52_GlucoseO2_0.20_Internal_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot5" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot5" "JIC53_GlucoseO2_0.20_Internal_2_1" "JIC53_GlucoseO2_0.20_Internal_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot6" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot6" "JIC54_GlucoseO2_0.20_Internal_3_1" "JIC54_GlucoseO2_0.20_Internal_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_1" "JIC37_Ethanol_0.07_Internal_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_2" "JIC37_Ethanol_0.07_Internal_1_2.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot1" "JIC37_Ethanol_0.07_Internal_1_3" "JIC37_Ethanol_0.07_Internal_1_3.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot2" "JIC38_Ethanol_0.07_Internal_2_1" "JIC38_Ethanol_0.07_Internal_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot3" "JIC39_Ethanol_0.07_Internal_3_1" "JIC39_Ethanol_0.07_Internal_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot1" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot1" "JIC40_Ethanol_0.10_Internal_1_1" "JIC40_Ethanol_0.10_Internal_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot2" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot2" "JIC41_Ethanol_0.10_Internal_2_1" "JIC41_Ethanol_0.10_Internal_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot3" "intracellular" "CL" "http://purl.obolibrary.org/obo/GO_0005622" "metabolite extraction" "4" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "200" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot3" "JIC42_Ethanol_0.10_Internal_3_1" "JIC42_Ethanol_0.10_Internal_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_1" "JIC82_Sulphate_0.07_External_1_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot6" "JIC83_Sulphate_0.07_External_2_1" "JIC83_Sulphate_0.07_External_2_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot7" "JIC84_Sulphate_0.07_External_3_1" "JIC84_Sulphate_0.07_External_3_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_2" "JIC82_Sulphate_0.07_External_1_2.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.07-aliquot5" "JIC82_Sulphate_0.07_External_1_3" "JIC82_Sulphate_0.07_External_1_3.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot5" "JIC85_Sulphate_0.10_External_1_1" "JIC85_Sulphate_0.10_External_1_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.1-aliquot6" "JIC86_Sulphate_0.10_External_2_1" "JIC86_Sulphate_0.10_External_2_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot5" "JIC88_Sulphate_0.20_External_1_1" "JIC88_Sulphate_0.20_External_1_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot6" "JIC89_Sulphate_0.20_External_2_1" "JIC89_Sulphate_0.20_External_2_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "S-0.2-aliquot7" "JIC90_Sulphate_0.20_External_3_1" "JIC90_Sulphate_0.20_External_3_1.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC73_Phosphate_0.07_External_1_1" "JIC73_Phosphate_0.07_External_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot6" "JIC73_Phosphate_0.07_External_1_2" "JIC73_Phosphate_0.07_External_1_2.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot7" "JIC73_Phosphate_0.07_External_1_3" "JIC73_Phosphate_0.07_External_1_3.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC74_Phosphate_0.07_External_2_1" "JIC74_Phosphate_0.07_External_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.07-aliquot5" "JIC75_Phosphate_0.07_External_3_1" "JIC75_Phosphate_0.07_External_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot5" "JIC76_Phosphate_0.10_External_1_1" "JIC76_Phosphate_0.10_External_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot6" "JIC77_Phosphate_0.10_External_2_1" "JIC77_Phosphate_0.10_External_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.1-aliquot7" "JIC78_Phosphate_0.10_External_3_1" "JIC78_Phosphate_0.10_External_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot5" "JIC79_Phosphate_0.20_External_1_1" "JIC79_Phosphate_0.20_External_1_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot6" "JIC80_Phosphate_0.20_External_2_1" "JIC80_Phosphate_0.20_External_2_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "P-0.2-aliquot7" "JIC81_Phosphate_0.20_External_3_1" "JIC81_Phosphate_0.20_External_3_1.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_1" "JIC64_Nitrogen_0.07_External_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_2" "JIC64_Nitrogen_0.07_External_1_2.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot5" "JIC64_Nitrogen_0.07_External_1_3" "JIC64_Nitrogen_0.07_External_1_3.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot6" "JIC65_Nitrogen_0.07_External_2_1" "JIC65_Nitrogen_0.07_External_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.07-aliquot7" "JIC66_Nitrogen_0.07_External_3_1" "JIC66_Nitrogen_0.07_External_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot5" "JIC67_Nitrogen_0.10_External_1_1" "JIC67_Nitrogen_0.10_External_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot6" "JIC68_Nitrogen_0.10_External_2_1" "JIC68_Nitrogen_0.10_External_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.1-aliquot7" "JIC69_Nitrogen_0.10_External_3_1" "JIC69_Nitrogen_0.10_External_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot5" "JIC70_Nitrogen_0.20_External_1_1" "JIC70_Nitrogen_0.20_External_1_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot6" "JIC71_Nitrogen_0.20_External_2_1" "JIC71_Nitrogen_0.20_External_2_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "N-0.2-aliquot7" "JIC72_Nitrogen_0.20_External_3_1" "JIC72_Nitrogen_0.20_External_3_1.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_1" "JIC55_Carbon_0.07_External_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_2" "JIC55_Carbon_0.07_External_1_2.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot5" "JIC55_Carbon_0.07_External_1_3" "JIC55_Carbon_0.07_External_1_3.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot6" "JIC56_Carbon_0.07_External_2_1" "JIC56_Carbon_0.07_External_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.07-aliquot7" "JIC57_Carbon_0.07_External_3_1" "JIC57_Carbon_0.07_External_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot5" "JIC58_Carbon_0.10_External_1_1" "JIC58_Carbon_0.10_External_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot6" "JIC59_Carbon_0.10_External_2_1" "JIC59_Carbon_0.10_External_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.1-aliquot7" "JIC60_Carbon_0.10_External_3_1" "JIC60_Carbon_0.10_External_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot5" "JIC61_Carbon_0.20_External_1_1" "JIC61_Carbon_0.20_External_1_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot6" "JIC62_Carbon_0.20_External_2_1" "JIC62_Carbon_0.20_External_2_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot7" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "C-0.2-aliquot7" "JIC63_Carbon_0.20_External_3_1" "JIC63_Carbon_0.20_External_3_1.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_1" "JIC100_GlucoseO2_0.07_External_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot1" "JIC100_GlucoseO2_0.07_External_1_2" "JIC100_GlucoseO2_0.07_External_1_2.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot2" "JIC101_GlucoseO2_0.07_External_2_1" "JIC101_GlucoseO2_0.07_External_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.07-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.07-aliquot3" "JIC102_GlucoseO2_0.07_External_3_1" "JIC102_GlucoseO2_0.07_External_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.07" "l/hr" "" "" +"G-0.1-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot1" "JIC103_GlucoseO2_0.10_External_1_1" "JIC103_GlucoseO2_0.10_External_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot2" "JIC104_GlucoseO2_0.10_External_2_1" "JIC104_GlucoseO2_0.10_External_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.1-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.1-aliquot3" "JIC105_GlucoseO2_0.10_External_3_1" "JIC105_GlucoseO2_0.10_External_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.1" "l/hr" "" "" +"G-0.2-aliquot1" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot1" "JIC106_GlucoseO2_0.20_External_1_1" "JIC106_GlucoseO2_0.20_External_1_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot2" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot2" "JIC107_GlucoseO2_0.20_External_2_1" "JIC107_GlucoseO2_0.20_External_2_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"G-0.2-aliquot3" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "G-0.2-aliquot3" "JIC108_GlucoseO2_0.20_External_3_1" "JIC108_GlucoseO2_0.20_External_3_1.txt" "" "" "glucose" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_17234" "0.2" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_1" "JIC91_Ethanol_0.07_External_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_2" "JIC91_Ethanol_0.07_External_1_2.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot4" "JIC91_Ethanol_0.07_External_1_3" "JIC91_Ethanol_0.07_External_1_3.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot5" "JIC92_Ethanol_0.07_External_2_1" "JIC92_Ethanol_0.07_External_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.07-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.07-aliquot6" "JIC93_Ethanol_0.07_External_3_1" "JIC93_Ethanol_0.07_External_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.07" "l/hr" "" "" +"E-0.1-aliquot4" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot4" "JIC94_Ethanol_0.10_External_1_1" "JIC94_Ethanol_0.10_External_1_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot5" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot5" "JIC95_Ethanol_0.10_External_2_1" "JIC95_Ethanol_0.10_External_2_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" +"E-0.1-aliquot6" "extracellular region part" "CL" "http://purl.obolibrary.org/obo/GO_0044421" "metabolite extraction" "20" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "1000" "microliter" "UO" "http://purl.obolibrary.org/obo/UO_0000101" "E-0.1-aliquot6" "JIC96_Ethanol_0.10_External_3_1" "JIC96_Ethanol_0.10_External_3_1.txt" "" "" "ethanol" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_16236" "0.1" "l/hr" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_microarray.txt b/src/test/resources/test-data/BII-I-1/a_microarray.txt index 6027228c..23a36f92 100644 --- a/src/test/resources/test-data/BII-I-1/a_microarray.txt +++ b/src/test/resources/test-data/BII-I-1/a_microarray.txt @@ -1,15 +1,15 @@ -"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Comment[ArrayExpress Accession]" "Comment[ArrayExpress Raw Data URL]" "Comment[ArrayExpress Processed Data URL]" "Array Design REF" "Scan Name" "Array Data File" "Data Transformation Name" "Derived Array Data File" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" -"NZ_0hrs_Grow1_Sample_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" -"NZ_1hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_2hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_4hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_2hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_4hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_1hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_0hrs_Grow2_Sample_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" -"NZ_1hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_4hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_2hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" -"NZ_1hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_2hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" -"NZ_4hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Comment[ArrayExpress Accession]" "Comment[ArrayExpress Raw Data URL]" "Comment[ArrayExpress Processed Data URL]" "Array Design REF" "Scan Name" "Array Data File" "Comment[Data Repository]" "Comment[Data Record Accession]" "Data Transformation Name" "Derived Array Data File" "Factor Value[dose]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[exposure time]" "Unit" "Term Source REF" "Term Accession Number" "Factor Value[compound]" "Term Source REF" "Term Accession Number" +"NZ_0hrs_Grow1_Sample_1" "mRNA extraction" "NZ_0hrs_Sample_1_Extract" "biotin labeling" "NZ_0hrs_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_1_Labelled_Hyb1" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_1_Labelled_Hyb1_Scan1" "E-MAXD-4-raw-data-426648549.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_1hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_1_Labelled_Hyb3_Scan3" "E-MAXD-4-raw-data-426648567.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_2hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_1_Labelled_Hyb7_Scan7" "E-MAXD-4-raw-data-426648585.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow1_Drug_Sample_1" "mRNA extraction" "NZ_4hrs_Drug_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_1_Labelled_Hyb11_Scan11" "E-MAXD-4-raw-data-426648603.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_1_Labelled_Hyb9_Scan9" "E-MAXD-4-raw-data-426648639.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_1_Labelled_Hyb13_Scan13" "E-MAXD-4-raw-data-426648657.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_1hrs_Grow1_Vehicle_Sample_1" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_1_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_1_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_1_Labelled_Hyb5_Scan5" "E-MAXD-4-raw-data-426648621.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_0hrs_Grow2_Sample_2" "mRNA extraction" "NZ_0hrs_Sample_2_Extract" "biotin labeling" "NZ_0hrs_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_0hrs_Sample_2_Labelled_Hyb2" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_0hrs_Sample_2_Labelled_Hyb2_Scan2" "E-MAXD-4-raw-data-426648675.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "0" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "" "" "" +"NZ_1hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_1hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Drug_Sample_2_Labelled_Hyb4_Scan4" "E-MAXD-4-raw-data-426648693.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_4hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_4hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Drug_Sample_2_Labelled_Hyb12_Scan12" "E-MAXD-4-raw-data-426648729.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_2hrs_Grow2_Drug_Sample_2" "mRNA extraction" "NZ_2hrs_Drug_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Drug_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Drug_Sample_2_Labelled_Hyb8_Scan8" "E-MAXD-4-raw-data-426648711.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "200" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "sirolimus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_9168" +"NZ_1hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_1hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_1hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_1hrs_Vehicle_Sample_2_Labelled_Hyb6_Scan6" "E-MAXD-4-raw-data-426648747.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "1" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_2hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_2hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_2hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_2hrs_Vehicle_Sample_2_Labelled_Hyb10_Scan10" "E-MAXD-4-raw-data-426648765.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "2" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" +"NZ_4hrs_Grow2_Vehicle_Sample_2" "mRNA extraction" "NZ_4hrs_Vehicle_Sample_2_Extract" "biotin labeling" "NZ_4hrs_Vehicle_Sample_2_Labelled" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14" "E-MEXP-115" "E-MEXP-115" "E-MEXP-115" "A-AFFY-27" "NZ_4hrs_Vehicle_Sample_2_Labelled_Hyb14_Scan14" "E-MAXD-4-raw-data-426648783.txt" "" "" "data processing" "E-MAXD-4-processed-data-1342566476.txt" "0" "nanogram per milliliter" "UO" "http://purl.obolibrary.org/obo/UO_0000275" "4" "hour" "UO" "http://purl.obolibrary.org/obo/UO_0000032" "drug vehicle (90% ethanol/10% tween-20)" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_proteome.txt b/src/test/resources/test-data/BII-I-1/a_proteome.txt index ff906e1e..a6894d46 100644 --- a/src/test/resources/test-data/BII-I-1/a_proteome.txt +++ b/src/test/resources/test-data/BII-I-1/a_proteome.txt @@ -1,19 +1,19 @@ -"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "MS Assay Name" "Comment[PRIDE Accession]" "Comment[PRIDE Processed Data Accession]" "Raw Spectral Data File" "Normalization Name" "Protein Assignment File" "Peptide Assignment File" "Post Translational Modification Assignment File" "Data Transformation Name" "Derived Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "JC_S-0.1" "iTRAQ reagent 117" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "JC_C-0.1" "iTRAQ reagent 116" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "JC_N-0.1" "iTRAQ reagent 115" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" -"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" -"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" -"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "JC_C-0.2" "iTRAQ reagent 117" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "JC_N-0.2" "iTRAQ reagent 116" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "JC_P-0.1" "iTRAQ reagent 115" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" -"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" -"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" -"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "JC_P-0.2" "iTRAQ reagent 116" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "JC_S-0.2" "iTRAQ reagent 115" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" -"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" -"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" -"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "MS Assay Name" "Comment[PRIDE Accession]" "Comment[PRIDE Processed Data Accession]" "Raw Spectral Data File" "Comment[Data Record Accession]" "Comment[Data Repository]" "Normalization Name" "Protein Assignment File" "Peptide Assignment File" "Post Translational Modification Assignment File" "Data Transformation Name" "Derived Spectral Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "JC_S-0.1" "iTRAQ reagent 117" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "JC_C-0.1" "iTRAQ reagent 116" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "JC_N-0.1" "iTRAQ reagent 115" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"S-0.1-aliquot11" "protein extraction" "S-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"C-0.1-aliquot11" "protein extraction" "C-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"N-0.1-aliquot11" "protein extraction" "N-0.1" "ITRAQ labeling" "Pool1" "iTRAQ reagent 114" "" "" "8761" "8761" "8761" "spectrum.mzdata" "" "" "norm1" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation1" "PRIDE_Exp_Complete_Ac_8761.xml" "" "" "" "" "l/hr" "" "" +"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "JC_C-0.2" "iTRAQ reagent 117" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "JC_N-0.2" "iTRAQ reagent 116" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "JC_P-0.1" "iTRAQ reagent 115" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"C-0.2-aliquot11" "protein extraction" "C-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"N-0.2-aliquot11" "protein extraction" "N-0.2" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"P-0.1-aliquot11" "protein extraction" "P-0.1" "ITRAQ labeling" "Pool2" "iTRAQ reagent 114" "" "" "8762" "8762" "8762" "spectrum.mzdata" "" "" "norm2" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation2" "PRIDE_Exp_Complete_Ac_8762.xml" "" "" "" "" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "JC_P-0.2" "iTRAQ reagent 116" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "JC_S-0.2" "iTRAQ reagent 115" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 117" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"P-0.2-aliquot11" "protein extraction" "P-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" +"S-0.2-aliquot11" "protein extraction" "S-0.2" "ITRAQ labeling" "Pool3" "iTRAQ reagent 114" "" "" "8763" "8763" "8763" "spectrum.mzdata" "" "" "norm3" "proteins.csv" "peptides.csv" "ptms.csv" "datatransformation3" "PRIDE_Exp_Complete_Ac_8763.xml" "" "" "" "" "l/hr" "" "" diff --git a/src/test/resources/test-data/BII-I-1/a_transcriptome.txt b/src/test/resources/test-data/BII-I-1/a_transcriptome.txt index 36f6a420..4602ae12 100644 --- a/src/test/resources/test-data/BII-I-1/a_transcriptome.txt +++ b/src/test/resources/test-data/BII-I-1/a_transcriptome.txt @@ -1,49 +1,49 @@ -"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Array Design REF" "Scan Name" "Array Data File" "Normalization Name" "Derived Array Data File" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" -"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" -"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" -"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" -"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" -"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" -"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" -"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" -"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" -"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" -"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" -"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" -"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" -"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"Sample Name" "Protocol REF" "Extract Name" "Protocol REF" "Labeled Extract Name" "Label" "Term Source REF" "Term Accession Number" "Protocol REF" "Hybridization Assay Name" "Array Design REF" "Scan Name" "Array Data File" "Comment[Data Repository]" "Comment[Data Record Accession]" "Normalization Name" "Derived Array Data File" "Comment[Data Record Accession]" "Comment[Data Repository]" "Factor Value[limiting nutrient]" "Term Source REF" "Term Accession Number" "Factor Value[rate]" "Unit" "Term Source REF" "Term Accession Number" +"C-0.07-aliquot1" "mRNA extraction" "C-0.07-aliquot1" "biotin labeling" "C-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3908" "A-AFFY-27" "SCAN:MEXP:3908" "E-MEXP-115-raw-data-331217737.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot2" "mRNA extraction" "C-0.07-aliquot2" "biotin labeling" "C-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3909" "A-AFFY-27" "SCAN:MEXP:3909" "E-MEXP-115-raw-data-331217860.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot3" "mRNA extraction" "C-0.07-aliquot3" "biotin labeling" "C-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3910" "A-AFFY-27" "SCAN:MEXP:3910" "E-MEXP-115-raw-data-331217979.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.07-aliquot4" "mRNA extraction" "C-0.07-aliquot4" "biotin labeling" "C-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3907" "A-AFFY-27" "SCAN:MEXP:3907" "E-MEXP-115-raw-data-331217580.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.07" "l/hr" "" "" +"C-0.1-aliquot1" "mRNA extraction" "C-0.1-aliquot1" "biotin labeling" "C-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3912" "A-AFFY-27" "SCAN:MEXP:3912" "E-MEXP-115-raw-data-331218271.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot2" "mRNA extraction" "C-0.1-aliquot2" "biotin labeling" "C-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3913" "A-AFFY-27" "SCAN:MEXP:3913" "E-MEXP-115-raw-data-331218449.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot3" "mRNA extraction" "C-0.1-aliquot3" "biotin labeling" "C-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3914" "A-AFFY-27" "SCAN:MEXP:3914" "E-MEXP-115-raw-data-331218681.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.1-aliquot4" "mRNA extraction" "C-0.1-aliquot4" "biotin labeling" "C-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3911" "A-AFFY-27" "SCAN:MEXP:3911" "E-MEXP-115-raw-data-331218116.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.1" "l/hr" "" "" +"C-0.2-aliquot1" "mRNA extraction" "C-0.2-aliquot1" "biotin labeling" "C-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3916" "A-AFFY-27" "SCAN:MEXP:3916" "E-MEXP-115-raw-data-331219013.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot2" "mRNA extraction" "C-0.2-aliquot2" "biotin labeling" "C-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3915" "A-AFFY-27" "SCAN:MEXP:3915" "E-MEXP-115-raw-data-331218842.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot3" "mRNA extraction" "C-0.2-aliquot3" "biotin labeling" "C-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3918" "A-AFFY-27" "SCAN:MEXP:3918" "E-MEXP-115-raw-data-331219245.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"C-0.2-aliquot4" "mRNA extraction" "C-0.2-aliquot4" "biotin labeling" "C-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3917" "A-AFFY-27" "SCAN:MEXP:3917" "E-MEXP-115-raw-data-331219131.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental carbon" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33415" "0.2" "l/hr" "" "" +"N-0.07-aliquot1" "mRNA extraction" "N-0.07-aliquot1" "biotin labeling" "N-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3919" "A-AFFY-27" "SCAN:MEXP:3919" "E-MEXP-115-raw-data-331219361.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot2" "mRNA extraction" "N-0.07-aliquot2" "biotin labeling" "N-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3921" "A-AFFY-27" "SCAN:MEXP:3921" "E-MEXP-115-raw-data-331219634.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot3" "mRNA extraction" "N-0.07-aliquot3" "biotin labeling" "N-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3922" "A-AFFY-27" "SCAN:MEXP:3922" "E-MEXP-115-raw-data-331219767.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.07-aliquot4" "mRNA extraction" "N-0.07-aliquot4" "biotin labeling" "N-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3920" "A-AFFY-27" "SCAN:MEXP:3920" "E-MEXP-115-raw-data-331219490.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.07" "l/hr" "" "" +"N-0.1-aliquot1" "mRNA extraction" "N-0.1-aliquot1" "biotin labeling" "N-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3926" "A-AFFY-27" "SCAN:MEXP:3926" "E-MEXP-115-raw-data-331220431.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot2" "mRNA extraction" "N-0.1-aliquot2" "biotin labeling" "N-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3923" "A-AFFY-27" "SCAN:MEXP:3923" "E-MEXP-115-raw-data-331219914.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot3" "mRNA extraction" "N-0.1-aliquot3" "biotin labeling" "N-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3925" "A-AFFY-27" "SCAN:MEXP:3925" "E-MEXP-115-raw-data-331220272.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.1-aliquot4" "mRNA extraction" "N-0.1-aliquot4" "biotin labeling" "N-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3924" "A-AFFY-27" "SCAN:MEXP:3924" "E-MEXP-115-raw-data-331220090.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.1" "l/hr" "" "" +"N-0.2-aliquot1" "mRNA extraction" "N-0.2-aliquot1" "biotin labeling" "N-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3930" "A-AFFY-27" "SCAN:MEXP:3930" "E-MEXP-115-raw-data-331221148.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot2" "mRNA extraction" "N-0.2-aliquot2" "biotin labeling" "N-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3929" "A-AFFY-27" "SCAN:MEXP:3929" "E-MEXP-115-raw-data-331220982.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot3" "mRNA extraction" "N-0.2-aliquot3" "biotin labeling" "N-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3928" "A-AFFY-27" "SCAN:MEXP:3928" "E-MEXP-115-raw-data-331220784.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"N-0.2-aliquot4" "mRNA extraction" "N-0.2-aliquot4" "biotin labeling" "N-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3927" "A-AFFY-27" "SCAN:MEXP:3927" "E-MEXP-115-raw-data-331220607.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental nitrogen" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33267" "0.2" "l/hr" "" "" +"P-0.07-aliquot1" "mRNA extraction" "P-0.07-aliquot1" "biotin labeling" "P-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3932" "A-AFFY-27" "SCAN:MEXP:3932" "E-MEXP-115-raw-data-331221518.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot2" "mRNA extraction" "P-0.07-aliquot2" "biotin labeling" "P-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3934" "A-AFFY-27" "SCAN:MEXP:3934" "E-MEXP-115-raw-data-331221873.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot3" "mRNA extraction" "P-0.07-aliquot3" "biotin labeling" "P-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3931" "A-AFFY-27" "SCAN:MEXP:3931" "E-MEXP-115-raw-data-331221345.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.07-aliquot4" "mRNA extraction" "P-0.07-aliquot4" "biotin labeling" "P-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3933" "A-AFFY-27" "SCAN:MEXP:3933" "E-MEXP-115-raw-data-331221668.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.07" "l/hr" "" "" +"P-0.1-aliquot1" "mRNA extraction" "P-0.1-aliquot1" "biotin labeling" "P-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3938" "A-AFFY-27" "SCAN:MEXP:3938" "E-MEXP-115-raw-data-331222534.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot2" "mRNA extraction" "P-0.1-aliquot2" "biotin labeling" "P-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3935" "A-AFFY-27" "SCAN:MEXP:3935" "E-MEXP-115-raw-data-331222054.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot3" "mRNA extraction" "P-0.1-aliquot3" "biotin labeling" "P-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3937" "A-AFFY-27" "SCAN:MEXP:3937" "E-MEXP-115-raw-data-331222380.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.1-aliquot4" "mRNA extraction" "P-0.1-aliquot4" "biotin labeling" "P-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3936" "A-AFFY-27" "SCAN:MEXP:3936" "E-MEXP-115-raw-data-331222215.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.1" "l/hr" "" "" +"P-0.2-aliquot1" "mRNA extraction" "P-0.2-aliquot1" "biotin labeling" "P-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3940" "A-AFFY-27" "SCAN:MEXP:3940" "E-MEXP-115-raw-data-331222917.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot2" "mRNA extraction" "P-0.2-aliquot2" "biotin labeling" "P-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3941" "A-AFFY-27" "SCAN:MEXP:3941" "E-MEXP-115-raw-data-331223115.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot3" "mRNA extraction" "P-0.2-aliquot3" "biotin labeling" "P-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3942" "A-AFFY-27" "SCAN:MEXP:3942" "E-MEXP-115-raw-data-331223321.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"P-0.2-aliquot4" "mRNA extraction" "P-0.2-aliquot4" "biotin labeling" "P-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3939" "A-AFFY-27" "SCAN:MEXP:3939" "E-MEXP-115-raw-data-331222701.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental phosphorus" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33464" "0.2" "l/hr" "" "" +"S-0.07-aliquot1" "mRNA extraction" "S-0.07-aliquot1" "biotin labeling" "S-0.07-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3944" "A-AFFY-27" "SCAN:MEXP:3944" "E-MEXP-115-raw-data-331223667.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot2" "mRNA extraction" "S-0.07-aliquot2" "biotin labeling" "S-0.07-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3945" "A-AFFY-27" "SCAN:MEXP:3945" "E-MEXP-115-raw-data-331223835.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot3" "mRNA extraction" "S-0.07-aliquot3" "biotin labeling" "S-0.07-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3946" "A-AFFY-27" "SCAN:MEXP:3946" "E-MEXP-115-raw-data-331223977.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.07-aliquot4" "mRNA extraction" "S-0.07-aliquot4" "biotin labeling" "S-0.07-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3943" "A-AFFY-27" "SCAN:MEXP:3943" "E-MEXP-115-raw-data-331223501.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.07" "l/hr" "" "" +"S-0.1-aliquot1" "mRNA extraction" "S-0.1-aliquot1" "biotin labeling" "S-0.1-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3948" "A-AFFY-27" "SCAN:MEXP:3948" "E-MEXP-115-raw-data-331224301.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot2" "mRNA extraction" "S-0.1-aliquot2" "biotin labeling" "S-0.1-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3947" "A-AFFY-27" "SCAN:MEXP:3947" "E-MEXP-115-raw-data-331224145.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot3" "mRNA extraction" "S-0.1-aliquot3" "biotin labeling" "S-0.1-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3950" "A-AFFY-27" "SCAN:MEXP:3950" "E-MEXP-115-raw-data-331224703.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.1-aliquot4" "mRNA extraction" "S-0.1-aliquot4" "biotin labeling" "S-0.1-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3949" "A-AFFY-27" "SCAN:MEXP:3949" "E-MEXP-115-raw-data-331224480.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.1" "l/hr" "" "" +"S-0.2-aliquot1" "mRNA extraction" "S-0.2-aliquot1" "biotin labeling" "S-0.2-aliquot1" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3951" "A-AFFY-27" "SCAN:MEXP:3951" "E-MEXP-115-raw-data-331224884.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot2" "mRNA extraction" "S-0.2-aliquot2" "biotin labeling" "S-0.2-aliquot2" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3954" "A-AFFY-27" "SCAN:MEXP:3954" "E-MEXP-115-raw-data-331225401.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot3" "mRNA extraction" "S-0.2-aliquot3" "biotin labeling" "S-0.2-aliquot3" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3952" "A-AFFY-27" "SCAN:MEXP:3952" "E-MEXP-115-raw-data-331225097.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" +"S-0.2-aliquot4" "mRNA extraction" "S-0.2-aliquot4" "biotin labeling" "S-0.2-aliquot4" "biotin" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_15956" "EukGE-WS4" "HYB:MEXP:3953" "A-AFFY-27" "SCAN:MEXP:3953" "E-MEXP-115-raw-data-331225235.txt" "" "" "GCRMA normalization" "E-MEXP-115-processed-data-1341986893.txt" "" "" "elemental sulfur" "CHEBI" "http://purl.obolibrary.org/obo/CHEBI_33403" "0.2" "l/hr" "" "" diff --git a/src/test/resources/test-data/BII-I-1/i_investigation.txt b/src/test/resources/test-data/BII-I-1/i_investigation.txt index b3396128..463faf37 100644 --- a/src/test/resources/test-data/BII-I-1/i_investigation.txt +++ b/src/test/resources/test-data/BII-I-1/i_investigation.txt @@ -1,20 +1,21 @@ ONTOLOGY SOURCE REFERENCE -Term Source Name "" "OBI" "OBI_BCGO" "NCBITAXON" "CL" "e.g. OBI" "CHEBI" "RID" "EHDAA" "EFO" "FYPO" "BTO" "NEWT" "UO" "PATO" -Term Source File "" "" "http://data.bioontology.org/ontologies/OBI_BCGO" "http://data.bioontology.org/ontologies/NCBITAXON" "http://data.bioontology.org/ontologies/CL" "" "http://bioportal.bioontology.org/ontologies/49736" "http://bioportal.bioontology.org/ontologies/49816" "http://bioportal.bioontology.org/ontologies/45254" "http://bioportal.bioontology.org/ontologies/49794" "http://bioportal.bioontology.org/ontologies/49892" "ArrayExpress Experimental Factor Ontology" "" "" "" -Term Source Version "" "" "7" "2" "43" "" "49736" "49816" "45254" "49794" "49892" "v 1.26" "v 1.26" "v 1.26" "v 1.26" -Term Source Description "" "" "Beta Cell Genomics Ontology" "National Center for Biotechnology Information (NCBI) Organismal Classification" "Cell Ontology" "" "Chemical entities of biological interest" "RadLex" "Human developmental anatomy, abstract version" "Experimental Factor Ontology" "Fission Yeast Phenotype Ontology" "BRENDA tissue / enzyme source" "NEWT UniProt Taxonomy Database" "Unit Ontology" "Phenotypic qualities (properties)" +Term Source Name "CHEBI" "CL" "OBI" "NCBITAXON" "OBI_BCGO" "PATO" "UO" +Term Source File "http://data.bioontology.org/ontologies/CHEBI" "http://data.bioontology.org/ontologies/CL" "http://data.bioontology.org/ontologies/OBI" "http://data.bioontology.org/ontologies/NCBITAXON" "http://data.bioontology.org/ontologies/OBI_BCGO" "http://data.bioontology.org/ontologies/PATO" "http://data.bioontology.org/ontologies/UO" +Term Source Version "78" "43" "21" "2" "8" "160" "42" +Term Source Description "Chemical Entities of Biological Interest Ontology" "Cell Ontology" "Ontology for Biomedical Investigations" "National Center for Biotechnology Information (NCBI) Organismal Classification" "Beta Cell Genomics Ontology" "Phenotypic Quality Ontology" "Units of Measurement Ontology" INVESTIGATION Investigation Identifier "BII-I-1" Investigation Title "Growth control of the eukaryote cell: a systems biology study in yeast" Investigation Description "Background Cell growth underlies many key cellular and developmental processes, yet a limited number of studies have been carried out on cell-growth regulation. Comprehensive studies at the transcriptional, proteomic and metabolic levels under defined controlled conditions are currently lacking. Results Metabolic control analysis is being exploited in a systems biology study of the eukaryotic cell. Using chemostat culture, we have measured the impact of changes in flux (growth rate) on the transcriptome, proteome, endometabolome and exometabolome of the yeast Saccharomyces cerevisiae. Each functional genomic level shows clear growth-rate-associated trends and discriminates between carbon-sufficient and carbon-limited conditions. Genes consistently and significantly upregulated with increasing growth rate are frequently essential and encode evolutionarily conserved proteins of known function that participate in many protein-protein interactions. In contrast, more unknown, and fewer essential, genes are downregulated with increasing growth rate; their protein products rarely interact with one another. A large proportion of yeast genes under positive growth-rate control share orthologs with other eukaryotes, including humans. Significantly, transcription of genes encoding components of the TOR complex (a major controller of eukaryotic cell growth) is not subject to growth-rate regulation. Moreover, integrative studies reveal the extent and importance of post-transcriptional control, patterns of control of metabolic fluxes at the level of enzyme synthesis, and the relevance of specific enzymatic reactions in the control of metabolic fluxes during cell growth. Conclusion This work constitutes a first comprehensive systems biology study on growth-rate control in the eukaryotic cell. The results have direct implications for advanced studies on cell growth, in vivo regulation of metabolic fluxes for comprehensive metabolic engineering, and for the design of genome-scale systems biology models of the eukaryotic cell." Investigation Submission Date "2007-04-30" Investigation Public Release Date "2009-03-10" -Comment [Created with configuration] "" -Comment [Last Opened With Configuration] "isaconfig-default_v2013-02-13-augmentedGigaDB" -Comment [Owning Organisation URI] "" -Comment [Consortium URI] "" -Comment [Principal Investigator URI] "" -Comment [Investigation keywords] "" +Comment[Created with configuration] "" +Comment[Last Opened With Configuration] "" +Comment[Created With Configuration] "" +Comment[Owning Organisation URI] "" +Comment[Consortium URI] "" +Comment[Principal Investigator URI] "" +Comment[Investigation Keywords] "" INVESTIGATION PUBLICATIONS Investigation PubMed ID "17439666" "1231222" "1234121" Investigation Publication DOI "doi:10.1186/jbiol54" "" "" @@ -36,15 +37,24 @@ Investigation Person Roles "corresponding author" "author" "author" Investigation Person Roles Term Accession Number "" "" "" Investigation Person Roles Term Source REF "" "" "" Comment[Investigation Person REF] "" "" "" +Comment[Investigation Person ORCID] "" "" "" STUDY Study Identifier "BII-S-1" +Study File Name "s_BII-S-1.txt" Study Title "Study of the impact of changes in flux on the transcriptome, proteome, endometabolome and exometabolome of the yeast Saccharomyces cerevisiae under different nutrient limitations" Study Description "We wished to study the impact of growth rate on the total complement of mRNA molecules, proteins, and metabolites in S. cerevisiae, independent of any nutritional or other physiological effects. To achieve this, we carried out our analyses on yeast grown in steady-state chemostat culture under four different nutrient limitations (glucose, ammonium, phosphate, and sulfate) at three different dilution (that is, growth) rates (D = u = 0.07, 0.1, and 0.2/hour, equivalent to population doubling times (Td) of 10 hours, 7 hours, and 3.5 hours, respectively; u = specific growth rate defined as grams of biomass generated per gram of biomass present per unit time)." -Comment[Study Grant Number] "" -Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" -Study File Name "s_BII-S-1.txt" +Comment[Manuscript Licence] "CC BY 3.0" +Comment[Experimental Metadata Licence] "CC0" +Comment[Data Repository] "" +Comment[Data Record Accession] "" +Comment[Data Record URI] "" +Comment[Supplementary Information File Name] "" +Comment[Supplementary Information File Type] "" +Comment[Supplementary File URI] "" +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" STUDY DESIGN DESCRIPTORS Study Design Type "intervention design" Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0000115" @@ -98,16 +108,27 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" -Comment[Study Person REF] "" "" "" +Comment[Study Person ORCID] "" "" "" +Comment[Funder] "" "" "" +Comment[FundRef ID] "" "" "" +Comment[Grant Identifier] "" "" "" STUDY Study Identifier "BII-S-2" +Study File Name "s_BII-S-2.txt" Study Title "A time course analysis of transcription response in yeast treated with rapamycin, a specific inhibitor of the TORC1 complex: impact on yeast growth" Study Description "Comprehensive high-throughput analyses at the levels of mRNAs, proteins, and metabolites, and studies on gene expression patterns are required for systems biology studies of cell growth [4,26-29]. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. Although such comprehensive data sets are lacking, many studies have pointed to a central role for the target-of-rapamycin (TOR) signal transduction pathway in growth control. TOR is a serine/threonine kinase that has been conserved from yeasts to mammals; it integrates signals from nutrients or growth factors to regulate cell growth and cell-cycle progression coordinately. The effect of rapamycin were studied as follows: a culture growing at mid-exponential phase was divided into two. Rapamycin (200 ng/ml) was added to one half, and the drug's solvent to the other, as the control. Samples were taken at 0, 1, 2 and 4 h after treatment. Gene expression at the mRNA level was investigated by transcriptome analysis using Affymetrix hybridization arrays." -Comment[Study Grant Number] "" -Comment[Study Funding Agency] "" Study Submission Date "2007-04-30" Study Public Release Date "2009-03-10" -Study File Name "s_BII-S-2.txt" +Comment[Manuscript Licence] "CC BY 3.0" +Comment[Experimental Metadata Licence] "CC0" +Comment[Data Repository] "" +Comment[Data Record Accession] "" +Comment[Data Record URI] "" +Comment[Supplementary Information File Name] "" +Comment[Supplementary Information File Type] "" +Comment[Supplementary File URI] "" +Comment[Study Grant Number] "" +Comment[Study Funding Agency] "" STUDY DESIGN DESCRIPTORS Study Design Type "time series design" Study Design Type Term Accession Number "http://purl.obolibrary.org/obo/OBI_0500020" @@ -161,4 +182,7 @@ Study Person Affiliation "Faculty of Life Sciences, Michael Smith Building, Univ Study Person Roles "corresponding author" "author" "author" Study Person Roles Term Accession Number "" "" "" Study Person Roles Term Source REF "" "" "" -Comment[Study Person REF] "" "" "" +Comment[Study Person ORCID] "" "" "" +Comment[Funder] "" "" "" +Comment[FundRef ID] "" "" "" +Comment[Grant Identifier] "" "" ""