RadReports plugin

105 views
Skip to first unread message

KK Mehta

unread,
Feb 25, 2021, 1:00:29 PM2/25/21
to xnat_discussion
Hello! 

I want to have reports generation in xnat. 
I've been following this repository to add the plugin, but it only contains one RadReport format which is regarding bone-age assessment. 
What if I want another report format like CT-Chest? 
Is there any plugin that helps generate a report using Radreport formats?

Thank you!

KK Mehta

unread,
Mar 9, 2021, 6:36:19 AM3/9/21
to xnat_discussion
Hi! 

Is there anyone who's tried this? would really appreciate some help, thanks!

KK Mehta

unread,
Mar 9, 2021, 6:36:28 AM3/9/21
to xnat_discussion
Hi! 

Is there anyone who's tried this? would really appreciate some help, thanks!

On Thursday, 25 February 2021 at 23:30:29 UTC+5:30 KK Mehta wrote:

600s...@gmail.com

unread,
Mar 10, 2021, 9:55:45 AM3/10/21
to xnat_discussion
Hello Mehta,
This plugin is part of an internal experiment attempting to solve this exact problem. Ideally, we would be able to have a script or a service that could parse the RadReports XML/HTML format and automatically generate an XNAT datatype schema from it. However, at this point the XSDs are being defined manually.

And compare that to the Bone Age report format here: https://radreport.org/home/RPT101

This might give you a starting direction if you felt comfortable adding a schema definition to support your desired CT-Chest assessment. We are actively working on our developer documentation at the moment, and this is an area that needs attention.

Regards,
Will

KK Mehta

unread,
Mar 10, 2021, 11:39:22 AM3/10/21
to xnat_discussion
Hi Will,

Thank you very much for your response!

This might be a noob question, but could you guide me on how to go about once I define an XSD for my desired CT-Assessment report template? 
I mean should I just build the plugin jar after adding the XSD definition? 
I'll be happy to contribute if need be, on the documentation after I'm able to implement this.

Thanks!

600s...@gmail.com

unread,
Mar 10, 2021, 7:40:35 PM3/10/21
to xnat_discussion
Yes, that's essentially correct. I would recommend forking the existing repo, then adding your schema definition to the XSD file in your forked plugin repo, in which case both Bone Age and your CT-Chest (or whichever) radreport datatypes would be defined in the same plugin.

Note that on these lines here, I've defined the Bone Age assessor xsiType as "rad:radReportRPT101".

radreport-xsd-1.png

The "RPT101" portion of that name comes from the "RPT101" ID given to the Bone Age assessment on the RadReports website. (This is also visible in the URL to the report itself: https://radreport.org/home/RPT101). So if you were choosing to model the CT Chest-COVID-19 report for example (https://radreport.org/home/RPT50820), I think it would be cool to follow this naming convention and call your xsiType "rad:radReportRPT50820".

Also, note in the plugin initialization file (RadReportDatatypePlugin.java) that we've called out the datatype that we built in the XSD. You'll want to add your new one to the list, following the same syntax. This will auto-initialize the datatype once the plugin is loaded, so you won't have to go to Administer > Data Types to do it manually.

Once your plugin modifications are complete, use the gradle builder to build the plugin jar, load it into your XNAT, restart tomcat, and go from there.

Incidentally, we have XNAT plugin development documentation, but we are working to overhaul these pages and provide concrete examples of exactly this kind of task. So I apologize in advance for the patchwork of guidance that you'll find there. I also consider myself fairly noob-ish at datatype development as well, but there are plenty of others in this group that have done their fair share of this work.

Regards,
Will

KK Mehta

unread,
Mar 11, 2021, 1:07:49 AM3/11/21
to xnat_di...@googlegroups.com
Hi Will, 

Thanks a lot for this elaborate explanation!
I'll try it out and keep this thread updated.

Thanks!

--
You received this message because you are subscribed to a topic in the Google Groups "xnat_discussion" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/xnat_discussion/j_XCyXsnevM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to xnat_discussi...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/xnat_discussion/db21eda5-7a02-4f23-ac30-ba0c714cf165n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages