i2b2 Web Client
Space shortcuts
Space Tools

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Create an instance of the generic communicator object using a call to i2b2.hive.communicatorFactory() function and save it to the ajax namespace of your cell or plug-in. You will also need to define a namespace to hold the XML message templates used to send requests to the i2b2 Hive.

You may optionally define a namespace to hold any functions you plan on using to process the returned XML document into a more easily worked with native-JavaScript format. Best practice is to call these namespaces msgs and parsers respectively and to add them to your cell / plug-in's cfg namespace.

...

i2b2.ONT.cfg.msgs.GetSchemes = '<?xml version="1.0" encouding="UTF-8"
standalone                                                                 standalone="yes"?>\n'
'<ns3:request xmlns:ns3="http://www.i2b2.org/xsd/hive/mghs/1.1."
xmlns         xmlns:ns4="http://www.i2b2.org/xsd/cell/ont/1.1/"
xmlns         xmlns:ns2="http://www.i2b2.org/xsd/hive/plugin/">\n'
' <message       <message_header>\n'
'            

Wiki Markup
{*}{_}{{{proxy_info}}}{_}{*}
\n'
' <i2b2_version_compatible>1.1</i2b2_version_compatible>\n'
' <hl7_version_compatible>2.4</hl7_version_compatible>\n'
' <receiving_facility>\n' ' <facility_name>i2b2 Hive</facility_name>\n'
' </receiving_facility>\n'
'
<datetime_of_message>{header_msg_datetime}</datetime_of_message>\n'
'<security>\n'
' <domain>{sec_domain}</domain>\n'
' <username>{sec_user}</username>\n'
' {sec_pass_node}\n' '</security>\n' ' <message_control_id>\n'
' <message_num>{header_msg_id}</message_num>\n'
' <instance_num>0</instance_num>\n' ' </message_control_id>\n' ' <processing_id>\n' ' <processing_id>P</processing_id>\n' ' <processing_mode>I</processing_mode>\n' ' </processing_id>\n' ' <accept_acknowledgement_type>AL</accept_acknowledgement_type>\n'
' <application_acknowledgement_type>AL</application_acknowledgement_type>\n' ' <country_code>US</country_code>\n' ' <project_id>{sec_project}</project_id>\n' ' </message_header>\n' ' <request_header>\n' ' <result_waittime_ms>{result_wait_time}000</result_waittime_ms>\n' ' </request_header>\n' ' <message_body>\n' ' <ns4:get_schemes type="default"/>\n' ' </message_body>\n' '</ns3:request>';

 

...

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="c17292f6bd6d48d1-89828d97-48d74a11-bc2eaf4d-201239910a18b354c335aad3"><ac:plain-text-body><![CDATA[

i2b2.ONT.cfg.parsers.GetSchemes = function(){ if (!this.error) { this.model = []; // extract records from XML msg var c = this.refXML.getElementsByTagName('concept'); for (var i=0; i < 1 * c.length; i++) { var o = new Object; o.xmlOrig = c[i]; o.level = i2b2.h.getXNodeVal(c[i],'level'); o.key = i2b2.h.getXNodeVal(c[i],'key'); o.name = i2b2.h.getXNodeVal(c[i],'name'); o.total_num = i2b2.h.getXNodeVal(c[i],'totalnum'); // save extracted info this.model.push(o); } } else { this.model = false; console.error(

Wiki Markup
"\[GetSchemes\] Could not parse() data\!"
); } return this; };

]]></ac:plain-text-body></ac:structured-macro>

...