Skip to main content

Basic library for interacting with the REST interface of XNAT.

Project description

The Boring XNAT Library (BXL)

PyPI version pipeline status coverage report

BXL is a library for interacting with the REST interface of XNAT (Extensible Neuroimaging Archive Toolkit), an open-source imaging informatics software platform.

Usage

Installation

BXL is available at PyPI, the Python Package Index.

With pip package management system:

 pip install bxl

Without pip:

 git clone https://gitlab.com/bbrc/xnat/bxl.git .
 cd ./bxl
 python setup.py install

Credentials handling

The xnat.Connection() class constructor expects a credentials argument to be passed when instantiated,

  • If is a tuple, it will proceed to a basic authentication procedure against the host XNAT instance.
  • If is a basestring, it will reuse it as a cookie for authentication against the host XNAT instance.
  • Otherwise (or if authentication procedure failed in the aforementioned cases), it will remain offline.

Examples

Connect to XNAT instance using an existing JSESSIONID token and get a list of user-visible XNAT projects

 import bxl.xnat as xlib

 c = xlib.Connection(hostname='http://myxnat.org',credentials='1A12346385E876546C99B4179E20986A')
 data = c.get_projects()

 projects = { item['ID'] : item['URI'] for item in data.values() }
 print(projects)

 c.close_jsession()            

Connect via 'with' statement to create a new Female subject 'dummy' in the 'test' project

 from bxl import xnat

 with xnat.Connection(hostname='http://myxnat.org',credentials=(usr,pwd)) as c :
     response = c._put_resource(URI = c.host + '/data/projects/test/subjects/dummy',
                                options = {'gender' : 'female'} )
     subject_uid = response.content
     print 'New subject %s created!' %subject_uid

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Built Distributions

bxl-0.3.4.post1-py3-none-any.whl (17.1 kB view hashes)

Uploaded py3

bxl-0.3.4.post1-py2-none-any.whl (17.1 kB view hashes)

Uploaded py2

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page