function get_lims_tests4pathogens_by_id
Retrieves a single LIMS_Tests4Pathogens node from a Neo4j graph database by its unique identifier.
/tf/active/vicechatdev/neo4j_schema/neo4j_python_snippets.py
499 - 506
simple
Purpose
This function queries a Neo4j database to fetch a specific LIMS_Tests4Pathogens node using its ID. It's designed for laboratory information management systems (LIMS) to retrieve test-pathogen relationship data. The function returns the first matching node or None if no match is found, making it useful for data retrieval operations in pathogen testing workflows.
Source Code
def get_lims_tests4pathogens_by_id(id):
"""Get a LIMS_Tests4Pathogens node by its ID"""
query = """
MATCH (n:LIMS_Tests4Pathogens {id: $id})
RETURN n
"""
result = run_query(query, {"id": id})
return result[0] if result else None
Parameters
| Name | Type | Default | Kind |
|---|---|---|---|
id |
- | - | positional_or_keyword |
Parameter Details
id: The unique identifier of the LIMS_Tests4Pathogens node to retrieve. Expected to be a string or integer that matches the 'id' property of nodes in the Neo4j database. This should correspond to a valid node identifier in the LIMS_Tests4Pathogens label.
Return Value
Returns the first LIMS_Tests4Pathogens node that matches the provided ID, or None if no matching node is found. The return type is typically a dictionary-like object representing the Neo4j node with all its properties, or None. The result comes from the run_query function which is expected to return a list of results.
Dependencies
neo4j
Required Imports
from neo4j import GraphDatabase
Usage Example
from neo4j import GraphDatabase
# Assuming run_query is defined elsewhere in your codebase
# def run_query(query, params):
# driver = GraphDatabase.driver('bolt://localhost:7687', auth=('neo4j', 'password'))
# with driver.session() as session:
# result = session.run(query, params)
# return [record['n'] for record in result]
# Retrieve a specific LIMS_Tests4Pathogens node
test_id = 'TEST123'
node = get_lims_tests4pathogens_by_id(test_id)
if node:
print(f'Found node: {node}')
else:
print('No node found with that ID')
Best Practices
- Ensure the run_query function is properly defined and handles database connections securely
- Validate the 'id' parameter before passing it to prevent injection attacks or invalid queries
- Handle the None return value appropriately in calling code to avoid NoneType errors
- Consider adding error handling for database connection failures
- The function assumes run_query returns a list; ensure this contract is maintained
- Consider adding type hints for better code documentation (e.g., def get_lims_tests4pathogens_by_id(id: str) -> Optional[Dict])
- Ensure proper database connection pooling and cleanup in the run_query implementation
Similar Components
AI-powered semantic similarity - components with related functionality:
-
function get_lims_pathogens_by_id 93.3% similar
-
function get_lims_tests4pathogens_by_uid 91.1% similar
-
function get_all_lims_tests4pathogens 89.3% similar
-
function get_lims_tests_by_id 89.2% similar
-
function get_lims_pathogens_by_uid 84.7% similar