init
This commit is contained in:
225
dcm4chee/default/conf/dcm4chee-ae/CT_AET/upgrade-ct.xml
Normal file
225
dcm4chee/default/conf/dcm4chee-ae/CT_AET/upgrade-ct.xml
Normal file
@@ -0,0 +1,225 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<dataset>
|
||||
<!-- Specific Character Set -->
|
||||
<attr tag="00080005" vr="CS" />
|
||||
<!-- SOP Class UID -->
|
||||
<attr tag="00080016" vr="UI">1.2.40.0.13.1.5.1.4.1.1.2.1</attr>
|
||||
<!-- Contrast/Bolus Agent -->
|
||||
<attr tag="00180010" vr="LO" />
|
||||
<!-- Contrast/Bolus Agent Sequence -->
|
||||
<attr tag="00180012" vr="SQ" />
|
||||
<!-- Contrast/Bolus Administration Route Sequence -->
|
||||
<attr tag="00180014" vr="SQ" />
|
||||
<!-- Contrast/Bolus Route -->
|
||||
<attr tag="00181040" vr="LO" />
|
||||
<!-- Contrast/Bolus Volume -->
|
||||
<attr tag="00181041" vr="DS" />
|
||||
<!-- Contrast/Bolus Start Time -->
|
||||
<attr tag="00181042" vr="TM" />
|
||||
<!-- Contrast/Bolus Stop Time -->
|
||||
<attr tag="00181043" vr="TM" />
|
||||
<!-- Contrast/Bolus Total Dose -->
|
||||
<attr tag="00181044" vr="DS" />
|
||||
<!-- Contrast Flow Rate -->
|
||||
<attr tag="00181046" vr="DS" />
|
||||
<!-- Contrast Flow Duration -->
|
||||
<attr tag="00181047" vr="DS" />
|
||||
<!-- Contrast/Bolus Ingredient -->
|
||||
<attr tag="00181048" vr="CS" />
|
||||
<!-- Contrast/Bolus Ingredient Concentration -->
|
||||
<attr tag="00181049" vr="DS" />
|
||||
<!-- Series Instance UID -->
|
||||
<attr tag="0020000E" vr="UI" />
|
||||
<!-- Samples per Pixel -->
|
||||
<attr tag="00280002" vr="US" />
|
||||
<!-- Photometric Interpretation -->
|
||||
<attr tag="00280004" vr="CS" />
|
||||
<!-- Planar Configuration -->
|
||||
<attr tag="00280006" vr="US" />
|
||||
<!-- Rows -->
|
||||
<attr tag="00280010" vr="US" />
|
||||
<!-- Columns -->
|
||||
<attr tag="00280011" vr="US" />
|
||||
<!-- Pixel Aspect Ratio -->
|
||||
<attr tag="00280034" vr="IS" />
|
||||
<!-- Bits Allocated -->
|
||||
<attr tag="00280100" vr="US" />
|
||||
<!-- Bits Stored -->
|
||||
<attr tag="00280101" vr="US" />
|
||||
<!-- High Bit -->
|
||||
<attr tag="00280102" vr="US" />
|
||||
<!-- Pixel Representation -->
|
||||
<attr tag="00280103" vr="US" />
|
||||
<!-- Shared Functional Groups Sequence -->
|
||||
<!-- Elements marked by (+) are not part of DICOM Enhanced CT IOD -->
|
||||
<attr tag="52009229" vr="SQ">
|
||||
<item>
|
||||
<!-- Derivation Image Sequence -->
|
||||
<attr tag="00089124" vr="SQ">
|
||||
<item>
|
||||
<!-- Derivation Description -->
|
||||
<attr tag="00082111" vr="LO" />
|
||||
<!-- Source Image Sequence -->
|
||||
<attr tag="00082112" vr="SQ" />
|
||||
<!-- Derivation Code Sequence -->
|
||||
<attr tag="00089215" vr="SQ" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- CT Acquisition Type Sequence -->
|
||||
<attr tag="00189301" vr="SQ">
|
||||
<item>
|
||||
<!-- Scan Options(+) -->
|
||||
<attr tag="00180022" vr="CS" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- CT Acquisition Details Sequence -->
|
||||
<attr tag="00189304" vr="SQ">
|
||||
<item>
|
||||
<!-- Data Collection Diameter -->
|
||||
<attr tag="00180090" vr="DS" />
|
||||
<!-- Gantry/Detector Tilt -->
|
||||
<attr tag="00181120" vr="DS" />
|
||||
<!-- Table Height -->
|
||||
<attr tag="00181130" vr="DS" />
|
||||
<!-- Rotation Direction -->
|
||||
<attr tag="00181140" vr="CS" />
|
||||
<!-- Revolution Time -->
|
||||
<attr tag="00189305" vr="FD" />
|
||||
<!-- Single Collimation Width -->
|
||||
<attr tag="00189306" vr="FD" />
|
||||
<!-- Total Collimation Width -->
|
||||
<attr tag="00189307" vr="FD" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- CT Table Dynamics Sequence -->
|
||||
<attr tag="00189308" vr="SQ">
|
||||
<item>
|
||||
<!-- Table Speed -->
|
||||
<attr tag="00189309" vr="FD" />
|
||||
<!-- Table Feed per Rotation -->
|
||||
<attr tag="00189310" vr="FD" />
|
||||
<!-- Spiral Pitch Factor -->
|
||||
<attr tag="00189311" vr="FD" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- CT Geometry Sequence -->
|
||||
<attr tag="00189312" vr="SQ">
|
||||
<item>
|
||||
<!-- Distance Source to Detector -->
|
||||
<attr tag="00181110" vr="FD" />
|
||||
<!-- Distance Source to Patient(+) -->
|
||||
<attr tag="00181111" vr="FD" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- CT Reconstruction Sequence -->
|
||||
<attr tag="00189314" vr="SQ">
|
||||
<item>
|
||||
<!-- Reconstruction Diameter -->
|
||||
<attr tag="00181100" vr="DS" />
|
||||
<!-- Convolution Kernel -->
|
||||
<attr tag="00181210" vr="SH" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- CT Exposure Sequence -->
|
||||
<attr tag="00189321" vr="SQ">
|
||||
<item>
|
||||
<!-- Exposure Time -->
|
||||
<attr tag="00181150" vr="IS" />
|
||||
<!-- X-ray Tube Current -->
|
||||
<attr tag="00181151" vr="IS" />
|
||||
<!-- Exposure -->
|
||||
<attr tag="00181152" vr="IS" />
|
||||
<!-- Exposure in μAs -->
|
||||
<attr tag="00181153" vr="IS" />
|
||||
<!-- Exposure Modulation Type -->
|
||||
<attr tag="00189323" vr="CS" />
|
||||
<!-- Estimated Dose Saving -->
|
||||
<attr tag="00189324" vr="FD" />
|
||||
<!-- CTDIvol -->
|
||||
<attr tag="00189345" vr="FD" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- CT X-ray Details Sequence -->
|
||||
<attr tag="00189325" vr="SQ">
|
||||
<item>
|
||||
<!-- KVP -->
|
||||
<attr tag="00180060" vr="DS" />
|
||||
<!-- Filter Type -->
|
||||
<attr tag="00181160" vr="SH" />
|
||||
<!-- Generator Power(+) -->
|
||||
<attr tag="00181170" vr="IS" />
|
||||
<!-- Focal Spot -->
|
||||
<attr tag="00181190" vr="DS" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Irradiation Event Identification Sequence -->
|
||||
<attr tag="00189477" vr="SQ">
|
||||
<item>
|
||||
<!-- Irradiation Event UID -->
|
||||
<attr tag="00083010" vr="UI" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Frame Anatomy Sequence -->
|
||||
<attr tag="00209071" vr="SQ">
|
||||
<item>
|
||||
<!-- Anatomic Region Sequence -->
|
||||
<attr tag="00082218" vr="SQ" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Plane Position Sequence -->
|
||||
<attr tag="00209113" vr="SQ">
|
||||
<item>
|
||||
<!-- Image Position (Retired)(+) -->
|
||||
<attr tag="00200030" vr="DS" />
|
||||
<!-- Image Position (Patient) -->
|
||||
<attr tag="00200032" vr="DS" />
|
||||
<!-- Slice Location(+) -->
|
||||
<attr tag="00201041" vr="DS" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Plane Orientation Sequence -->
|
||||
<attr tag="00209116" vr="SQ">
|
||||
<item>
|
||||
<!-- Image Orientation (Retired)(+) -->
|
||||
<attr tag="00200035" vr="DS" />
|
||||
<!-- Image Orientation (Patient) -->
|
||||
<attr tag="00200037" vr="DS" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Patient Orientation in Frame Sequence -->
|
||||
<attr tag="00209450" vr="SQ">
|
||||
<item>
|
||||
<!-- Patient Orientation -->
|
||||
<attr tag="00200020" vr="CS" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Pixel Measures Sequence -->
|
||||
<attr tag="00289110" vr="SQ">
|
||||
<item>
|
||||
<!-- Slice Thickness -->
|
||||
<attr tag="00180050" vr="DS" />
|
||||
<!-- Pixel Spacing -->
|
||||
<attr tag="00280030" vr="DS" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Frame VOI LUT Sequence -->
|
||||
<attr tag="00289132" vr="SQ">
|
||||
<item>
|
||||
<!-- Window Center -->
|
||||
<attr tag="00281050" vr="DS" />
|
||||
<!-- Window Width -->
|
||||
<attr tag="00281051" vr="DS" />
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Pixel Value Transformation Sequence -->
|
||||
<attr tag="00289145" vr="SQ">
|
||||
<item>
|
||||
<!-- Rescale Intercept -->
|
||||
<attr tag="00281052" vr="DS" />
|
||||
<!-- Rescale Slope -->
|
||||
<attr tag="00281053" vr="DS" />
|
||||
</item>
|
||||
</attr>
|
||||
</item>
|
||||
</attr>
|
||||
</dataset>
|
||||
187
dcm4chee/default/conf/dcm4chee-ae/DRPT_AET/cstorerq.xsl
Normal file
187
dcm4chee/default/conf/dcm4chee-ae/DRPT_AET/cstorerq.xsl
Normal file
@@ -0,0 +1,187 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Sample C-STORE-RQ attribute coercion for encoding of document titles of
|
||||
received Encapsulated PDF Documents.
|
||||
-->
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
version="1.0">
|
||||
<xsl:output method="xml" indent="no" />
|
||||
<!-- overwritten by application with actual values -->
|
||||
<xsl:param name="calling" select="'SAMPLE_MOD'" />
|
||||
<xsl:param name="called" select="'DCM4CHEE'" />
|
||||
<xsl:param name="date" select="'20051206'" />
|
||||
<xsl:param name="time" select="'115600.000'" />
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<!-- if Encapsulated PDF without or empty Concept Name Code Sequence -->
|
||||
<xsl:if test="normalize-space(attr[@tag='00080016'])='1.2.840.10008.5.1.4.1.1.104.1' and not(attr[@tag='0040A043']/item)">
|
||||
<xsl:variable name="title" select="normalize-space(attr[@tag='00420010'])" />
|
||||
<xsl:choose>
|
||||
<xsl:when test="$title='Cardiac Catheterization Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18745-0</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Cardiac Catheterization Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Cardiac Electrophysiology Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18750-0</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Cardiac Electrophysiology Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='CT Abdomen Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11540-2</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">CT Abdomen Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='CT Chest Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11538-6</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">CT Chest Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='CT Head Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11539-4</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">CT Head Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='CT Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18747-6</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">CT Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Diagnostic Imaging Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18748-4</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Diagnostic Imaging Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Echocardiography Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11522-0</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Echocardiography Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='ECG Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11524-0</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">ECG Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Exercise Stress Test Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18752-6</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Exercise Stress Test Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Holter Study Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18754-2</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Holter Study Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Ultrasound Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18760-9</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Ultrasound Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='MRI Head Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11541-0</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">MRI Head Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='MRI Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18755-9</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">MRI Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='MRI Spine Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18756-7</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">MRI Spine Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Nuclear Medicine Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18757-5</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Nuclear Medicine Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Ultrasound Obstetric and Gyn Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11525-3</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning"> Ultrasound Obstetric and Gyn Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='PET Scan Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18758-3</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">PET Scan Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="$title='Radiology Report'">
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">11528-7</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Radiology Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<!-- fallback to general Diagnostic Imaging Report -->
|
||||
<xsl:otherwise>
|
||||
<xsl:call-template name="conceptName">
|
||||
<xsl:with-param name="code">18748-4</xsl:with-param>
|
||||
<xsl:with-param name="scheme">LN</xsl:with-param>
|
||||
<xsl:with-param name="meaning">Diagnostic Imaging Report</xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
<xsl:template name="conceptName">
|
||||
<xsl:param name="code" />
|
||||
<xsl:param name="scheme" />
|
||||
<xsl:param name="meaning" />
|
||||
<!--Concept Name Code Sequence-->
|
||||
<attr tag="0040A043" vr="SQ">
|
||||
<item>
|
||||
<!--Code Value-->
|
||||
<attr tag="00080100" vr="SH">
|
||||
<xsl:value-of select="$code" />
|
||||
</attr>
|
||||
<!--Coding Scheme Designator-->
|
||||
<attr tag="00080102" vr="SH">
|
||||
<xsl:value-of select="$scheme" />
|
||||
</attr>
|
||||
<!--Code Meaning-->
|
||||
<attr tag="00080104" vr="LO">
|
||||
<xsl:value-of select="$meaning" />
|
||||
</attr>
|
||||
</item>
|
||||
</attr>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Sample N-EVENT-REPORT-RQ attribute coercion for insert/overwrite of Retrieve AET.
|
||||
-->
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="no" />
|
||||
<!-- overwritten by application with actual values -->
|
||||
<xsl:param name="calling" select="'STGCMT_SCP'" />
|
||||
<xsl:param name="called" select="'DCM4CHEE'" />
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<!-- (00008,0054) AE Retrieve AET -->
|
||||
<attr tag="00080054" vr="AE">RETRIEVE_AET</attr>
|
||||
<!-- (00008,1199) SQ Referenced SOP Sequence -->
|
||||
<attr tag="00081199" vr="SQ">
|
||||
<xsl:apply-templates select="attr[@tag='00081199']/item" />
|
||||
</attr>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
<xsl:template match="item">
|
||||
<item>
|
||||
<!-- (00008,0054) AE Retrieve AET -->
|
||||
<attr tag="00080054" vr="AE"/>
|
||||
<!-- (00008,1150) UI Referenced SOP Class UID -->
|
||||
<xsl:copy-of select="attr[@tag='00081150']" />
|
||||
<!-- (00008,1155) UI Referenced SOP Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='00081155']" />
|
||||
</item>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,40 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="no"/>
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<!-- (0040,0270) SQ #-1 Scheduled Step Attribute Sequence -->
|
||||
<attr tag="00400270" vr="SQ">
|
||||
<item>
|
||||
<!-- NEVER overwrite Study Instance UID! (see issue WEB-958) -->
|
||||
<!-- <xsl:copy-of select="attr[@tag='0020000D']"/> -->
|
||||
|
||||
<!-- Patient Height -->
|
||||
<xsl:copy-of select="attr[@tag='00101020']"/>
|
||||
<!-- Patient Weight -->
|
||||
<xsl:copy-of select="attr[@tag='00101030']"/>
|
||||
<!-- Referring Physican -->
|
||||
<xsl:copy-of select="attr[@tag='00080090']"/>
|
||||
<!-- Requesting Physican -->
|
||||
<xsl:copy-of select="attr[@tag='00321032']"/>
|
||||
<!-- Requesting Service -->
|
||||
<xsl:copy-of select="attr[@tag='00321033']"/>
|
||||
<!-- Requested Procedure Description -->
|
||||
<xsl:copy-of select="attr[@tag='00321060']"/>
|
||||
<!-- Requested Procedure Code Sequence -->
|
||||
<xsl:copy-of select="attr[@tag='00321064']"/>
|
||||
<!-- Requested Procedure ID -->
|
||||
<xsl:copy-of select="attr[@tag='00401001']"/>
|
||||
<!-- Reason for the Requested Procedure -->
|
||||
<xsl:copy-of select="attr[@tag='00401002']"/>
|
||||
<!-- Scheduled Modality Type -->
|
||||
<xsl:copy-of select="attr[@tag='00400100']/item/attr[@tag='00080060']"/>
|
||||
<!-- Scheduled Station Name -->
|
||||
<xsl:copy-of select="attr[@tag='00400100']/item/attr[@tag='00400010']"/>
|
||||
<!-- Requested Procedure Comment -->
|
||||
<xsl:copy-of select="attr[@tag='00400100']/item/attr[@tag='00401400']"/>
|
||||
</item>
|
||||
</attr>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
35
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/cstorerq.xsl
Normal file
35
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/cstorerq.xsl
Normal file
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Sample C-STORE-RQ attribute coercion for copying request attributes exported
|
||||
on root level to item of Request Attributes Sequence (0040,0275), which is
|
||||
extracted into DB series record by default attribute filter configuration.
|
||||
Therefore request attributes becomes available by DICOM Query C-FIND on
|
||||
SERIES level.
|
||||
-->
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="no"/>
|
||||
<!-- overwritten by application with actual values -->
|
||||
<xsl:param name="calling" select="'SAMPLE_MOD'"/>
|
||||
<xsl:param name="called" select="'ABPACS'"/>
|
||||
<xsl:param name="date" select="'20051206'"/>
|
||||
<xsl:param name="time" select="'115600.000'"/>
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<xsl:variable name="reqPhysician" select="attr[@tag='00321032']"/>
|
||||
<xsl:variable name="reqService" select="attr[@tag='00321033']"/>
|
||||
<xsl:variable name="reqProcDesc" select="attr[@tag='00321060']"/>
|
||||
<xsl:variable name="reqProcCodeSeq" select="attr[@tag='00321064']"/>
|
||||
<xsl:if test="$reqPhysician or $reqService or $reqProcDesc or $reqProcCodeSeq">
|
||||
<!-- (0040,0275) SQ #-1 Request Attributes Sequence -->
|
||||
<attr tag="00400275" vr="SQ">
|
||||
<item>
|
||||
<xsl:copy-of select="$reqPhysician"/>
|
||||
<xsl:copy-of select="$reqService"/>
|
||||
<xsl:copy-of select="$reqProcDesc"/>
|
||||
<xsl:copy-of select="$reqProcCodeSeq"/>
|
||||
</item>
|
||||
</attr>
|
||||
</xsl:if>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Sample cstorerq2mwl-cfindrq.xsl, using Study Instance UID (0020,000D) and
|
||||
Scheduled Procedure Step ID (0040,0009) in Request Attributes Sequence
|
||||
(0040,0275) as matching key and dcm4chee proprietary value 'ANY' for
|
||||
Scheduled Procedure Step Status (0040,0020) to match also worklist entries,
|
||||
for which MPPS N-CREATE was already received.
|
||||
-->
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="no"/>
|
||||
<!-- overwritten by application with actual values -->
|
||||
<xsl:param name="calling" select="'SAMPLE_MOD'"/>
|
||||
<xsl:param name="called" select="'DCM4CHEE'"/>
|
||||
<xsl:param name="date" select="'20051206'"/>
|
||||
<xsl:param name="time" select="'115600.000'"/>
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<!-- Specific Character Set -->
|
||||
<xsl:copy-of select="attr[@tag='00080005']"/>
|
||||
<!-- Accession Number -->
|
||||
<attr tag="00080050" vr="SH"/>
|
||||
<!-- Admitting Diagnoses Description -->
|
||||
<attr tag="00081080" vr="LO"/>
|
||||
<!-- Referring Physican Name -->
|
||||
<attr tag="00080090" vr="PN"/>
|
||||
<!-- Patient Name -->
|
||||
<attr tag="00100010" vr="PN"/>
|
||||
<!-- Patient ID -->
|
||||
<attr tag="00100020" vr="LO"/>
|
||||
<!-- Issuer Of Patient ID -->
|
||||
<attr tag="00100021" vr="LO"/>
|
||||
<!-- Patient Birthdate -->
|
||||
<attr tag="00100030" vr="DA"/>
|
||||
<!-- Patient Sex -->
|
||||
<attr tag="00100040" vr="CS"/>
|
||||
<!-- Study Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='0020000D']"/>
|
||||
<!-- Requesting Physican -->
|
||||
<attr tag="00321032" vr="PN"/>
|
||||
<!-- Requesting Service -->
|
||||
<attr tag="00321033" vr="LO"/>
|
||||
<!-- Requested Procedure Description -->
|
||||
<attr tag="00321060" vr="LO"/>
|
||||
<!-- Requested Procedure Code Sequence -->
|
||||
<attr tag="00321064" vr="SQ"/>
|
||||
<!-- Scheduled Procedure Step Sequence -->
|
||||
<attr tag="00400100" vr="SQ">
|
||||
<item>
|
||||
<!-- Scheduled Procedure Step Description -->
|
||||
<attr tag="00400007" vr="LO"/>
|
||||
<!-- Scheduled Protocol Code Sequence -->
|
||||
<attr tag="00400008" vr="SQ"/>
|
||||
<!-- Scheduled Procedure Step ID -->
|
||||
<xsl:copy-of select="attr[@tag='00400275']/item/attr[@tag='00400009']"/>
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Requested Procedure ID -->
|
||||
<attr tag="00401001" vr="SH"/>
|
||||
<!-- Reason for the Requested Procedure -->
|
||||
<attr tag="00401002" vr="LO"/>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
41
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/export.xsl
Normal file
41
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/export.xsl
Normal file
@@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
The following parameters are made available by the application:
|
||||
today - The current day in format yyyyMMdd
|
||||
year - The current year
|
||||
month - The current month (1=Jan, 2=Feb ..)
|
||||
date - The current day of the month
|
||||
day - The current day of the week (0=Sun, 1=Mon ..)
|
||||
hour - The current hour of the day
|
||||
-->
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml"/>
|
||||
<xsl:param name="today"/>
|
||||
<xsl:param name="year"/>
|
||||
<xsl:param name="month"/>
|
||||
<xsl:param name="date"/>
|
||||
<xsl:param name="day"/>
|
||||
<xsl:param name="hour"/>
|
||||
<xsl:template match="/dataset">
|
||||
<exports>
|
||||
|
||||
<!-- Export objects of all performed procedure steps with Performed Procedure Step Start Date is current date to media -->
|
||||
<xsl:if test="attr[@tag='00400244']=$today">
|
||||
<export code="113019" designator="99DCM4CHE" meaning="For Media Export"/>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Export objects of procedure steps with given LOINC code to
|
||||
Research Collection -->
|
||||
<xsl:variable name="item" select="attr[@tag='00081032']/item"/>
|
||||
<xsl:variable name="code" select="$item/attr[@tag='00080100']"/>
|
||||
<xsl:variable name="designator" select="$item/attr[@tag='00080102']"/>
|
||||
<xsl:if test="$code='37441-3' and $designator='LN'">
|
||||
<export code="TCE007" designator="IHERADTF"
|
||||
meaning="For Research Collection Export"
|
||||
disposition="Chest High Resolution CT w/o Contrast"/>
|
||||
</xsl:if>
|
||||
|
||||
</exports>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
87
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/forward.xsl
Normal file
87
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/forward.xsl
Normal file
@@ -0,0 +1,87 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml"/>
|
||||
|
||||
<!--
|
||||
The following parameters are made available by the application:
|
||||
source-aet - AET of the Storage SCU from which the series was received
|
||||
retrieve-aet - AET of the Query Retrieve SCP from which the series can be retrieved
|
||||
ext-retrieve-aet - external AET (e.g. central archive) of the Query Retrieve SCP from which the series can be retrieved
|
||||
archived - All referenced instances are archived (e.g. HSM)
|
||||
year - The current year
|
||||
month - The current month (1=Jan, 2=Feb ..)
|
||||
date - The current day of the month
|
||||
day - The current day of the week (0=Sun, 1=Mon ..)
|
||||
hour - The current hour of the day
|
||||
|
||||
These parameters may be to define rules that depend on the source or retrieve AET
|
||||
or on the current date or time.
|
||||
|
||||
An example of the parameters that are made available to this stylesheet is as follows:
|
||||
<xsl:param name="source-aet">DCMSND</xsl:param>
|
||||
<xsl:param name="retrieve-aet">DCM4CHEE</xsl:param>
|
||||
<xsl:param name="ext-retrieve-aet">CENTRAL</xsl:param>
|
||||
<xsl:param name="archived">true</xsl:param>
|
||||
<xsl:param name="month">4</xsl:param>
|
||||
<xsl:param name="date">30</xsl:param>
|
||||
<xsl:param name="day">1</xsl:param>
|
||||
<xsl:param name="hour">15</xsl:param>
|
||||
-->
|
||||
<xsl:param name="source-aet"/>
|
||||
<xsl:param name="retrieve-aet"/>
|
||||
<xsl:param name="ext-retrieve-aet"/>
|
||||
<xsl:param name="archived"/>
|
||||
<xsl:param name="year"/>
|
||||
<xsl:param name="month"/>
|
||||
<xsl:param name="date"/>
|
||||
<xsl:param name="day"/>
|
||||
<xsl:param name="hour"/>
|
||||
|
||||
<xsl:template match="/dataset">
|
||||
<destinations>
|
||||
<!-- Forward all Series to LONG_TERM outside business hours (7-19) after one week -->
|
||||
<destination aet="LONG_TERM" delay="1w!7-19"/>
|
||||
|
||||
<!-- Forward Series with specified Referring Phyisican with low priority
|
||||
to PHYSICAN_DOE after 3 days -->
|
||||
<xsl:if test="attr[@tag='00080090']='Doe^John'">
|
||||
<destination aet="PHYSICAN_DOE" priority="low" delay="3d"/>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Forward Magnetic Resonance Series with high priority
|
||||
to MR_WORKSTATION immediately -->
|
||||
<xsl:if test="attr[@tag='00080060']='MR'">
|
||||
<destination aet="MR_WORKSTATION" priority="high"/>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Forward Series requested by Neuro Surgery to NEURO_SURGERY immediately -->
|
||||
<xsl:if test="attr[tag='00400275']/item/attr[@tag='00321033']='Neuro Surgery'">
|
||||
<destination aet="NEURO_SURGERY"/>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Forward Series with Requested Procedure Code '12345' to FWD_PRIOR with prior studies/series selected by forward_priors.xsl -->
|
||||
<xsl:if test="attr[tag='00400275']/item/attr[@tag=00321064]='12345'">
|
||||
<destination aet="FWD_PRIOR" includePrior="true"/>
|
||||
<!-- Attributes of destination element are available in forward_priors.xsl as xsl parameters!
|
||||
Default parameters for including prior studies:
|
||||
includePrior..Forward also prior studies of patient regarding forward-priors.xsl (can have any value as hint)
|
||||
level.........Use 'INSTANCE' to get header attributes for each prior instance instead of series.
|
||||
(add SOP Instance UID (0008,0018) in forward-priors.xsl to get C-MOVE on instance level)
|
||||
notOlderThan..Use only studies that are created within given intervall (e.g.: 12m ;d..days, w..weeks, m..months)
|
||||
availability..Worst availability of studies that are used as priors. (default: NEARLINE)
|
||||
retrAETs......List of retrieve AETs separated with '\'. (default: retrieveAET of stored Series; NONE will disable this restriction)
|
||||
modalities....List of modalities separated with '\'. Only applicable if includePrior is set.
|
||||
(default: Disable restriction of modalities)
|
||||
-->
|
||||
</xsl:if>
|
||||
|
||||
<!-- Forward to CENTRAL only if external RetrieveAET is not CENTRAL
|
||||
<xsl:if test="$ext-retrieve-aet!='CENTRAL'">
|
||||
<destination aet="CENTRAL" priority="high"/>
|
||||
</xsl:if>
|
||||
-->
|
||||
|
||||
</destinations>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
163
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/forward_priors.xsl
Normal file
163
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/forward_priors.xsl
Normal file
@@ -0,0 +1,163 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml"/>
|
||||
|
||||
<!--
|
||||
The following parameters are made available by the application:
|
||||
source-aet - AET of the Storage SCU from which the series was received
|
||||
retrieve-aet - AET of the Query Retrieve SCP from which the series can be retrieved
|
||||
year - The current year
|
||||
month - The current month (1=Jan, 2=Feb ..)
|
||||
date - The current day of the month
|
||||
day - The current day of the week (0=Sun, 1=Mon ..)
|
||||
hour - The current hour of the day
|
||||
|
||||
These parameters may be to define rules that depend on the source or retrieve AET
|
||||
or on the current date or time.
|
||||
|
||||
Also all attributes of 'destination' element in forward.xsl are available here as parameters!
|
||||
The default 'destination' attributes are:
|
||||
aet...........Destination AET
|
||||
priority......Dicom Priority of C-MOVE
|
||||
delay.........Delay of scheduled move request
|
||||
|
||||
includePrior..Forward also prior studies of patient regarding this stylesheet (can have any value as hint)
|
||||
level.........If 'INSTANCE' each instance instead of series are in <priors>! Only applicable if includePrior is set.
|
||||
availability..Minimum availability of studies that are used as priors. Only applicable if includePrior is set.
|
||||
(default: NEARLINE)
|
||||
retrAETs......List of retrieve AETs separated with '\'. Only applicable if includePrior is set.
|
||||
(default: retrieveAET of stored Series, Use NONE or empty string to disable this restriction)
|
||||
modalities....List of modalities separated with '\'. Only applicable if includePrior is set.
|
||||
(default: Disable restriction of modalities)
|
||||
|
||||
An example of the xml input:
|
||||
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<forward>
|
||||
<seriesStored>
|
||||
<dataset>
|
||||
<attr tag="00081111" vr="SQ" pos="-1" len="-1">
|
||||
<item id="1" pos="94" len="-1">
|
||||
<attr tag="00081150" vr="UI" pos="102" vm="1" len="24">1.2.840.10008.3.1.2.3.3</attr>
|
||||
<attr tag="00081155" vr="UI" pos="134" vm="1" len="54"
|
||||
>1.2.40.0.13.1.1.10.231.160.236.20101027154544698.32922</attr>
|
||||
<attr tag="00404019" vr="SQ" pos="-1" len="-1"/>
|
||||
</item>
|
||||
</attr>
|
||||
<attr tag="00081115" vr="SQ" pos="-1" len="-1">
|
||||
<item id="1" pos="-1" len="-1">
|
||||
<attr tag="00081199" vr="SQ" pos="-1" len="-1">
|
||||
<item id="1" pos="-1" len="-1">
|
||||
<attr tag="00080054" vr="AE" pos="-1" vm="1" len="9">DCM4CHEE</attr>
|
||||
<attr tag="00080056" vr="CS" pos="-1" vm="1" len="6">ONLINE</attr>
|
||||
<attr tag="00081150" vr="UI" pos="-1" vm="1" len="29"
|
||||
>1.2.840.10008.5.1.4.1.1.88.11</attr>
|
||||
<attr tag="00081155" vr="UI" pos="-1" vm="1" len="64"
|
||||
>1.2.40.0.13.0.11.111.2.2010000498.16297.20101112152444.6816957.1</attr>
|
||||
</item>
|
||||
</attr>
|
||||
<attr tag="0020000E" vr="UI" pos="-1" vm="1" len="62"
|
||||
>1.2.40.0.13.0.11.111.2.2010000498.16297.20101112152444.6816957</attr>
|
||||
</item>
|
||||
</attr>
|
||||
<attr tag="0020000D" vr="UI" pos="-1" vm="1" len="54"
|
||||
>1.2.40.0.13.0.11.111.2.2010000498.16297.20101112152444</attr>
|
||||
</dataset>
|
||||
</seriesStored>
|
||||
<priors>
|
||||
<dataset>
|
||||
<attr tag="00080005" vr="CS" pos="0" vm="1" len="10">ISO_IR 100</attr>
|
||||
<attr tag="00080020" vr="DA" pos="-1" vm="1" len="8">20080814</attr>
|
||||
<attr tag="00080021" vr="DA" pos="18" vm="1" len="8">20080814</attr>
|
||||
<attr tag="00080030" vr="TM" pos="-1" vm="1" len="10">115059.000</attr>
|
||||
<attr tag="00080031" vr="TM" pos="34" vm="1" len="10">115059.000</attr>
|
||||
<attr tag="00080050" vr="SH" pos="-1" vm="1" len="16">0808111507014642</attr>
|
||||
<attr tag="00080054" vr="AE" pos="-1" vm="1" len="9">DCM4CHEE</attr>
|
||||
<attr tag="00080056" vr="CS" pos="-1" vm="1" len="6">ONLINE</attr>
|
||||
<attr tag="00080060" vr="CS" pos="52" vm="1" len="2">RF</attr>
|
||||
<attr tag="00080061" vr="CS" pos="-1" vm="1" len="2">RF</attr>
|
||||
<attr tag="00081010" vr="SH" pos="62" vm="1" len="6">SCANLX</attr>
|
||||
<attr tag="00081030" vr="LO" pos="-1" vm="1" len="60">DURCHLEUCHTUNG.GASTRO -
|
||||
INTESTINALTRAKT.VIDEOCINEMATOGRAPHIE</attr>
|
||||
<attr tag="0008103E" vr="LO" pos="76" vm="1" len="60">DURCHLEUCHTUNG.GASTRO -
|
||||
INTESTINALTRAKT.VIDEOCINEMATOGRAPHIE</attr>
|
||||
<attr tag="00081111" vr="SQ" pos="-1" len="-1">
|
||||
<item id="1" pos="156" len="-1">
|
||||
<attr tag="00081150" vr="UI" pos="164" vm="1" len="24">1.2.840.10008.3.1.2.3.3</attr>
|
||||
<attr tag="00081155" vr="UI" pos="196" vm="1" len="54"
|
||||
>1.2.40.0.13.1.1.172.25.12.190.20081028094914997.32850</attr>
|
||||
</item>
|
||||
</attr>
|
||||
<attr tag="00100010" vr="PN" pos="-1" vm="1" len="10">RAAB^HILDE</attr>
|
||||
<attr tag="00100020" vr="LO" pos="-1" vm="1" len="6">18225 </attr>
|
||||
<attr tag="00100021" vr="LO" pos="-1" vm="1" len="10">MY_ISSUER </attr>
|
||||
<attr tag="00100030" vr="DA" pos="-1" vm="1" len="8">19171101</attr>
|
||||
<attr tag="00100040" vr="CS" pos="-1" vm="1" len="2">F </attr>
|
||||
<attr tag="0020000D" vr="UI" pos="-1" vm="1" len="58"
|
||||
>1.2.40.0.13.0.11.6686.2.10018945743.109595.20080811150647</attr>
|
||||
<attr tag="0020000E" vr="UI" pos="274" vm="1" len="58"
|
||||
>1.2.826.0.1.3680043.2.138.172.21.35.127.20080809.200429.74</attr>
|
||||
<attr tag="00201206" vr="IS" pos="-1" vm="1" len="2">10</attr>
|
||||
<attr tag="00201208" vr="IS" pos="-1" vm="1" len="3">209</attr>
|
||||
<attr tag="00201209" vr="IS" pos="-1" vm="1" len="2">33</attr>
|
||||
<attr tag="0032000A" vr="CS" pos="-1" vm="0" len="0"/>
|
||||
<attr tag="00400244" vr="DA" pos="340" vm="1" len="8">20080814</attr>
|
||||
<attr tag="00400245" vr="TM" pos="356" vm="1" len="10">115059.000</attr>
|
||||
<attr tag="00430010" vr="LO" pos="-1" vm="1" len="15">dcm4che/archive</attr>
|
||||
<attr tag="00431010" vr="OB" pos="-1" vm="1" len="8">0\0\0\0\0\0\1\242</attr>
|
||||
<attr tag="00431011" vr="OB" pos="-1" vm="1" len="8">0\0\0\0\0\0\2\199</attr>
|
||||
<attr tag="00431012" vr="OB" pos="-1" vm="1" len="8">0\0\0\0\0\0\8\152</attr>
|
||||
<attr tag="00431014" vr="AE" pos="-1" vm="1" len="6">DCMSND</attr>
|
||||
<attr tag="00880130" vr="SH" pos="-1" vm="0" len="0"/>
|
||||
<attr tag="00880140" vr="UI" pos="-1" vm="0" len="0"/>
|
||||
</dataset>
|
||||
...
|
||||
<dataset>
|
||||
...
|
||||
</dataset>
|
||||
</priors>
|
||||
</forward>
|
||||
-->
|
||||
<xsl:param name="source-aet"/>
|
||||
<xsl:param name="retrieve-aet"/>
|
||||
<xsl:param name="year"/>
|
||||
<xsl:param name="month"/>
|
||||
<xsl:param name="date"/>
|
||||
<xsl:param name="day"/>
|
||||
<xsl:param name="hour"/>
|
||||
|
||||
<xsl:template match="/forward">
|
||||
<forwards>
|
||||
<xsl:apply-templates select="seriesStored"/>
|
||||
<xsl:apply-templates select="priors"/>
|
||||
</forwards>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="seriesStored">
|
||||
<!-- Define forward of seriesStored referenced objects. Default: seriesStored is forwarded completely.
|
||||
<xsl:apply-templates select="dataset" mode="stored"/>
|
||||
-->
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="priors">
|
||||
<xsl:apply-templates select="dataset" mode="prior"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="dataset" mode="prior">
|
||||
<forward>
|
||||
<xsl:attribute name="studyIUID"><xsl:value-of select="attr[@tag='0020000D']" /></xsl:attribute>
|
||||
<xsl:attribute name="seriesIUID"><xsl:value-of select="attr[@tag='0020000E']" /></xsl:attribute>
|
||||
<!-- Uncomment if forward.xsl includePrior level is INSTANCE!
|
||||
<xsl:attribute name="iuid"><xsl:value-of select="attr[@tag='00080018']" /></xsl:attribute>
|
||||
-->
|
||||
</forward>
|
||||
</xsl:template>
|
||||
<xsl:template match="dataset" mode="stored">
|
||||
<forward>
|
||||
<xsl:attribute name="studyIUID"><xsl:value-of select="attr[@tag='0020000D']" /></xsl:attribute>
|
||||
<xsl:attribute name="seriesIUID"><xsl:value-of select="attr[@tag='0020000E']" /></xsl:attribute>
|
||||
<!-- <xsl:attribute name="iuid"><xsl:value-of select="attr[@tag='00080018']" /></xsl:attribute> -->
|
||||
</forward>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
146
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/mpps2gpwl.xsl
Normal file
146
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/mpps2gpwl.xsl
Normal file
@@ -0,0 +1,146 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="yes"/>
|
||||
<xsl:param name="date">20070319</xsl:param>
|
||||
<xsl:param name="time">093000.000</xsl:param>
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<!-- Private Worklist Item Sequence (0043,0020) -->
|
||||
<attr tag="00430020" vr="SQ">
|
||||
<xsl:if test="normalize-space(attr[@tag=00400252])='COMPLETED'">
|
||||
<xsl:call-template name="wkitem"/>
|
||||
</xsl:if>
|
||||
</attr>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
<xsl:template name="wkitem">
|
||||
<item>
|
||||
<!-- Specific Character Set -->
|
||||
<xsl:copy-of select="attr[@tag='00080005']"/>
|
||||
<!-- SOP Class UID -->
|
||||
<attr tag="00080016" vr="UI">1.2.840.10008.5.1.4.32.2</attr>
|
||||
<!-- SOP Instance UID (0008,0018) will be created by the application -->
|
||||
|
||||
<!-- Referenced Performed Procedure Step Sequence -->
|
||||
<attr tag="00081111" vr="SQ">
|
||||
<item>
|
||||
<!-- Referenced SOP Class UID -->
|
||||
<attr tag="00081150" vr="UI">
|
||||
<xsl:value-of select="attr[@tag='00080016']"/>
|
||||
</attr>
|
||||
<!-- Referenced SOP Instance UID -->
|
||||
<attr tag="00081155" vr="UI">
|
||||
<xsl:value-of select="attr[@tag='00080018']"/>
|
||||
</attr>
|
||||
</item>
|
||||
</attr>
|
||||
|
||||
<!-- Patient's Name (0010,0010) will be supplemented from Patient Record in DB-->
|
||||
<!-- Patient ID -->
|
||||
<xsl:copy-of select="attr[@tag='00100020']"/>
|
||||
<!-- Issuer of Patient ID -->
|
||||
<xsl:copy-of select="attr[@tag='00100021']"/>
|
||||
<!-- Patient's Birth Date (0010, 0030) will be supplemented from Patient Record in DB-->
|
||||
<!-- Patient's Sex (0010, 0040) will be supplemented from Patient Record in DB-->
|
||||
|
||||
<!-- General Purpose Scheduled Procedure Step Status -->
|
||||
<attr tag="00404001" vr="CS">SCHEDULED</attr>
|
||||
<!-- General Purpose Scheduled Procedure Step Priority -->
|
||||
<attr tag="00404003" vr="CS">MEDIUM</attr>
|
||||
<!-- Scheduled Procedure Step Start Date and Time -->
|
||||
<attr tag="00404005" vr="DT">
|
||||
<xsl:value-of select="$date"/>
|
||||
<xsl:value-of select="$time"/>
|
||||
</attr>
|
||||
<!-- Multiple Copies Flag -->
|
||||
<attr tag="00404006" vr="CS">N</attr>
|
||||
<!-- Scheduled Procedure Step ID (0040,4009) will be created by the application -->
|
||||
<!-- Scheduled Workitem Code Sequence -->
|
||||
<attr tag="00404018" vr="SQ">
|
||||
<item>
|
||||
<!-- Code Value -->
|
||||
<attr tag="00080100" vr="SH">110005</attr>
|
||||
<!-- Coding Scheme Designator -->
|
||||
<attr tag="00080102" vr="SH">DCM</attr>
|
||||
<!-- Code Meaning -->
|
||||
<attr tag="00080104" vr="LO">Interpretation</attr>
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Input Availability Flag -->
|
||||
<attr tag="00404020" vr="CS">COMPLETE</attr>
|
||||
<!-- Input Information Sequence -->
|
||||
<attr tag="00404021" vr="SQ">
|
||||
<item>
|
||||
<!-- Study Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='00400270']/item/attr[@tag='0020000D']"/>
|
||||
<!-- >Referenced Series Sequence (0008,1115) -->
|
||||
<attr tag="00081115" vr="SQ">
|
||||
<xsl:apply-templates select="attr[@tag='00400340']/item" mode="refseries"/>
|
||||
</attr>
|
||||
</item>
|
||||
</attr>
|
||||
<!-- Scheduled Station Class Code Sequence -->
|
||||
<attr tag="00404026" vr="SQ"/>
|
||||
<!-- Scheduled Station Geographic Location Code Sequence -->
|
||||
<attr tag="00404027" vr="SQ"/>
|
||||
<!-- Scheduled Human Performers Sequence -->
|
||||
<attr tag="00404034" vr="SQ"/>
|
||||
<!-- Referenced Request Sequence -->
|
||||
<attr tag="0040A370" vr="SQ">
|
||||
<xsl:apply-templates
|
||||
select="attr[@tag='00400270']/item[string(attr[@tag='00401001'])]"
|
||||
mode="request"/>
|
||||
</attr>
|
||||
</item>
|
||||
</xsl:template>
|
||||
<xsl:template match="item" mode="request">
|
||||
<xsl:variable name="rpid">
|
||||
<xsl:value-of select="string(attr[@tag='00401001'])"/>
|
||||
</xsl:variable>
|
||||
<xsl:if test="not(preceding-sibling::*[attr[@tag=00401001]=$rpid])">
|
||||
<item>
|
||||
<!-- Accession Number -->
|
||||
<xsl:copy-of select="attr[@tag='00080050']"/>
|
||||
<!-- Referenced Study Sequence -->
|
||||
<xsl:copy-of select="attr[@tag='00081110']"/>
|
||||
<!-- Study Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='0020000D']"/>
|
||||
<!-- Requesting Physician -->
|
||||
<xsl:copy-of select="attr[@tag='00321032']"/>
|
||||
<!-- Requesting Service -->
|
||||
<xsl:copy-of select="attr[@tag='00321033']"/>
|
||||
<!-- Requested Procedure Description -->
|
||||
<xsl:copy-of select="attr[@tag='00321060']"/>
|
||||
<!-- Requested Procedure Code Sequence -->
|
||||
<xsl:copy-of select="attr[@tag='00321064']"/>
|
||||
<!-- Requested Procedure ID -->
|
||||
<xsl:copy-of select="attr[@tag='00401001']"/>
|
||||
<!-- Placer Order Number/Imaging Service Request -->
|
||||
<xsl:copy-of select="attr[@tag='00402016']"/>
|
||||
<!-- Filler Order Number/Imaging Service Request -->
|
||||
<xsl:copy-of select="attr[@tag='00402017']"/>
|
||||
</item>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
<xsl:template match="item" mode="refseries">
|
||||
<item>
|
||||
<!-- Retrieve AE Title -->
|
||||
<xsl:copy-of select="attr[@tag='00080054']"/>
|
||||
<!-- Referenced SOP Sequence -->
|
||||
<attr tag="00081199" vr="SQ">
|
||||
<xsl:apply-templates select="attr[@tag='00081140']/item" mode="refsop"/>
|
||||
<xsl:apply-templates select="attr[@tag='00400220']/item" mode="refsop"/>
|
||||
</attr>
|
||||
<!-- Series Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='0020000E']"/>
|
||||
</item>
|
||||
</xsl:template>
|
||||
<xsl:template match="item" mode="refsop">
|
||||
<item>
|
||||
<!-- Referenced SOP Class UID -->
|
||||
<xsl:copy-of select="attr[@tag='00081150']"/>
|
||||
<!-- Referenced SOP Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='00081155']"/>
|
||||
</item>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
30
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/mwl-cfindrq.xsl
Normal file
30
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/mwl-cfindrq.xsl
Normal file
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="no"/>
|
||||
<!-- overwritten by application with actual values -->
|
||||
<xsl:param name="calling" select="'SAMPLE_MOD'"/>
|
||||
<xsl:param name="called" select="'DCM4CHEE'"/>
|
||||
<xsl:param name="date" select="'20051206'"/>
|
||||
<xsl:param name="time" select="'115600.000'"/>
|
||||
<xsl:template match="/">
|
||||
<dataset>
|
||||
<!-- Scheduled Procedure Step Sequence -->
|
||||
<attr tag="00400100" vr="SQ">
|
||||
<item>
|
||||
<!-- Scheduled Procedure Step Sequence -->
|
||||
<attr tag="00400001" vr="AE">
|
||||
<xsl:value-of select="$calling"/>
|
||||
</attr>
|
||||
<!-- Scheduled Procedure Step Start Date -->
|
||||
<attr tag="00400002" vr="DA">
|
||||
<xsl:value-of select="$date"/>
|
||||
</attr>
|
||||
<!-- Scheduled Procedure Step Status -->
|
||||
<attr tag="00400020" vr="CS">
|
||||
<xsl:text>ARRIVED\READY</xsl:text>
|
||||
</attr>
|
||||
</item>
|
||||
</attr>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
72
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/wado-prefetch.xsl
Normal file
72
dcm4chee/default/conf/dcm4chee-ae/MOD_AET/wado-prefetch.xsl
Normal file
@@ -0,0 +1,72 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml"/>
|
||||
|
||||
<!--
|
||||
Output format:
|
||||
<wado-prefetches>
|
||||
<prefetch wadourl="" [exportPath=""] />
|
||||
...
|
||||
</wado-prefetches>
|
||||
|
||||
wadourl: WADO URL without objectUID.(will be added for every image of the series)
|
||||
exportPath: optional path for export. {0} will be replaced with SOP Instance UID.
|
||||
|
||||
The following parameters are made available by the application:
|
||||
source-aet - AET of the Storage SCU from which the series was received
|
||||
retrieve-aet - AET of the Query Retrieve SCP from which the series can be retrieved
|
||||
wado-baseurl - BASE URL for WADO request (Format: http://<host>:<port>/wado?requestType=WADO
|
||||
export-path - Base directory path to wich images are exported
|
||||
|
||||
These parameters may be to define rules that depend on the source or retrieve AET.
|
||||
|
||||
An example of the parameters that are made available to this stylesheet is as follows:
|
||||
<xsl:param name="source-aet">DCMSND</xsl:param>
|
||||
<xsl:param name="retrieve-aet">DCM4CHEE</xsl:param>
|
||||
-->
|
||||
<xsl:param name="source-aet"/>
|
||||
<xsl:param name="retrieve-aet"/>
|
||||
<xsl:param name="wado-baseurl">http://localhost:8080/wado?requestType=WADO</xsl:param>
|
||||
<xsl:param name="export-path">exported</xsl:param>
|
||||
|
||||
<xsl:template match="/dataset">
|
||||
<xsl:param name="study-uid" select="attr[@tag='0020000D']"/>
|
||||
<xsl:param name="series-uid" select="attr[@tag='0020000E']"/>
|
||||
<wado-prefetches>
|
||||
<!-- Prefetch images with special width and height of Series with specified Referring Phyisican -->
|
||||
<xsl:if test="attr[@tag='00080090']='Doe^John'">
|
||||
<prefetch>
|
||||
<xsl:attribute name="wadourl">
|
||||
<xsl:value-of select="$wado-baseurl"/>
|
||||
<xsl:text>&studyUID=</xsl:text><xsl:value-of select="$study-uid"/>
|
||||
<xsl:text>&seriesUID=</xsl:text><xsl:value-of select="$series-uid"/>
|
||||
<xsl:text>&rows=64</xsl:text>
|
||||
<xsl:text>&columns=64</xsl:text>
|
||||
<xsl:text>&imageQuality=70</xsl:text>
|
||||
</xsl:attribute>
|
||||
</prefetch>
|
||||
</xsl:if>
|
||||
<!-- Prefetch and export images witch are received from modality 'DCMSND' -->
|
||||
<xsl:if test="$source-aet='DCMSND'">
|
||||
<prefetch>
|
||||
<xsl:attribute name="wadourl">
|
||||
<xsl:value-of select="$wado-baseurl"/>
|
||||
<xsl:text>&studyUID=</xsl:text><xsl:value-of select="$study-uid"/>
|
||||
<xsl:text>&seriesUID=</xsl:text><xsl:value-of select="$series-uid"/>
|
||||
<xsl:text>&rows=256</xsl:text>
|
||||
<xsl:text>&columns=256</xsl:text>
|
||||
<xsl:text>&imageQuality=70</xsl:text>
|
||||
</xsl:attribute>
|
||||
<xsl:attribute name="exportPath">
|
||||
<xsl:value-of select="$export-path"/>
|
||||
<xsl:text>/</xsl:text><xsl:value-of select="$study-uid"/>
|
||||
<xsl:text>/</xsl:text><xsl:value-of select="$series-uid"/>
|
||||
<xsl:text>/{0}.jpg</xsl:text>
|
||||
</xsl:attribute>
|
||||
</prefetch>
|
||||
</xsl:if>
|
||||
|
||||
</wado-prefetches>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
19
dcm4chee/default/conf/dcm4chee-ae/README.TXT
Normal file
19
dcm4chee/default/conf/dcm4chee-ae/README.TXT
Normal file
@@ -0,0 +1,19 @@
|
||||
Put style sheets defining attribute coercion of incomming/outgoing DICOM
|
||||
messages (DIMSE) in this directory:
|
||||
|
||||
cstorerq.xsl - coerce Data Set of received C-STORE-RQ
|
||||
cfindrq.xsl - coerce Identifier of received Query C-FIND-RQ
|
||||
cfindrsp.xsl - coerce Identifier of returned Query C-FIND-RSP
|
||||
mwl-cfindrq.xsl - coerce Identifier of received Modality Worklist C-FIND-RQ
|
||||
mwl-cfindrsp.xsl - coerce Identifier of returned Modality Worklist C-FIND-RSP
|
||||
|
||||
General attribute coercion configuration in the base directory can be
|
||||
overwritten by AE specific coercion configuration, located in sub-directories
|
||||
matching the Calling AE Title. E.g.:
|
||||
|
||||
MOD_AET/mwl-cfindrq.xsl
|
||||
|
||||
ianforward.xsl - Example of a style sheet to get destinations for IAN-SCU
|
||||
depending on MPPS attributes.
|
||||
This style sheet must be activated by configuring
|
||||
'Mpps2IanDestinationStylesheet' of IANSCU service.
|
||||
16
dcm4chee/default/conf/dcm4chee-ae/ianforward.xsl
Normal file
16
dcm4chee/default/conf/dcm4chee-ae/ianforward.xsl
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0"?>
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:output method="xml" indent="yes"/>
|
||||
|
||||
<!--
|
||||
The output must contain a <destination aet="DEST" > element for each
|
||||
destination.
|
||||
-->
|
||||
|
||||
<xsl:template match="/">
|
||||
<!-- Send ANY IAN to these destination AETs -->
|
||||
<destination aet="DEST_1"/>
|
||||
<!-- destination aet="DEST_2"/ -->
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
233
dcm4chee/default/conf/dcm4chee-ae/mpps2ups.xsl
Normal file
233
dcm4chee/default/conf/dcm4chee-ae/mpps2ups.xsl
Normal file
@@ -0,0 +1,233 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
version="1.0">
|
||||
<xsl:output method="xml" indent="yes" />
|
||||
|
||||
<xsl:param name="date">20100804</xsl:param>
|
||||
<xsl:param name="time">093000.000</xsl:param>
|
||||
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<!-- Private Worklist Item Sequence (0043,0020) -->
|
||||
<attr tag="00430020" vr="SQ">
|
||||
<xsl:if test="normalize-space(attr[@tag=00400252])='COMPLETED'">
|
||||
<xsl:call-template name="wkitem" />
|
||||
</xsl:if>
|
||||
</attr>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="wkitem">
|
||||
<item>
|
||||
<!-- Specific Character Set -->
|
||||
<xsl:copy-of select="attr[@tag='00080005']" />
|
||||
|
||||
<!-- SOP Class UID -->
|
||||
<attr tag="00080016" vr="UI">1.2.840.10008.5.1.4.34.4.1</attr>
|
||||
|
||||
<!-- SOP Instance UID (0008,0018) will be created by the application -->
|
||||
|
||||
<!-- Transaction UID-->
|
||||
<attr tag="00081195" vr="UI" />
|
||||
|
||||
<!-- Scheduled Procedure Step Priority -->
|
||||
<attr tag="00741200" vr="CS">MEDIUM</attr>
|
||||
|
||||
<!-- Procedure Step Label -->
|
||||
<attr tag="00741204" vr="LO">Sample Procedure Step Label</attr>
|
||||
|
||||
<!-- Worklist Label -->
|
||||
<attr tag="00741202" vr="LO">Sample Worklist Label</attr>
|
||||
|
||||
<!-- Scheduled Processing Parameters Sequence -->
|
||||
<attr tag="00741210" vr="SQ" />
|
||||
|
||||
<!-- Scheduled Processing Applications Code Sequence -->
|
||||
<attr tag="00404004" vr="SQ" />
|
||||
|
||||
<!-- Scheduled Station Name Code Sequence -->
|
||||
<attr tag="00404025" vr="SQ" />
|
||||
|
||||
<!-- Scheduled Station Class Code Sequence -->
|
||||
<attr tag="00404026" vr="SQ" />
|
||||
|
||||
<!-- Scheduled Station Geographic Location Code Sequence -->
|
||||
<attr tag="00404027" vr="SQ" />
|
||||
|
||||
<!-- Scheduled Human Performers Sequence -->
|
||||
<attr tag="00404034" vr="SQ" />
|
||||
|
||||
<!-- Scheduled Procedure Step Start Date and Time -->
|
||||
<attr tag="00404005" vr="DT">
|
||||
<xsl:value-of select="$date" />
|
||||
<xsl:value-of select="$time" />
|
||||
</attr>
|
||||
|
||||
<!-- Scheduled Workitem Code Sequence -->
|
||||
<attr tag="00404018" vr="SQ">
|
||||
<item>
|
||||
|
||||
<!-- Code Value -->
|
||||
<attr tag="00080100" vr="SH">110005</attr>
|
||||
|
||||
<!-- Coding Scheme Designator -->
|
||||
<attr tag="00080102" vr="SH">DCM</attr>
|
||||
|
||||
<!-- Code Meaning -->
|
||||
<attr tag="00080104" vr="LO">Interpretation</attr>
|
||||
|
||||
</item>
|
||||
</attr>
|
||||
|
||||
<!-- Comments on the Scheduled Procedure Step -->
|
||||
<attr tag="00400400" vr="LT" />
|
||||
|
||||
<!-- Input Availability Flag
|
||||
<attr tag="00404020" vr="CS">COMPLETE</attr>
|
||||
-->
|
||||
|
||||
<xsl:variable name="studyiuid">
|
||||
<xsl:copy-of select="attr[@tag='00400270']/item/attr[@tag='0020000D']" />
|
||||
</xsl:variable>
|
||||
|
||||
<!-- Input Availability Flag -->
|
||||
<attr tag="00404020" vr="CS">COMPLETE</attr>
|
||||
|
||||
<!-- Input Information Sequence -->
|
||||
<attr tag="00404021" vr="SQ">
|
||||
<xsl:apply-templates select="attr[@tag='00400340']/item"
|
||||
mode="refseries">
|
||||
<xsl:with-param name="studyiuid" select="$studyiuid" />
|
||||
</xsl:apply-templates>
|
||||
</attr>
|
||||
|
||||
<!-- Study Instance UID -->
|
||||
<attr tag="0020000D" vr="UI">
|
||||
<xsl:value-of select="$studyiuid" />
|
||||
</attr>
|
||||
|
||||
<!--
|
||||
Patient's Name (0010,0010) will be supplemented from Patient
|
||||
Record in DB
|
||||
-->
|
||||
|
||||
<!-- Patient ID -->
|
||||
<xsl:copy-of select="attr[@tag='00100020']" />
|
||||
|
||||
<!-- Issuer of Patient ID -->
|
||||
<xsl:copy-of select="attr[@tag='00100021']" />
|
||||
|
||||
<!--
|
||||
Patient's Birth Date (0010, 0030) will be supplemented from
|
||||
Patient Record in DB
|
||||
-->
|
||||
|
||||
<!--
|
||||
Patient's Sex (0010, 0040) will be supplemented from Patient
|
||||
Record in DB
|
||||
-->
|
||||
|
||||
<!-- Admission ID -->
|
||||
<attr tag="00380010" vr="LO" />
|
||||
|
||||
<!-- Issuer of Admission ID Sequence -->
|
||||
<attr tag="00380014" vr="SQ" />
|
||||
|
||||
<!-- Admitting Diagnoses Description -->
|
||||
<attr tag="00081080" vr="LO" />
|
||||
|
||||
<!-- Admitting Diagnoses Code Sequence -->
|
||||
<attr tag="00081084" vr="SQ" />
|
||||
|
||||
<!-- Referenced Request Sequence -->
|
||||
<attr tag="0040A370" vr="SQ">
|
||||
<xsl:apply-templates
|
||||
select="attr[@tag='00400270']/item[string(attr[@tag='00401001'])]"
|
||||
mode="request" />
|
||||
</attr>
|
||||
|
||||
<!-- Related Procedure Step Sequence -->
|
||||
<attr tag="00741220" vr="SQ" />
|
||||
|
||||
<!-- Unified Procedure Step State -->
|
||||
<attr tag="00741000" vr="CS">SCHEDULED</attr>
|
||||
|
||||
<!-- Unified Procedure Step Progress Information Sequence -->
|
||||
<attr tag="00741002" vr="SQ" />
|
||||
|
||||
<!-- UPS Performed Procedure Sequence -->
|
||||
<attr tag="00741216" vr="SQ" />
|
||||
</item>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="item" mode="request">
|
||||
<xsl:variable name="rpid">
|
||||
<xsl:value-of select="string(attr[@tag='00401001'])" />
|
||||
</xsl:variable>
|
||||
<xsl:if test="not(preceding-sibling::*[attr[@tag=00401001]=$rpid])">
|
||||
<item>
|
||||
<!-- Accession Number -->
|
||||
<xsl:copy-of select="attr[@tag='00080050']" />
|
||||
<!-- Referenced Study Sequence -->
|
||||
<xsl:copy-of select="attr[@tag='00081110']" />
|
||||
<!-- Study Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='0020000D']" />
|
||||
<!-- Requesting Physician -->
|
||||
<xsl:copy-of select="attr[@tag='00321032']" />
|
||||
<!-- Requesting Service -->
|
||||
<xsl:copy-of select="attr[@tag='00321033']" />
|
||||
<!-- Requested Procedure Description -->
|
||||
<xsl:copy-of select="attr[@tag='00321060']" />
|
||||
<!-- Requested Procedure Code Sequence -->
|
||||
<xsl:copy-of select="attr[@tag='00321064']" />
|
||||
<!-- Requested Procedure ID -->
|
||||
<xsl:copy-of select="attr[@tag='00401001']" />
|
||||
<!-- Placer Order Number/Imaging Service Request -->
|
||||
<xsl:copy-of select="attr[@tag='00402016']" />
|
||||
<!-- Filler Order Number/Imaging Service Request -->
|
||||
<xsl:copy-of select="attr[@tag='00402017']" />
|
||||
</item>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="item" mode="refseries">
|
||||
<xsl:param name="studyiuid"/>
|
||||
<item>
|
||||
<!-- Study Instance UID -->
|
||||
<attr tag="0020000D" vr="UI">
|
||||
<xsl:value-of select="$studyiuid" />
|
||||
</attr>
|
||||
<!-- Series Instance UID -->
|
||||
<attr tag="0020000E" vr="UI">
|
||||
<xsl:value-of select="attr[@tag='0020000E']" />
|
||||
</attr>
|
||||
<!-- Retrieve AE Title -->
|
||||
<attr tag="00080054" vr="AE">
|
||||
<xsl:value-of select="attr[@tag='00080054']" />
|
||||
</attr>
|
||||
<!-- Retrieve Location UID -->
|
||||
<attr tag="0040E011" vr="UI"/>
|
||||
<!-- Retrieve URI -->
|
||||
<attr tag="0040E010" vr="UT"/>
|
||||
<!-- Storage Media File-Set ID -->
|
||||
<attr tag="00880130" vr="SH"/>
|
||||
<!-- Storage Media File-Set UID -->
|
||||
<attr tag="00880140" vr="UI"/>
|
||||
<!-- Referenced SOP Sequence -->
|
||||
<attr tag="00081199" vr="SQ">
|
||||
<xsl:apply-templates select="attr[@tag='00081140']/item"
|
||||
mode="refsop" />
|
||||
<xsl:apply-templates select="attr[@tag='00400220']/item"
|
||||
mode="refsop" />
|
||||
</attr>
|
||||
</item>
|
||||
</xsl:template>
|
||||
<xsl:template match="item" mode="refsop">
|
||||
<item>
|
||||
<!-- Referenced SOP Class UID -->
|
||||
<xsl:copy-of select="attr[@tag='00081150']" />
|
||||
<!-- Referenced SOP Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='00081155']" />
|
||||
</item>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
55
dcm4chee/default/conf/dcm4chee-ae/mwl-cfindrsp2cstorerq.xsl
Normal file
55
dcm4chee/default/conf/dcm4chee-ae/mwl-cfindrsp2cstorerq.xsl
Normal file
@@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="no"/>
|
||||
<xsl:template match="/dataset">
|
||||
<dataset>
|
||||
<!-- Specific Character Set -->
|
||||
<xsl:copy-of select="attr[@tag='00080005']"/>
|
||||
<!-- Accession Number -->
|
||||
<xsl:copy-of select="attr[@tag='00080050']"/>
|
||||
<!-- Admitting Diagnoses Description -->
|
||||
<attr tag="00081080" vr="LO"/>
|
||||
<xsl:copy-of select="attr[@tag='00081080']"/>
|
||||
<!-- Referring Physican Name -->
|
||||
<xsl:copy-of select="attr[@tag='00080090']"/>
|
||||
<!-- Patient Name -->
|
||||
<xsl:copy-of select="attr[@tag='00100010']"/>
|
||||
<!-- Patient ID -->
|
||||
<xsl:copy-of select="attr[@tag='00100020']"/>
|
||||
<!-- Issuer Of Patient ID -->
|
||||
<xsl:copy-of select="attr[@tag='00100021']"/>
|
||||
<!-- Patient Birthdate -->
|
||||
<xsl:copy-of select="attr[@tag='00100030']"/>
|
||||
<!-- Patient Sex -->
|
||||
<xsl:copy-of select="attr[@tag='00100040']"/>
|
||||
<!-- (0040,0275) SQ #-1 Request Attributes Sequence -->
|
||||
<attr tag="00400275" vr="SQ">
|
||||
<item>
|
||||
<!-- Study Instance UID -->
|
||||
<xsl:copy-of select="attr[@tag='0020000D']"/>
|
||||
<!-- Requesting Physican -->
|
||||
<xsl:copy-of select="attr[@tag='00321032']"/>
|
||||
<!-- Requesting Service -->
|
||||
<xsl:copy-of select="attr[@tag='00321033']"/>
|
||||
<!-- Requested Procedure Description -->
|
||||
<xsl:copy-of select="attr[@tag='00321060']"/>
|
||||
<!-- Requested Procedure Code Sequence -->
|
||||
<xsl:copy-of select="attr[@tag='00321064']"/>
|
||||
<!-- Requested Procedure ID -->
|
||||
<xsl:copy-of select="attr[@tag='00401001']"/>
|
||||
<!-- Reason for the Requested Procedure -->
|
||||
<xsl:copy-of select="attr[@tag='00401002']"/>
|
||||
<xsl:apply-templates select="attr[@tag='00400100']/item"/>
|
||||
</item>
|
||||
</attr>
|
||||
</dataset>
|
||||
</xsl:template>
|
||||
<xsl:template match="item">
|
||||
<!-- Scheduled Procedure Step Description -->
|
||||
<xsl:copy-of select="attr[@tag='00400007']"/>
|
||||
<!-- Scheduled Protocol Code Sequence -->
|
||||
<xsl:copy-of select="attr[@tag='00400008']"/>
|
||||
<!-- Scheduled Procedure Step ID -->
|
||||
<xsl:copy-of select="attr[@tag='00400009']"/>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
Reference in New Issue
Block a user