XCEDE Web Services 2008 m BIRN AHM San
XCEDE Web Services 2008 m. BIRN AHM San Juan, Puerto Rico
Use Case • Run smoothing filter on all oasis-brains T 1 scans for subjects rated as ‘twisted’ by Wash. U and aged 3070 years old. Reupload the results with a tag of 'smoothed‘.
Pseudocode subjs = FIND_SUBJECTS ( proj=OAS, age=30 -70, washu: twistedness=400 -700 ) foreach subj in subjs do T 1 s = GET_FILE_RECORDS ( subj, tag=T 1, format=NIf. TI ) foreach T 1 in T 1 s do image = GET_FILE( T 1. ID ) filtered. T 1 = filter( image ) UPLOAD ( filtered. T 1, subj, tag = "smoothed" ) done
Variables • where: • subjs : list of subject records (database UID) • subj : subject record • T 1 s : list of data records (includes image ID plus metadata) • image, filtered. T 1 : image data
Services • • Services: • - all services provide success/fail codes based on HTTP conventions • - all output is in XCEDE XML or data files FIND_SUBJECTS • - input: list of subject attributes (from fixed list of agreed basic terms that are guaranteed, plus possible extra namespace qualified terms) • - output: list of subject IDs that match all the attribute criteria • - notes: this is not a generic search service with boolean combinations (client side needs to implement any additional logic)
Services (continued) • GET_FILE_RECORDS • - input: subject ID, list of tags • - output: data records • GET_FILE • - input: Unique ID from image record • - output: image file • UPLOAD • - input: image file, subject ID, list of tags • - output: none
Prototypes • http: //www. xcede. org/web. Services/FIND_SUBJECTS? proj=OAS&age=3070&washu: twistedness=400 -700 • --> returns XCEDE document • http: //www. xcede. org/web. Services/GET_FILE_RECORDS? subject=(subj)&tag=T 1&for mat=NIf. TI • --> returns XCEDE document • http: //www. xcede. org/web. Services/GET_FILE? ID=(id) • --> returns binary file download • http: //www. xcede. org/web. Services/UPLOAD? image=filtered. T 1&subj=(subj)&tag=smoot hed • --> uploads file
Authentication Options • https: //www. xcede. org/web. Services/SERVICE? arg 1=ARG&arg 2=ARG • <-- requires username and password in header • or • https: //www. xcede. org/web. Services/SERVICE? arg 1=ARG&arg 2=ARG&signature=289 xcz 9 B 3 X 21 • <-- signature is created by signing the rest of the URL using • the user's private key (public key is registered when • creating an account on the server or generally available) • Assumptions: the single username and password is for the specified database and not for other servers. • Goal: provide workable authentication for testing, migrate to industry standards
- Slides: 8