Skip to content
cbizon edited this page May 8, 2021 · 54 revisions

Back to Home

ARAGORN Knowledge Provider Wiki Page

Autonomous Relay Agent for Generation Of Ranked Networks (ARAGORN)

A Translator ARA to query Knowledge Providers (KPs) and synthesize highly ranked answers relevant to user-specified questions.

  • Operates in a federated knowledge environment.
  • Bridges the precision mismatch between data specificity in KPs and more abstract levels of user queries.
  • Generalizes answer ranking.
  • Normalizes data to use preferred and equivalent identifiers.

Team Contact:

Patrick Wang ( patrick@covar.com )

TODO: Disclose more team members?

ARAGORN Description

ARAGORN provides unified access to multiple operations (see glossary and the Operations repo) including fill/bind/complete (Strider), Merge Answers (Answer Coalescence), Edge Weighting, and Result Scoring (Aragorn Ranker). Currently, ARAGORN composes these operations into a fixed workflow, but the individual components are available as their own TRAPI endpoints.

The current ARAGORN workflow consists of:

  • Strider takes a TRAPI query graph, and calls distributed KPs to construct a TRAPI KG and results.
  • AnswerCoalescence finds and adds to the TRAPI message new answers by combining similar or related answers from Strider.
  • AragornRanker adds literature co-occurrence edges to the graph, adds a weight to each edge binding, and scores each result based on these weights.

User Guide

ARAGORN is meant to handle arbitrary TRAPI queries, including queries with multiple identified nodes, and arbitrary query topology.

As an example, here is a simple one-hop TRAPI query:

{
    "message": {
        "query_graph": {
            "nodes": {
                "n0": {
                    "id": "NCBIGene:6611",
                    "category": "biolink:Gene"
                },
                "n1": {
                    "category": "biolink:ChemicalSubstance"
                }
            },
            "edges": {
                "e01": {
                    "subject": "n0",
                    "object": "n1"
                }
            }
        }
    }
}

This query looks for chemicals that are directly connected to a single particular gene.

The query can be placed in a text file (query.json) and sent to ARAGORN using e.g. curl:

curl -X POST https://aragorn.renci.org/query -d @query.json

Issue support

To declare an issue with this software:

  • Please browse to: https://github.com/ranking-agent/aragorn/issues.
  • Create a new issue by selecting the "New issue" button.
  • Populate the form displayed. Please enter a concise description of the issue. Include test data if available.

Smart API Registry link

The Smart-API open API specification and registration can be found here

How to build a ARAGORN instance for a NCATS Deployment pipeline

TODO: Include preface here.

TODO: How is it installed? Provide a link to the ARAGORN code readme? if so, it needs updating to include the actual installation procedures.

TODO: Use cases

TODO: Include preface here.

  • TODO: How is this different from the "Steps to create your own query" above? Is it just more examples of interesting things?
  • TODO: Is this to showcase different approaches for discovering interesting things?
  • TODO: Is this to showcase a jupiter notebook or two?

Supporting APIs

Below you will find the external web services that are used within the ARAGORN tool.

Knowledge Providers Accessed

Below is a list of knowledge providers accessed by ARAGORN and supporting web services.

TODO: Is this is a comprehensive list? is more needed?

  • Genetic Knowledge Provider
  • Molecular Data Provider
  • Service Provider
  • Exposure Provider
  • Automat
  • Data normalization services

Source Code

Below you will find references that detail the standards, web services and supporting tools that are part of ARAGORN.

External Documentation

TODO: Need more links here? Should the other wiki pages be referenced here?

Clone this wiki locally