27
27
* @version 2.0
28
28
* @author Alison Callahan
29
29
* @author Jose Cruz-Toledo
30
+ * @author Michel Dumontier
30
31
*/
31
32
32
33
require (__DIR__ .'/../../php-lib/bio2rdfapi.php ' );
34
+ require (__DIR__ .'/../../php-lib/dataresource.php ' );
33
35
34
36
class HGNCParser extends Bio2RDFizer {
35
37
private $ version = 2.0 ;
@@ -58,6 +60,7 @@ function Run(){
58
60
parent ::setParameterValue ('download ' ,true );
59
61
}
60
62
//download the hgnc file
63
+ $ rfile = null ;
61
64
if (parent ::getParameterValue ('download ' ) == true ) {
62
65
$ rfile = $ rdir ;
63
66
echo "downloading $ file ... " ;
@@ -81,20 +84,45 @@ function Run(){
81
84
echo PHP_EOL ;
82
85
// generate the dataset release file
83
86
echo "generating dataset release file... " ;
84
- $ desc = parent ::getBio2RDFDatasetDescription (
85
- $ this ->getPrefix (),
86
- "https://github.com/bio2rdf/bio2rdf-scripts/blob/master/hgnc/hgnc.php " ,
87
- $ this ->getBio2RDFDownloadURL ($ this ->getNamespace ()),
88
- "http://www.genenames.org " ,
89
- array ("use " ),
90
- "http://www.genenames.org/about/overview " ,
91
- "ftp://ftp.ebi.ac.uk/pub/databases/genenames/hgnc_complete_set.txt.gz " ,
92
- parent ::getDatasetVersion ()
93
- );
94
- parent ::setWriteFile ($ odir .$ this ->getBio2RDFReleaseFile ($ this ->getNamespace ()));
95
- parent ::getWriteFile ()->write ($ desc );
87
+ $ dataset_description = '' ;
88
+ $ source_file = (new DataResource ($ this ))
89
+ ->setURI ($ rdir )
90
+ ->setTitle ('HUGO Gene Nomenclature Committee (HGNC) ' )
91
+ ->setRetrievedDate (date ("Y-m-d\TG:i:s\Z " , filemtime ($ lfile )))
92
+ ->setFormat ('text/tab-separated-value ' )
93
+ ->setFormat ('application/zip ' )
94
+ ->setPublisher ('http://www.genenames.org/ ' )
95
+ ->setHomepage ('http://www.genenames.org/data/gdlw_columndef.html ' )
96
+ ->setRights ('use ' )
97
+ ->setRights ('attribution ' )
98
+ ->setLicense ('http://www.genenames.org/about/overview ' )
99
+ ->setDataset (parent ::getDatasetURI ());
100
+
101
+ $ prefix = parent ::getPrefix ();
102
+ $ bVersion = parent ::getParameterValue ('bio2rdf_release ' );
103
+ $ date = date ("Y-m-d\TG:i:s\Z " );
104
+ $ output_file = (new DataResource ($ this ))
105
+ ->setURI ("http://download.bio2rdf.org/release/ $ bVersion/ $ prefix " )
106
+ ->setTitle ("Bio2RDF v $ bVersion RDF version of $ prefix (generated at $ date) " )
107
+ ->setSource ($ source_file ->getURI ())
108
+ ->setCreator ("https://github.com/bio2rdf/bio2rdf-scripts/blob/master/hgnc/hgnc.php " )
109
+ ->setCreateDate ($ date )
110
+ ->setHomepage ("http://download.bio2rdf.org/release/ $ bVersion/ $ prefix/ $ prefix.html " )
111
+ ->setPublisher ("http://bio2rdf.org " )
112
+ ->setRights ("use-share-modify " )
113
+ ->setRights ("restricted-by-source-license " )
114
+ ->setLicense ("http://creativecommons/licenses/by/3.0/ " )
115
+ ->setDataset (parent ::getDatasetURI ());
116
+
96
117
parent ::getWriteFile ()->close ();
97
118
echo "done! " .PHP_EOL ;
119
+ if ($ gz ) $ output_file ->setFormat ("application/gzip " );
120
+ if (strstr (parent ::getParameterValue ('output_format ' ),"nt " )) $ output_file ->setFormat ("application/n-triples " );
121
+ else $ output_file ->setFormat ("application/n-quads " );
122
+ $ dataset_description .= $ source_file ->toRDF ().$ output_file ->toRDF ();
123
+ $ this ->setWriteFile ($ odir .$ this ->getBio2RDFReleaseFile ());
124
+ $ this ->getWriteFile ()->write ($ dataset_description );
125
+ $ this ->getWriteFile ()->close ();
98
126
99
127
}//Run
100
128
0 commit comments