-
Notifications
You must be signed in to change notification settings - Fork 2
04 Roadmap
Brenna Kizer edited this page Mar 13, 2020
·
5 revisions
- Create Swagger/OpenAPI .yaml file, update as API progresses to meet the Reasoner Standard.
- Prepare technology stack for production deployment.
- Reformat data into normalized graph or relational database, create nodes for diseases, drugs etc.
- ReasonerStandardAPI specifies that neo4j is the current default
- Verify that nodes and edges are labeled according to biolink specifications
- Define general (type) and specific (relation) edge types for use in query and return graph node bindings and edge bindings
- Format to return the exact data needed for the KnowledgeGraph
- Node: id, uri, name, type, description, symbol, node attributes, etc.
- Edge: id, type, relation, source id, target id, defined date/time, source, confidence, weight, publications, evidence type, qualifiers, negated, edge attributes, etc.
- Relational model would include tables containing nodes (information about the specific biomarker, disease, etc., and edge tables containing information about relationships/publications identifying relationships
- Refactor to accept queries in the form of QueryGraph objects
- Error handling to verify valid input
- Parser for the QueryGraph to "restate the question" into something our querying function can consume
- Handle query options
- Internal node and edge ids will be retrieved from the QueryGraph for use in return graph's node and edge bindings
- QueryGraph will specify the type of relationship to search for - need to be able to search by specific relationship type
- Refactor to output results according to output specifications
- Associate internal ids with nodes and edges for lookup dictionary (bindings)
- Adapt database queries to capture all response information
- Return top-level metadata such as datetime response was generated, number of results, etc.
- Develop and return quality and validity measures (aided by the curation team)
- Return QueryGraph
- Return result object data such as message id, EdgeBindings, NodeBindings, etc.
- Return KnowledgeGraph
- Node list
- Edge list
- May create a "/predicates" endpoint to return supported relationship types between two node types as specified by a GET request query.