<book xmlns="http://docbook.org/ns/docbook" xmlns:xl="http://www.w3.org/1999/xlink" version="5.0">
   <title>CP-1877</title>
    <subtitle>Prohibit Uncompressed Transfer Syntax With Very Large Pixel Data</subtitle>
    <chapter>
        <title></title>
        <informaltable rules="all" frame="box">
            <tr>
                <td rowspan="1" colspan="1" valign="top"><para>Status</para></td>
                <td rowspan="1" colspan="1" valign="top"><para>June 2019 Voting Packet</para></td>
            </tr>
            <tr>
                <td rowspan="1" colspan="1" valign="top"><para>Date of Last Update</para></td>
                <td rowspan="1" colspan="1" valign="top"><para>2019/02/23</para></td>
            </tr>
            <tr>
                <td rowspan="1" colspan="1" valign="top"><para>Person Assigned</para></td>
                <td rowspan="1" colspan="1" valign="top"><para>David Clunie</para>
                    <para><link xl:href="mailto:dclunie@dclunie.com"/></para></td>
            </tr>
           <tr>
              <td rowspan="1" colspan="1" valign="top"><para>Submitter Name</para></td>
               <td rowspan="1" colspan="1" valign="top">
                   <para>Rick Busbridge <link xl:href="mailto:Rick.Busbridge@philips.com"/></para>
                   <para>Nikhilesh Sonar <link xl:href="mailto:nikhilesh.sonar@philips.com"/></para>
               </td>
           </tr>
           <tr>
                <td rowspan="1" colspan="1" valign="top"><para>Submission Date</para></td>
               <td rowspan="1" colspan="1" valign="top"><para>2019/01/07</para></td>
            </tr>
        </informaltable>
        <informaltable rules="all" frame="box">
            <tr>
                <td rowspan="1" colspan="1" valign="top"><para>Correction Number CP-1877</para></td>
            </tr>
            <tr>
                <td rowspan="1" colspan="1" valign="top"><para>Log Summary: Prohibit Uncompressed Transfer Syntax With Very Large Pixel Data</para></td>
            </tr>
            <tr>
                <td rowspan="1" colspan="1" valign="top">
                    <para>Name of Standard</para>
                    <para>PS3.5</para>
                </td>
            </tr>
            <tr>
                <td rowspan="1" colspan="1" valign="top">
                    <para>Rationale for Correction:</para>
                    <para>The DICOM standard does not clearly state that uncompressed Transfer Syntaxes cannot be used with very large pixel data. The issue is that with an uncompressed Transfer Syntax the pixel data length must be explicitly defined in the 32-bit length encoding - this is not always possible for large WSI and Breast Tomo images, where the length can exceed the maximum.</para>
                    <para>PS3.5 Sections 7.1.1 Data Elements, Section 10.1 and Annex A.1 state that when the length of the uncompressed pixel data is larger than the value that can be encoded in a 32-bit value (For Tag, Length, Value encoding) you are not able to use ILE or ELE transfer syntaxes to encode the image. This means that the undefined length approach cannot be used for ILE and ELE.</para>
                    <para>There is no Transfer Syntax that allows the use of the undefined length encapsulation mechanism for uncompressed Pixel Data.</para>
                    <para>This limitation should be made more/very explicit/clear in the standard.</para>
                </td>
            </tr>
            <tr>
                <td rowspan="1" colspan="1" valign="top">Correction Wording:</td>
            </tr>
        </informaltable>
    </chapter>
    <chapter>
        <title/>

        
        
        
        
        
        
        
        
        
        

        <informaltable rules="all" frame="box">
            <tr>
                <td>
                    <para><emphasis role="italic">Amend DICOM PS3.5 as follows (changes to existing text are bold and <emphasis role="bold"><emphasis role="underline">underlined</emphasis></emphasis> for additions and <emphasis role="bold"><emphasis role="strikethrough">struckthrough</emphasis></emphasis> for removals):</emphasis></para>
                </td>
            </tr>
        </informaltable>
                 
         
        <section label="7.1" status="2" xml:id="sect_7.1">
            <title>Data Elements</title>
            <section label="7.1.1" status="3" xml:id="sect_7.1.1">
                <title>Data Element Fields</title>
                <variablelist>
                    <varlistentry>
                        <term>Value Length</term>
                        <listitem>
                            <para xml:id="para_070f7f3a-eedc-45ef-97ef-3507969ef5c3">Either:</para>
                            <itemizedlist>
                                <listitem>
                                    <para xml:id="para_e8f6838c-01b5-4892-9f81-ee1e42f120ea">a 16 or 32-bit (dependent on VR and whether VR is explicit or implicit) unsigned integer containing the Explicit Length of the Value Field as the number of bytes (even) that make up the Value. It does not include the length of the Data Element Tag, Value Representation, and Value Length Fields.</para>
                                </listitem>
                                <listitem>
                                    <para xml:id="para_e46b4b7c-a78a-477f-be52-c0b23e9968b7">a 32-bit Length Field set to Undefined Length (FFFFFFFFH). Undefined Lengths may be used for Data Elements having the Value Representation (VR) Sequence of Items (SQ) and Unknown (UN). For Data Elements with Value Representation OW or OB Undefined Length may be used depending on the negotiated Transfer Syntax (see <xref linkend="chapter_10" xrefstyle="template:Section %n"/> and <xref linkend="chapter_A" xrefstyle="template:Annex %n"/>).</para>
                                </listitem>
                            </itemizedlist>
                            <note>
                                <para xml:id="para_424d0f69-a07d-45c9-8c46-62f818b9e9e0">The decoder of a Data Set should support both Explicit and Undefined Lengths for VRs of SQ and UN and, when applicable, for VRs of OW and OB.</para>
                                <para><emphasis role="bold"><emphasis role="underline">The 32-bit Value Length Field limits the maximum size of large data values such as Pixel Data sent in a Native Format (encoded in Transfer Syntaxes that use only the unencapsulated form).</emphasis></emphasis></para>
                            </note>
                        </listitem>
                    </varlistentry>
                </variablelist>
            </section>
        </section>
        
        <section label="8" status="1" xml:id="chapter_8">
    <title>Encoding of Pixel, Overlay and Waveform Data</title>
    <section label="8.1" status="2" xml:id="sect_8.1">
      <title>Pixel and Overlay Data, and Related Data Elements</title>
      <section label="8.1.1" status="3" xml:id="sect_8.1.1">
        <title>Pixel Data Encoding of Related Data Elements</title>
        <para xml:id="para_5ac3a1cc-12f7-4303-86fc-33bf4c34f3c1">Also, the Value Field containing Pixel Data, like all other Value Fields in DICOM, shall be an even number of bytes in length. This means that the Value Field may need to be padded with data that is not part of the image and shall not be considered significant. If needed, the padding bits shall be appended to the end of the Value Field, and shall be used only to extend the data to the next even byte increment of length.</para>
                    <note>
                        <para><emphasis role="bold"><emphasis role="underline">The 32-bit Value Length Field limits the maximum size of large data values such as Pixel Data sent in a Native Format (encoded in Transfer Syntaxes that use only the unencapsulated form).</emphasis></emphasis></para>
                    </note>
      </section>
    </section>
    <section label="8.2" status="2" xml:id="sect_8.2">
      <title>Native or Encapsulated Format Encoding</title>
      <para xml:id="para_f9b54410-31ad-4044-9be0-651dd86c84b3">Pixel data conveyed in the Pixel Data (7FE0,0010) may be sent either in a Native (uncompressed) Format or in an Encapsulated Format (e.g., compressed) defined outside the DICOM standard.</para>
      <para xml:id="para_cdbe477b-a4f5-417d-bee0-82e5a0b1a9ad">If Pixel Data (7FE0,0010) is sent in a Native Format, the Value Representation OW is most often required. The Value Representation OB may also be used for Pixel Data (7FE0,0010) in cases where Bits Allocated has a value less than or equal to 8, but only with Transfer Syntaxes where the Value Representation is explicitly conveyed (see <xref linkend="chapter_A" xrefstyle="template:Annex %n"/>).</para>
      <note>
          <orderedlist>
              <listitem>
                  <para xml:id="para_ec814ff7-cbc9-4530-a0b6-a580a48d6cf4">The DICOM default Transfer Syntax (Implicit VR Little Endian) does not explicitly convey Value Representation and therefore the VR of OB may not be used for Pixel Data (7FE0,0010) when using the default Transfer Syntax.</para>
                  
              </listitem>
              <listitem>
                  <para><emphasis role="bold"><emphasis role="underline">The 32-bit Value Length Field limits the maximum size of large data values such as Pixel Data sent in a Native Format.</emphasis></emphasis></para>
              </listitem>
          </orderedlist>
      </note>
      <para xml:id="para_dec19bac-823e-44b1-ba85-3bc875c2010d">Float Pixel Data (7FE0,0008) is sent
        in Native Format; the Value Representation shall be OF, Bits Allocated (0028,0100)
        shall be 32, Bits Stored (0028,0101), High Bit (0028,0102) and Pixel Representation
        (0028,0103) shall not be present.</para>
      <para xml:id="para_c0645d98-0279-4962-b94a-7481a0897cf2">Double Float Pixel Data (7FE0,0009)
        is sent in Native Format; the Value Representation shall be OD, Bits Allocated
        (0028,0100) shall be 64, Bits Stored (0028,0101) and High Bit (0028,0102) and Pixel
        Representation (0028,0103) shall not be present.</para>
</section>
  </section>
         
        <section label="10.1" status="2" xml:id="sect_10.1">
            <title>DICOM Default Transfer Syntax</title>
            <para xml:id="para_dc6ac0ee-3532-4499-bde3-dfebe1d16a41">DICOM defines a default Transfer Syntax, the DICOM Implicit VR Little Endian Transfer Syntax (UID = "1.2.840.10008.1.2 "), which shall be supported by every conformant DICOM Implementation. This implies that:</para>
            <orderedlist numeration="loweralpha">
                <listitem>
                    <para xml:id="para_777f16ff-9d9e-4a63-a207-49d43ba3dce6">If an Application Entity issues an A-ASSOCIATE request, it shall offer the DICOM Implicit VR Little Endian Transfer Syntax in at least one of the Presentation Contexts associated with each offered Abstract Syntax.</para>
                    <note>
                        <para xml:id="para_35326c76-fcbc-4860-99d3-7f68c19372a8">Offering Abstract Syntax (AS1) in two Presentation Contexts with Transfer Syntaxes (TS1) and (TS2) is not valid, but offering AS1-TS1, AS1-TS2 and AS1-TSD is valid because the DICOM Default Little Endian Transfer Syntax (TSD) is present in at least one of the Presentation Contexts that are based on Abstract Syntax (AS1).</para>
                    </note>
                </listitem>
                <listitem>
                    <para xml:id="para_0a87d68b-4ef7-423c-a8e4-8e6930886928">If an Application Entity receives an A-ASSOCIATE indication corresponding to a request that follows the requirements specified in <xref linkend="sect_10.1" xrefstyle="select: label"/> (a), every Presentation Context related to a given Abstract Syntax cannot be rejected in an A-ASSOCIATE response for the reason that none of the Transfer Syntaxes are supported.</para>
                </listitem>
            </orderedlist>
            <para xml:id="para_59fedffa-4f57-4093-846d-3378934ac984">Both of these requirements, (a) and (b), are waived when the Application Entity sending the pixel data has only access to the pixel data in lossy compressed form or the pixel data in a lossless compressed form that is of such length that it cannot be encoded in the default Transfer Syntax, and a Transfer Syntax that uses a pixel data reference is not offered.</para>
            <para xml:id="para_8fd280b8-cc35-4713-a5e9-c6d7d255a4d2">Requirement (b) to accept the default Transfer Syntax is waived if a Transfer Syntax that uses a pixel data reference is offered.</para>
            <note>
                <para xml:id="para_4964d8b2-85f9-4871-946f-6ee9b4bed99d">In other words, every sending AE is required to be able to convert any Data Set it is going to transmit into the default Transfer Syntax, regardless of the form in which it originally received or stored the Data Set, except in the cases of when the decompressed Pixel Data is too large to encode in the default Transfer Syntax or is received in a lossy compressed form.
                    In the case of lossy compressed Pixel Data, the sending AE is permitted to propose only the lossy compressed Transfer Syntax appropriate to the lossy form that was received.
                    In the case of lossless compressed Pixel Data that is too large to encode in the default Transfer Syntax, the sending AE is permitted to propose any appropriate lossless compression Transfer Syntax, not necessarily that in which the image was received, as an alternative to the default Transfer Syntax.</para>
                <para xml:id="para_b0be2e91-ed38-41d7-b1db-92e9b8477086">This waiver does not apply to Data Sets received in a lossless compressed form if the decompressed Pixel Data is small enough to encode in the default Transfer Syntax, which means that any AE receiving a Data Set in a lossless compressed Transfer Syntax that needs to re-send the Data Set is required to be able to decompress it in order to support (at least) the default Transfer Syntax.</para>
            </note>
        </section>
        
        <section label="A.1" status="2" xml:id="sect_A.1">
            <title>DICOM Implicit VR Little Endian Transfer Syntax</title>
            <orderedlist numeration="loweralpha">
                <listitem>
                    <para xml:id="para_3a0b739f-d5cd-4288-b55f-1187e68650a1">...</para>
                </listitem>
                <listitem>
                    <para xml:id="para_0c8bba52-723a-4a3d-ae04-b1b2b6023484">...</para>
                </listitem>
                <listitem>
                    <para xml:id="para_e6778914-baf8-45c2-add4-8332d7d156a1">The encoding of the Data Elements of the Data Set shall be as follows according to their Value Representations:</para>
                    <itemizedlist>
                        <listitem>
                            <para xml:id="para_688311f0-474b-4810-9731-36820df76692">For the Value Representations OB, OL and OW, the encoding shall meet the following specification depending on the Data Element Tag:</para>
                            <itemizedlist>
                                <listitem>
                                    <para xml:id="para_721bde46-66b0-4def-83d6-422e845a8abe">Pixel Data (7FE0,0010) has the Value Representation OW and shall be encoded in Little Endian.</para>
                                    <note>
                                        <orderedlist>
                                            <listitem>
                                                <para xml:id="para_8e5a1a29-830f-4e34-9849-19d37640200b">The OL Value Representation is not used for Pixel Data, even if it has a Bits Allocated (0028,0100) of 32, since OL was added to the standard after the encoding of Pixel Data had been established</para>
                                            </listitem>
                                            <listitem>
                                                <para><emphasis role="bold"><emphasis role="underline">The 32-bit Value Length Field limits the maximum size of the Pixel Data that can be encoded in Implicit VR Little Endian Transfer Syntax, since they are sent in a Native Format.</emphasis></emphasis></para>
                                            </listitem>
                                        </orderedlist>
                                     </note>
                                </listitem>
                            </itemizedlist>
                        </listitem>
                    </itemizedlist>
                </listitem>
            </orderedlist>
        </section>
        
        <section label="A.2" status="2" xml:id="sect_A.2">
            <title>DICOM Little Endian Transfer Syntax (Explicit VR)</title>
            <orderedlist numeration="loweralpha">
                <listitem>
                    <para xml:id="para_95759bc0-eee4-4281-9c18-ef3b7f505c31">...</para>
                </listitem>
                <listitem>
                    <para xml:id="para_6edbe511-2699-436d-8f07-1838569c93e0">...</para>
                </listitem>
                <listitem>
                    <para xml:id="para_c21233b6-94f0-4985-935e-65053906b3c8">The encoding of the Data Elements of the Data Set shall be as follows according to their Value Representations:</para>
                    <itemizedlist>
                        <listitem>
                            <para xml:id="para_466ae3fe-4657-400a-9e7e-611c7f919c02">For the Value Representations OB, OL and OW, the encoding shall meet the following specification depending on the Data Element Tag:</para>
                            <itemizedlist>
                                <listitem>
                                    <para xml:id="para_71b223ac-9494-40f1-b318-092f590fdf9f">Pixel Data (7FE0,0010)</para>
                                    <itemizedlist>
                                        <listitem>
                                            <para xml:id="para_89eea998-24b5-402a-9486-4c9afdb3094a">where Bits Allocated (0028,0100) has a value greater than 8 shall have Value Representation OW and shall be encoded in Little Endian;</para>
                                        </listitem>
                                        <listitem>
                                            <para xml:id="para_ff9fd5bf-1ac3-4481-a118-1852d8035e59">where Bits Allocated (0028,0100) has a value less than or equal to 8 shall have the Value Representation OB or OW and shall be encoded in Little Endian.</para>
                                        </listitem>
                                    </itemizedlist>
                                    <note>
                                        <orderedlist>
                                            <listitem>
                                                <para xml:id="para_b6daae19-f7e3-4a49-b3c0-b45e8b812a99">The OL Value Representation is not used for Pixel Data, even if it has a Bits Allocated (0028,0100) of 32, since OL was added to the standard after the encoding of Pixel Data had been established</para>
                                            </listitem>
                                            <listitem>
                                                <para><emphasis role="bold"><emphasis role="underline">The 32-bit Value Length Field limits the maximum size of the Pixel Data that can be encoded in Little Endian Transfer Syntax (Explicit VR) since they are sent in a Native Format.</emphasis></emphasis></para>
                                            </listitem>
                                        </orderedlist>
                                        
                                    </note>
                                </listitem>
                            </itemizedlist>
                        </listitem>
                    </itemizedlist>
                </listitem>
            </orderedlist>
        </section>


        
        
        
        
        
        
        
       
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
            
            
            
            
            
        
        
        
        
        
      
      


    </chapter>
</book>
