edrn / edrn.bmdb Goto Github PK
View Code? Open in Web Editor NEWBiomarker Database (rewrite and utilities)
License: Apache License 2.0
Biomarker Database (rewrite and utilities)
License: Apache License 2.0
The RDF generation for organ-specific information for a biomarker doesn't include the study.
The FHCRC_ID column of the study data should be used to make a <bmdb:referencesStudy>
predicate whose rdf:resource
is http://edrn.nci.nih.gov/data/protocols/{PROTOCOL-ID}
.
BMDB RDF says that for biomarker http://edrn.jpl.nasa.gov/bmdb/biomarkers/view/53
the AssociatedDataset
predicate is https://edrn-labcas.jpl.nasa.gov/labcas-ui/c/index.html?collection_id=Barretts_Esophagus_Methylation_Profile_Dataset
.
However, the actual subject URI is https://edrn-labcas.jpl.nasa.gov/labcas-ui/c/index.html?collection_id=Barrett's_Esophagus_Methylation_Profile_Dataset
.
After a while, queries into the RDF service for the Focus Bio Marker Data Base (BMDB) fail and emit this in the logs:
focusbmdb-rdf | File "/app/src/edrn/bmdb/server.py", line 50, in __call__
focusbmdb-rdf | cursor.execute('SELECT COUNT(*) FROM `biomarkers`')
focusbmdb-rdf | File "/app/eggs/PyMySQL-0.10.0-py3.8.egg/pymysql/cursors.py", line 163, in execute
focusbmdb-rdf | result = self._query(query)
focusbmdb-rdf | File "/app/eggs/PyMySQL-0.10.0-py3.8.egg/pymysql/cursors.py", line 321, in _query
focusbmdb-rdf | conn.query(q)
focusbmdb-rdf | File "/app/eggs/PyMySQL-0.10.0-py3.8.egg/pymysql/connections.py", line 504, in query
focusbmdb-rdf | self._execute_command(COMMAND.COM_QUERY, sql)
focusbmdb-rdf | File "/app/eggs/PyMySQL-0.10.0-py3.8.egg/pymysql/connections.py", line 742, in _execute_command
focusbmdb-rdf | raise err.InterfaceError(0, '')
focusbmdb-rdf | pymysql.err.InterfaceError: (0, '')
This discussion suggests that having a universal connection object is the culprit. We need to create one per thread.
The EDRN Portal needs to provide biomarker phase information at the organ→study level. To do so, it must get this information from the BMDB RDF.
See: EDRN/P5#140
This package is still using Python 2.7, which reached end of life on 2020-01-01.
Python 3 has been out 12 years. It's time to leave Python 2 behind.
Currently phases are of the form
http://edrn.nci.nih.gov/rdf/rdfs/bmdb-1.0.0#Phase = One
or
http://edrn.nci.nih.gov/rdf/rdfs/bmdb-1.0.0#Phase = Three
which is dumb for sorting purposes. But this is how ahart did it back in the day. We need to use actual numbers so we can sort properly, i.e.:
http://edrn.nci.nih.gov/rdf/rdfs/bmdb-1.0.0#Phase = 1
or
http://edrn.nci.nih.gov/rdf/rdfs/bmdb-1.0.0#Phase = 3
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.