Skip to content

Instantly share code, notes, and snippets.

View msalvadores's full-sized avatar

Manuel Salvadores msalvadores

View GitHub Profile
@msalvadores
msalvadores / gist:2210491
Created March 26, 2012 23:12
Simple Python Script to Query sparql.bioportal.org
import json,urllib2,urllib,traceback, sys
def query(q,apikey,epr,f='application/json'):
try:
params = {'query': q, 'apikey': apikey}
params = urllib.urlencode(params)
opener = urllib2.build_opener(urllib2.HTTPHandler)
request = urllib2.Request(epr+'?'+params)
request.add_header('Accept', f)
request.get_method = lambda: 'GET'
@msalvadores
msalvadores / gist:2210565
Created March 26, 2012 23:20
Java function to pass the api key to BioPortal SPARQL
public ResultSet executeQuery(String queryString) throws Exception {
Query query = QueryFactory.create(queryString) ;
QueryEngineHTTP qexec = QueryExecutionFactory.createServiceRequest(this.service, query)
qexec.addParam("apikey", this.apikey)
ResultSet results = qexec.execSelect() ;
return results;
}
@msalvadores
msalvadores / mini_dsl.rb
Last active December 15, 2015 00:38
A mini DSL to dynamically generate objects in Ruby.
require 'pry'
module Test
module Settings
def self.included(base)
base.extend(ClassMethods)
end
module ClassMethods
attr_accessor :settings
@msalvadores
msalvadores / array_append_len_known.py
Last active December 15, 2015 08:09
A benchmark of two approaches to constructing an array. Bytearray vs array+join. Limitation: one should know the length of the array. Within pypy-1.9 the bytearray approach is one order of magnitude faster. In CPython-2.7, bytearray aprox. 35% faster.
import timeit
DATA = 'abcdef'
def bytearr():
bytesn = 1024 * 1024 * 5
s = bytearray(bytesn)
i = 0
while i < bytesn:
s[i] = DATA[i%len(DATA)]
import sys
import urllib,urllib2
import traceback
import pdb
import time
import json
import os
def query(q,epr,f='text/plain'):
params = {'query': q}
@msalvadores
msalvadores / dwcterms_owl.rdf
Created June 5, 2014 19:47
dwc_terms_owl.rdf
<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
<!ENTITY dcam "http://purl.org/dc/dcam/" >
<!ENTITY dcterms "http://purl.org/dc/terms/" >
<!ENTITY dcmitype "http://purl.org/dc/dcmitype/" >
<!ENTITY dwc "http://rs.tdwg.org/dwc/terms/" >
<!ENTITY dwctype "http://rs.tdwg.org/dwc/dwctype/" >
<!ENTITY owl "http://www.w3.org/2002/07/owl#" >
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
@msalvadores
msalvadores / traverse_go_classes.py
Last active August 29, 2015 14:07
A simple script to traverse all GO classes
import requests
import time
import pdb
import json
import sys
import urllib
FILE_NAME = "ontology_ids_and_parents.txt"
APIKEY = 'YOUR KEY'