Skip to content

Instantly share code, notes, and snippets.

@alexissmirnov
Last active September 14, 2015 02:02
Show Gist options
  • Save alexissmirnov/eae6bb82776f88cf40c0 to your computer and use it in GitHub Desktop.
Save alexissmirnov/eae6bb82776f88cf40c0 to your computer and use it in GitHub Desktop.
var http = require('http');
var url = require('url');
http.createServer(function (request, response) {
var body = 'Request is :' + request;
var postData = '';
request.on('data', function (chunk) {
postData += chunk;
});
request.on('end', function() {
var options = {
hostname: '127.0.0.1',
port: 8880,
path: '/stanbol/enhancer',
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'text/plain',
'Content-Length': postData.length
}
};
var stombolResponse = '';
var stanbol = http.request(options, function(res) {
res.setEncoding('utf8');
res.on('data', function (chunk) {
stombolResponse += chunk;
});
res.on('end', function() {
//console.log('Got JSON: ' + stombolResponse)
var stombolResponseJson = JSON.parse(stombolResponse);
response.write(stombolResponse);
response.write("\n\n\n");
for(var e in stombolResponseJson["@graph"]) {
var types = stombolResponseJson["@graph"][e]['@type'];
var isPerson = false;
var isPlace = false;
for(var t in types) {
if( types[t] === "schema:Person") {
isPerson = true;
}
if( types[t] === "schema:Place") {
isPlace = true;
}
}
if( isPerson || isPlace ) {
var enLabel = "(no english label)"
for(var i in stombolResponseJson["@graph"][e]["rdfs:label"]) {
if( stombolResponseJson["@graph"][e]["rdfs:label"][i]["@language"] === "en" )
enLabel = stombolResponseJson["@graph"][e]["rdfs:label"][i]["@value"]
}
var confidence = '(unknown)'
for(var c in stombolResponseJson["@graph"]) {
if( stombolResponseJson["@graph"][c]["enhancer:entity-reference"] === stombolResponseJson["@graph"][e]["@id"] )
confidence = stombolResponseJson["@graph"][c]["enhancer:confidence"]
}
response.write("\n\nENTITY: " + enLabel + "\n");
response.write("CONFIDENCE: " + confidence + "\n")
response.write("ID: " + stombolResponseJson["@graph"][e]["@id"] + "\n");
response.write("DESCRIPTION: " + stombolResponseJson["@graph"][e]["rdfs:comment"]["@value"] + "\n");
}
}
response.end();
})
});
stanbol.write(postData);
stanbol.end();
stanbol.on('error', function(e) {
console.log('problem with request: ' + e.message);
});
});
}).listen(8124);
console.log('Server running at http://127.0.0.1:8124/');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment