Example #1
0
http.onRequest("ontologies/<ontology>/documents/", "GET", function (req, res) {
  console.say("elycite API - Document GET ALL (summaries)");
  var params = restf.requireParams(req, res, "ontology");
  if(params === null) { return; }
  var store = stores.requireExists(res, params.ontology);
  if(store === null) { return; }
  documents.getDocuments(req, res, store);
});
Example #2
0
               function (req, res) {
  console.say("elycite API - Document <did> GET");
  var params = restf.requireParams(req, res, "ontology", "did");
  if(params === null) { return; }
  var store = stores.requireExists(res, params.ontology);
  if(store === null) { return; }
  var docId = restf.requireInt(res, "did", params.did);
  if(docId === null) { return; }

  documents.getDocument(res, store, params.ontology, docId);
});
Example #3
0
               function (req, res) {
  console.say("elycite API - Concept/Query");
  var params = restf.requireParams(req, res, "ontology", "cid");
  if(params === null) { return; }
  var store = stores.requireExists(res, params.ontology);
  if(store === null) { return; }
  var conceptId = restf.requireInt(res, "conceptId", params.cid);
  if(conceptId === null) { return; }
  var concept = stores.requireRecord(res, store, "concept", conceptId);
  if(concept === null) { return; }
  concept = restf.requireNotDeleted(res, concept, "concept");
  if(concept === null) { return; }
  var args = restf.requireArgs(req, res, "docIds");
  if(args === null) { return; }

  //concepts.getConceptDocsFromSearch(res, concept, store, args.docIds, params); 
  documents.getSpecificDocuments(res, store, params.ontology, args.docIds)
});
Example #4
0
exports.getConceptDocuments = function(req, res, concept, store) {
  // doc ids for concept
  var rSet = concept.docs; // concept documents
  var result;
  var docs;
  var ii = 0;
  var queryStr;

  var args = req.args || {};
  if(args.hasOwnProperty("query")) {
    queryStr = args.query[0];
    result = documents.query(rSet, queryStr, store);
  }
  else {
    // No Query
    result = rSet;
  }

  // Nothing - send empty array
  if(result.length === 0) {
    res.send([]);
    return;
  }

  var fullDocs = false; // reply with the full document object
  if(args.hasOwnProperty("full")) {
    fullDocs = Boolean(args.full[0]);
  }
  if(fullDocs) {
    var pargs = restf.paginationArguments(req);
    docs = restf.paginatedDocuments(result, store.name,
                                    pargs.page, pargs.per_page,
                                    pargs.summarize); 
  }
  else {
    docs = [];
    for(ii = 0; ii < result.length; ii++) {
      docs.push(result[ii].$id);
    }
  }
  res.send(docs); 
};