Exact Meaning of 0008,0005 tag - DICOM

This is a discussion on Exact Meaning of 0008,0005 tag - DICOM ; Hi, Can somebody explain me exact meaning of 00080005 tag? Does it specify all possible characters one will encouter in the given file? Do these all character sets an simultaneously exist in value for a single tag? e.g. DICOM tag ...

+ Reply to Thread
Results 1 to 13 of 13

Thread: Exact Meaning of 0008,0005 tag

  1. Exact Meaning of 0008,0005 tag

    Hi,
    Can somebody explain me exact meaning of 00080005 tag?
    Does it specify all possible characters one will encouter in the given
    file?
    Do these all character sets an simultaneously exist in value for a
    single tag?

    e.g. DICOM tag for patient name VR PN is
    00111080.
    and my 00080005 tag is ISO 2022 IR 13/ISOR 2022 IR 100/ISO 2022 IR
    87/ISO 2022 IR 149

    so does this mean my 00111080 tag can have only one character set
    present at time,
    or the tag can have characters in any of the above character set
    simultaneously present and can be identified by escape sequences?

    Regards,
    Omkar


  2. Re: Exact Meaning of 0008,0005 tag

    Hi Omkar,

    omkar.parkhi@gmail.com wrote:
    > Hi,
    > Can somebody explain me exact meaning of 00080005 tag?
    > Does it specify all possible characters one will encouter in the given
    > file?
    > Do these all character sets an simultaneously exist in value for a
    > single tag?


    Right, it specifies all possible character sets.
    I'm not an expert for this kind of questions. But you might get help by
    yourself if you have a look at the pretty good documentation.
    2006 DICOM Standard:
    http://www.dicomwiki.com/wiki/index....DICOM_Standard

    Have a look at Part3 "Information Object Definitions" at page 816 Annex
    C.12.1.1.2

    there you will find something like this:

    If the attribute Specific Character Set (0008,0005) has more than one
    value, Code Extension
    techniques are used and Escape Sequences may be encountered in all
    character sets.
    Requirements for the use of Code Extension techniques are specified in
    PS 3.5.....

    Having a deeper look into PS 3.5 might then also help you understanding
    the complex DICOM structure :-)

    I hope this will help you in continuing your work

    regards Jochen

    >
    > e.g. DICOM tag for patient name VR PN is
    > 00111080.
    > and my 00080005 tag is ISO 2022 IR 13/ISOR 2022 IR 100/ISO 2022 IR
    > 87/ISO 2022 IR 149
    >
    > so does this mean my 00111080 tag can have only one character set
    > present at time,
    > or the tag can have characters in any of the above character set
    > simultaneously present and can be identified by escape sequences?
    >
    > Regards,
    > Omkar



  3. Re: Exact Meaning of 0008,0005 tag


    Jochen wrote:
    > Hi Omkar,
    >
    > omkar.parkhi@gmail.com wrote:
    > > Hi,
    > > Can somebody explain me exact meaning of 00080005 tag?
    > > Does it specify all possible characters one will encouter in the given
    > > file?
    > > Do these all character sets an simultaneously exist in value for a
    > > single tag?

    >
    > Right, it specifies all possible character sets.
    > I'm not an expert for this kind of questions. But you might get help by
    > yourself if you have a look at the pretty good documentation.
    > 2006 DICOM Standard:
    > http://www.dicomwiki.com/wiki/index....DICOM_Standard
    >
    > Have a look at Part3 "Information Object Definitions" at page 816 Annex
    > C.12.1.1.2
    >
    > there you will find something like this:
    >
    > If the attribute Specific Character Set (0008,0005) has more than one
    > value, Code Extension
    > techniques are used and Escape Sequences may be encountered in all
    > character sets.
    > Requirements for the use of Code Extension techniques are specified in
    > PS 3.5.....
    >
    > Having a deeper look into PS 3.5 might then also help you understanding
    > the complex DICOM structure :-)
    >
    > I hope this will help you in continuing your work
    >
    > regards Jochen
    >
    > >
    > > e.g. DICOM tag for patient name VR PN is
    > > 00111080.
    > > and my 00080005 tag is ISO 2022 IR 13/ISOR 2022 IR 100/ISO 2022 IR
    > > 87/ISO 2022 IR 149
    > >
    > > so does this mean my 00111080 tag can have only one character set
    > > present at time,
    > > or the tag can have characters in any of the above character set
    > > simultaneously present and can be identified by escape sequences?
    > >
    > > Regards,
    > > Omkar



    Jochen,
    Thanks for reply,
    But this this case of what use the 00080005 tag would be?
    because I will parse the string for escape sequences and i will get the
    character sets isnt it?
    regards,
    Omkar


  4. Re: Exact Meaning of 0008,0005 tag


    omkar.parkhi@gmail.com wrote:
    > Jochen wrote:
    > > Hi Omkar,
    > >
    > > omkar.parkhi@gmail.com wrote:
    > > > Hi,
    > > > Can somebody explain me exact meaning of 00080005 tag?
    > > > Does it specify all possible characters one will encouter in the given
    > > > file?
    > > > Do these all character sets an simultaneously exist in value for a
    > > > single tag?

    > >
    > > Right, it specifies all possible character sets.
    > > I'm not an expert for this kind of questions. But you might get help by
    > > yourself if you have a look at the pretty good documentation.
    > > 2006 DICOM Standard:
    > > http://www.dicomwiki.com/wiki/index....DICOM_Standard
    > >
    > > Have a look at Part3 "Information Object Definitions" at page 816 Annex
    > > C.12.1.1.2
    > >
    > > there you will find something like this:
    > >
    > > If the attribute Specific Character Set (0008,0005) has more than one
    > > value, Code Extension
    > > techniques are used and Escape Sequences may be encountered in all
    > > character sets.
    > > Requirements for the use of Code Extension techniques are specified in
    > > PS 3.5.....
    > >
    > > Having a deeper look into PS 3.5 might then also help you understanding
    > > the complex DICOM structure :-)
    > >
    > > I hope this will help you in continuing your work
    > >
    > > regards Jochen
    > >
    > > >
    > > > e.g. DICOM tag for patient name VR PN is
    > > > 00111080.
    > > > and my 00080005 tag is ISO 2022 IR 13/ISOR 2022 IR 100/ISO 2022 IR
    > > > 87/ISO 2022 IR 149
    > > >
    > > > so does this mean my 00111080 tag can have only one character set
    > > > present at time,
    > > > or the tag can have characters in any of the above character set
    > > > simultaneously present and can be identified by escape sequences?
    > > >
    > > > Regards,
    > > > Omkar

    >
    >
    > Jochen,
    > Thanks for reply,
    > But this this case of what use the 00080005 tag would be?


    I'm not sure if I understand your question correctly.
    The tag 0008,0005 expands the basic character set for values of Data
    Elements that have Value Representation of SH, LO, ST, PN, LT or UT.
    It is required if an expanded or replacement character set is used.

    > because I will parse the string for escape sequences and i will get the
    > character sets isnt it?


    In your case parsing the 0008,0005 tag will give you the following
    character sets. Simply by splitting the string by the "/" character:
    ISO 2022 IR 13 => Japanese
    ISO 2022 IR 100 => Latin alphabet No. 1
    ISO 2022 IR 87 => again Japanese (JIS X 0208:Kanji)
    ISO 2022 IR 149 => Korean (KS X 1001:Hangul and Hanja)

    I think that it doesn't make sense to copy & paste the whole DICOM
    documentation in here. So please have a look at the specs or ask your
    questions more precise.

    Regards
    Jochen


  5. Re: Exact Meaning of 0008,0005 tag

    Sorry Jochen for the confusing question.
    I am writing one application to store some data in DICOM.
    This application is capable of taking inputs in japanese
    or English/German at a time.
    so in first case my 00080005 tag would be ISO2022 IR 13/ISO 2022 IR 87.
    and in second case it would be ISO_IR 100 if I have read the DICOM
    documents clearly.
    Now my application has to be made compatible to read previously sotred
    files and modify them and save them once again.
    In this case if a file comes with 0008005 tag as ISO_IR 100 then
    this file is containing German and IR 6 part for basic ASCII without
    code extension.
    Now if my application is displaying german+english data. Now if I
    modify say patient name and put Japanese data into it and store. I will
    have to modify 00080005 tag.
    In this case my 00080005 tag will have to be ISO 2022 IR 100/ISO2022 IR
    13/ISO 2022 IR 87. Now my question is the moment I change my 00080005
    tag to ISO 2022 IR 100/ISO2022 IR 13/ISO 2022 IR 87. from ISO_IR 100 ,
    do I need to change old IR 100 data which is in 8 bit to one in 7 bit
    using escape sequences?
    Hope I am clear this time...!
    Omkar


  6. Re: Exact Meaning of 0008,0005 tag


    omkar.parkhi@gmail.com wrote:
    > Sorry Jochen for the confusing question.
    > I am writing one application to store some data in DICOM.
    > This application is capable of taking inputs in japanese
    > or English/German at a time.
    > so in first case my 00080005 tag would be ISO2022 IR 13/ISO 2022 IR 87.
    > and in second case it would be ISO_IR 100 if I have read the DICOM
    > documents clearly.
    > Now my application has to be made compatible to read previously sotred
    > files and modify them and save them once again.
    > In this case if a file comes with 0008005 tag as ISO_IR 100 then
    > this file is containing German and IR 6 part for basic ASCII without
    > code extension.
    > Now if my application is displaying german+english data. Now if I
    > modify say patient name and put Japanese data into it and store. I will
    > have to modify 00080005 tag.


    Hi again,

    > In this case my 00080005 tag will have to be ISO 2022 IR 100/ISO2022 IR
    > 13/ISO 2022 IR 87. Now my question is the moment I change my 00080005
    > tag to ISO 2022 IR 100/ISO2022 IR 13/ISO 2022 IR 87. from ISO_IR 100 ,
    > do I need to change old IR 100 data which is in 8 bit to one in 7 bit
    > using escape sequences?
    > Hope I am clear this time...!
    > Omkar



    thanks for the explanation. I do not have a good answer to that
    question.
    But I'll try to help you with your problem.

    As I read your message I had a deeper look at part 5 of the
    documentation.
    Capter "6.2.1.5.3 Requirements" says the following:

    "If within a textual value a character set other than the one specified
    in value 1 of the Attribute Specific
    Character Set (0008,0005), or the default character repertoire if value
    1 is missing, is used, the Escape
    Sequence of this character set must be inserted explicitly in the
    following instances:
     before the first use of the character set in the line
     before the first use of the character set in the page
     before the first use of the character set in the Data Element value
     before the first use of the character set in the name component and
    name component group in
    Data Element with a VR of PN"

    As far as I understand this paragraph the answer to your question
    should be the following:

    Assuming that the first value of your 0008,0005 tag is IR 100 and the
    name of your patient is a Japanese name, you only have to escape this
    entry.

    So the conclusion of my answer to the question:
    > do I need to change old IR 100 data which is in 8 bit to one in 7 bit
    > using escape sequences?

    will be no. Except for the Japanese one.

    But I'm not the kind of a multilingual expert you might need at this
    point to get a good answer to your question.

    I hope this helps you anyway.

    Regards,

    Jochen


  7. Re: Exact Meaning of 0008,0005 tag

    Thanks Jochen,
    Even I read DICOM again,
    and came to the same conclusion.
    The only thing to look for now is the fact that.
    If my 00080005 tag contains ISO 2022 IR 13\ISO 2022 IR 87 then
    I may tags containing Half width katakana and ASCII (IR 14) data in the
    same string but
    will not be having any escape sequences.
    Isnt it true?
    Regards,
    Omkar


  8. Re: Exact Meaning of 0008,0005 tag

    Hi Omkar

    omkar.parkhi@gmail.com wrote:

    > Does it specify all possible characters one will encounter in the given
    > file?


    Yes, exactly.

    No string that is affected by Specific Character Set (0008,0005)
    can contain characters that are not from one of the character
    sets listed in (0008,0005).

    You are not allowed to use escape sequences that select
    a character set that is not defined in Specific Character
    Set.

    An application should be able to read (0008,0005)
    and know whether or not things are going to work, without
    having to parse every string and see what is there and do
    the best it can with whatever escape sequences it runs
    into. Further, DICOM does not specify a full implementation
    of ISO 2022, but only a subset of escape sequences.

    > Do these all character sets an simultaneously exist in value for a
    > single tag?
    >
    > e.g. DICOM tag for patient name VR PN is
    > 00111080.
    > and my 00080005 tag is ISO 2022 IR 13/ISOR 2022 IR 100/ISO 2022 IR
    > 87/ISO 2022 IR 149


    Note that the delimiter is a backslash '\', not a forward slash '/'.

    > so does this mean my 00111080 tag can have only one character set
    > present at time


    No.

    > or the tag can have characters in any of the above character set
    > simultaneously present and can be identified by escape sequences?


    Yes.

    > Now my application has to be made compatible to read previously stored
    > files and modify them and save them once again.
    > In this case if a file comes with 0008005 tag as ISO_IR 100 then
    > this file is containing German and IR 6 part for basic ASCII without
    > code extension.
    > Now if my application is displaying german+english data. Now if I
    > modify say patient name and put Japanese data into it and store. I will
    > have to modify 00080005 tag.
    > In this case my 00080005 tag will have to be ISO 2022 IR 100/ISO2022 IR
    > 13/ISO 2022 IR 87. Now my question is the moment I change my 00080005
    > tag to ISO 2022 IR 100/ISO2022 IR 13/ISO 2022 IR 87. from ISO_IR 100 ,
    > do I need to change old IR 100 data which is in 8 bit to one in 7 bit
    > using escape sequences?


    If you use ISO 2022 IR 100\ISO2022 IR 13\ISO 2022 IR 87, since
    first value of (0008,0005) is Latin 1, that is what is
    initially active, and so you do not need to add any escape
    sequences to any strings that were already encoded purely
    in Latin-1. From the standard, PS 3.5 6.1.2.5.3 says:

    "The character set specified by value 1 of the Attribute
    Specific Character Set (0008,0005), or the default character
    repertoire if value 1 is missing, shall be active at the
    beginning of each textual Data Element value, and at the
    beginning of each line (i.e., after a CR and/or LF) or
    page (i.e., after an FF)."

    Now, ISO 2022 IR 100 is not 7-bit, as you imply in one of your
    messages ... both the G0 and G1 code elements are invoked
    in GL and GR ... it is just the escape character that is
    handled specially in this case.

    This would all be a lot easier if you just used Unicode and
    UTF-8, by the way.

    I mention this because whilst it is theoretically possible
    to construct arbitrarily complex patterns of (0008,0005)
    values and ISO 2022 escape sequences, within the limitations
    that DICOM allows, the chances of receivers being able
    to handle patterns that they are not expecting is small.

    > If my 00080005 tag contains ISO 2022 IR 13\ISO 2022 IR 87 then
    > I may tags containing Half width katakana and ASCII (IR 14) data in the
    > same string but will not be having any escape sequences.
    > Isnt it true?


    Yes; the use of ISO 2022 IR 13 in (0008,0005) specifies that
    IR 13 is invoked in GR and IR 14 in GL.

    David

    PS. You might find the (somewhat outdated) discussion of this
    character set stuff in Chapter 10 of my DICOM Structured
    Reporting book helpful (it is out of print, but you can
    download it from my web site); I do notice that I mention
    in there that Unicode is not supported as a character set
    in DICOM, something that is no longer true since UTF-8 was
    added.

  9. Re: Exact Meaning of 0008,0005 tag

    Hi David,
    Thanks a Lot,
    The only thing which is an oen question in my mind now is that
    the fact that I have ISO 2022 IR 100 in 00080005 tag and still I am not
    using escape sequences for G0 and G1 areas.
    Is it perfectly fine as per the DICOM?
    Thanks Again.
    Omkar


  10. Re: Exact Meaning of 0008,0005 tag


    Hi David, Thanks a Lot,
    The only thing which is an oen question in my mind now is that
    the fact that I have ISO 2022 IR 100 \ ISO 2022 IR 13 \ ISO 2022 IR 87
    in 00080005 tag and still I am not require to use escape sequences for
    G0 and G1 areas of ISO IR 100.
    Is it perfectly fine as per the DICOM?
    Also DICOM specifies that every line should start and end in 1st
    character set of 00080005. Now if I have 00080005 tag as mentioned
    above. Every string should start and end in ISO IR 6.

    But if I have 00080005 as ISO 2022 IR 13 \ ISO 2022 IR 87 then my
    string should start and end in ISO IR 14 which is envoked in G0. Is my
    understanding correct?
    Thanks Again.
    Omkar


  11. Re: Exact Meaning of 0008,0005 tag

    Yes, that sounds correct.

    It sounds like you are creating some interesting permutations
    and combinations of Specific Character Set; it would be nice
    if you could make some test images available when you are
    finished to put on the NEMA server or elsewhere, so that we
    can see if they work with other implementations.

    David

    omkar.parkhi@gmail.com wrote:
    > Hi David, Thanks a Lot,
    > The only thing which is an oen question in my mind now is that
    > the fact that I have ISO 2022 IR 100 \ ISO 2022 IR 13 \ ISO 2022 IR 87
    > in 00080005 tag and still I am not require to use escape sequences for
    > G0 and G1 areas of ISO IR 100.
    > Is it perfectly fine as per the DICOM?
    > Also DICOM specifies that every line should start and end in 1st
    > character set of 00080005. Now if I have 00080005 tag as mentioned
    > above. Every string should start and end in ISO IR 6.
    >
    > But if I have 00080005 as ISO 2022 IR 13 \ ISO 2022 IR 87 then my
    > string should start and end in ISO IR 14 which is envoked in G0. Is my
    > understanding correct?
    > Thanks Again.
    > Omkar
    >


  12. Re: Exact Meaning of 0008,0005 tag

    Sure Why not..!
    Thanks a lot all of you for your valuable contribution.
    David, i have downloaded your book.....!
    Will be reading it today.
    Is there any other way by which I can communicate to you than this
    mailing list?
    That will be easier for me to keep in touch...!
    Thanks Again,
    Regards,
    Omkar


  13. Re: Exact Meaning of 0008,0005 tag

    Hi David,
    I have read the chapter no 10 from your book.
    I was of great help.
    Now I have few more doubts .
    If I have 00080005 tag as ISO 2022 IR 100\ISO 2022 IR 87,
    At the start of every string G0 and G1 will be invoked with IR 6 and IR
    100
    respectively. Somewhere down the line I invoke IR 87 in G0 area.
    What happens to G1 area then? Is IR 100 still active there?
    or since in 87 since G1 is undefined IR 100 will not be active over
    there?
    Similar case would be for ISO IR 149 and G0 area.

    Now if I have 00080005 tag as ISO 2022 IR 100\ISO 2022 IR 87\ISO IR
    149
    String starts with 100 then I invoke 87 in G0 and 149 in G1
    will I be able to use japanese and korean data simultaneously without
    escape sequences after that?

    Also as you have metioned in your book that according to DICOM after
    every seperator initial states are reinvoked. Does this mean both G0
    and G1 return to initial states?
    suppose I I have 00080005 tag as ISO 2022 IR 100\ISO 2022 IR 87, I
    have invoked 87 in G0 then I have some japanese data after which I have
    a caret "^" to represent this caret I have to use escape sequece of IR
    6. After this caret IR 6 will be active in G0 and IR 100 will be active
    in G1. Is my understanding correct?

    Thanks
    Omkar


+ Reply to Thread