Module: EBICheck::Utils
- Defined in:
- lib/ebi_check/utils.rb
Constant Summary collapse
- XPATH_STUDY_TITLE =
Study XPaths
'//STUDY_TITLE'- XPATH_STUDY_DESCRIPTION =
'//STUDY_DESCRIPTION'- XPATH_CENTER_PROJECT_NAME =
'//CENTER_PROJECT_NAME'- XPATH_STUDY_ABSTRACT =
'//STUDY_ABSTRACT'- XPATH_EXISTING_STUDY_TYPE =
'//STUDY_TYPE/@existing_study_type'- XPATH_NEW_STUDY_TYPE =
'//STUDY_TYPE/@new_study_type'- XPATH_SCIENTIFIC_NAME =
Sample XPaths
'//SAMPLE/SAMPLE_NAME/SCIENTIFIC_NAME'- XPATH_COMMON_NAME =
'//SAMPLE/SAMPLE_NAME/COMMON_NAME'- XPATH_SAMPLE_TITLE =
'//SAMPLE/TITLE'- XPATH_SAMPLE_ATTRIBUTE =
'//SAMPLE/SAMPLE_ATTRIBUTES/SAMPLE_ATTRIBUTE'- XPATH_TAXON_ID =
'//SAMPLE/SAMPLE_NAME/TAXON_ID'- XPATH_VALUE =
'VALUE'- XPATH_TAG =
'TAG'
Class Method Summary collapse
-
.extract_sample_fields(xml) ⇒ Hash
Extracts sample fields from the provided XML string.
-
.extract_study_fields(xml) ⇒ Hash
Extracts study fields from the provided XML string.
Class Method Details
.extract_sample_fields(xml) ⇒ Hash
Extracts sample fields from the provided XML string.
58 59 60 61 62 63 |
# File 'lib/ebi_check/utils.rb', line 58 def extract_sample_fields(xml) doc = Nokogiri::XML(xml) result = extract_sample_basic_fields(doc) result.merge!(extract_sample_attributes_fields(doc)) result end |
.extract_study_fields(xml) ⇒ Hash
Extracts study fields from the provided XML string.
43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/ebi_check/utils.rb', line 43 def extract_study_fields(xml) doc = Nokogiri::XML(xml) { title: doc.at_xpath(XPATH_STUDY_TITLE)&.text, description: doc.at_xpath(XPATH_STUDY_DESCRIPTION)&.text, project_name: doc.at_xpath(XPATH_CENTER_PROJECT_NAME)&.text, abstract: doc.at_xpath(XPATH_STUDY_ABSTRACT)&.text, existing_study_type: doc.at_xpath(XPATH_EXISTING_STUDY_TYPE)&.text, new_study_type: doc.at_xpath(XPATH_NEW_STUDY_TYPE)&.text } end |