Subject: Suggestions for draft-ietf-fax-tiff-fx-Extension-1-02.txt

From: "Terry Stewart" <[email-masked]>
Date: Mon, 30 Jul 2001 19:44:1 -0700

Hi All,
 
  Below are 
suggestions for draft-ietf-fax-tiff-fx-Extension-1-02.txt.
 
Terry 
Stewart
 
================================================================================
 
E1.2.1.3. 
New Fields, GlobalParametersIFD Field:
 
The current wording 
regarding the GlobalParametersIFD contains the 
sentence:
 
   "Required baseline fields should not be 
located in the 
    GlobalParametersIFD, but should be in each 
image IFD."
 
The "should" in this sentence appears to be a 
suggestion only and a TIFF 
writer could place required baseline fields in 
the GlobalParametersIFD
and still be considered a valid TIFF-FX file.  
This means that TIFF-FX 
readers would need to handle the cases where TIFF-FX 
writers decided to 
ignore the suggestion and place required fields into the 
GlobalParametersIFD.
 
It is my understanding that the 
GlobalParametersIFD should never contain
fields that would directly affect 
the rendered image (e.g. Photometric 
Interpretation, ImageWidth).  
Therefore, it would be better to enforce
this by declaring that the 
GlobalParametersIFD must not contain required 
baseline 
fields.
 
   "Required baseline fields MUST NOT be located 
in the 
    GlobalParametersIFD, but should be in each image 
IFD."
 
This would remove ambiguity about the intended use of the 
GlobalParametersIFD
and reduce the complexity of TIFF readers.  
Otherwise a tolerant TIFF reader 
would have to treat the GlobalParametersIFD 
as a type defaulting mechanism for
required baseline TIFF fields since the 
GlobalParametersIFD would need to
be checked when IFDs are missing required 
baseline 
fields.
 
================================================================================
 
The 
definition for NewSubFileType in Section 8.2.1 is:

NewSubFileType(254) = 16, 
18.                                       
LONG
      For Profile M, the NewSubFileType field 
has two bits that are
      required.  Bit 1 
indicates a single page of a multi-page 
document
      and must be set for the Primary IFD; 
Bit 4 indicates the MRC imaging
      model as 
described in ITU-T Recommendation T.44 [T.44], and must 
be
      set for Primary IFDs and all MRC-specific 
child IFDs.
 
This definition allows Bit 1 to be on for MRC-specific 
child IFDs. I believe 
the description in Section 8.4 "Rules and Requirements 
for Images" clarifies
that the child IFDs must not set bit 1 on, but it would 
be clearer if
the definition of NewSubFileType mentioned this as 
well:
 
 NewSubFileType(254) = 16, 
18.                                       
LONG
      For Profile M, the NewSubFileType field 
has two bits that are
      required.  Bit 1 
indicates a single page of a multi-page 
document
      and must be set for the Primary IFD 
and MUST NOT be set for 
      MRC-specific child 
IFDs; Bit 4 indicates the MRC imaging
      model as 
described in ITU-T Recommendation T.44 [T.44], and must 
be
      set for Primary IFDs and all MRC-specific 
child 
IFDs.
 
================================================================================
E1.4.5. 
Rules and Requirements for Images
 
The current description of 
multi-stripped IFDs for non-Primary IFDs is 
currently described as 
follows:
 
   8. In MRC Internet Fax, each layer is 
transmitted as a sequence 
of
             
:
      single Primary IFD as a series of 
corresponding strips. Without 
      constraint on 
coding parameter changes, all stripes of the 
      
foreground/Background/secondary mask layers SHALL be stored in 

      separate single-stripped IFDs. These IFDs are 
referenced by the 

:
  10. When there are no image and coding parameter changes between 

      stripes, a single multi-stripped IFD (i.e. 
each strip 
      corresponding to a stripe) MAY be 
used to represent a multi-
      striped layer that! 
is not a Primary Mask layer.
 
The phrase "Without constraint on 
coding parameters changes" in item 8
wasn't very clear to me.  Recommend 
clarifying this area of 8 with the
following:
 
  8. In MRC 
Internet Fax, each layer is transmitted as a sequence 
of
          
:
      single Primary IFD as a series of 
corresponding strips. When
      the image or coding 
parameters change between stripes in the 
      
foreground/Background/secondary mask layers these stripes SHALL 

      be stored in separate single-stripped IFDs. 
These IFDs are 
      referenced by the 
...
 
================================================================================
Typos:
 
E1.4.1 
Introduction, last paragraph:  
 
   "in-dept" should 
be 
"in-depth"
================================================================================

---

From: "McIntyre, Lloyd" <[email-masked]>
Date: Tue, 31 Jul 2001 14:18:23 -0700

Terry,
Thanks for your review and comments.

1. E1.2.1.3. New Fields, GlobalParametersIFD
We do not believe there is much ambiguity as to which fields a reader needs
to look for within the GlobalParametersIFD. 
First, the GlobalParametersIFD definition further restricts the fields by
stating that the legal set is listed within TIFF-FX or a TIFF-FX extension.
"Fields in the GlobalParametersIFD MAY be TIFF fields that are legal
 in any IFD. Only a limited number of fields are designated as
 belonging inside the GPIFD, and they are specifically mentioned by
 RFC XXXX or an extension when they do."

Second, the "SHOULD" recommendation is considered very strong with potential
interoperability consequences if ignored. It does, however, leave the door
open for other actions should a compelling situation arise. The SharedData
field is one example of a field that is required for proper interpretation
of a data stream, yet it is located within the GlobalParametersIFD. If the
TIFF-FX GlobalParametersIFD constraint were MUST rather than SHOULD, the
TIFF-FX extension would not have been able to include SharedData.

2. TIFF-FX Section 8.2.1  NewSubFileType fields 
The NewSubFileType field definition appears to be clear enough, as each
SubIFD is NOT a page, so Bit 1 doesn't make sense on a SubIFD.  A reader
could ignore that bit if it appeared on a SubIFD, without changing the
meaning of anything.  As you have pointed out, the Section 8.4 rules do
clarify this further.

3. E1.4.5 Rules and Requirements for Images
We agree with your clarification recommendations. The 5th sentence of Rule 8
has being change to read: 
"When the image or coding parameters change between stripes in the 
 foreground/Background/secondary mask layers these stripes SHALL 
 be stored in separate single-stripped IFDs."

4. E1.4.1 typos
Done.

Regards,
Lloyd

-----Original Message-----
From: Terry Stewart [mailto:[email-masked]]
Sent: Monday, July 30, 2001 1:00 AM
To: [email-masked]
Subject: Suggestions for draft-ietf-fax-tiff-fx-Extension-1-02.txt

Hi All,
 
  Below are suggestions for draft-ietf-fax-tiff-fx-Extension-1-02.txt.
 
Terry Stewart
 
============================================================================
====
 
E1.2.1.3. New Fields, GlobalParametersIFD Field:
 
The current wording regarding the GlobalParametersIFD contains the sentence:
 
   "Required baseline fields should not be located in the 
    GlobalParametersIFD, but should be in each image IFD."
 
The "should" in this sentence appears to be a suggestion only and a TIFF 
writer could place required baseline fields in the GlobalParametersIFD
and still be considered a valid TIFF-FX file.  This means that TIFF-FX 
readers would need to handle the cases where TIFF-FX writers decided to 
ignore the suggestion and place required fields into the
GlobalParametersIFD.
 
It is ! my! understanding that the GlobalParametersIFD should never contain
fields that would directly affect the rendered image (e.g. Photometric 
Interpretation, ImageWidth).  Therefore, it would be better to enforce
this by declaring that the GlobalParametersIFD must not contain required 
baseline fields.
 
   "Required baseline fields MUST NOT be located in the 
    GlobalParametersIFD, but should be in each image IFD."
 
This would remove ambiguity about the intended use of the
GlobalParametersIFD
and reduce the complexity of TIFF readers.  Otherwise a tolerant TIFF reader

would have to treat the GlobalParametersIFD as a type defaulting mechanism
for
required baseline TIFF fields since the GlobalParametersIFD would need to
be checked when IFDs are missing required baseline fields.
 
============================================================================
====
 
The definit! io! n for NewSubFileType in Section 8.2.1 is:
 
   NewSubFileType(254) = 16, 18.                                       LONG
      For Profile M, the NewSubFileType field has two bits that are
      required.  Bit 1 indicates a single page of a multi-page document
      and must be set for the Primary IFD; Bit 4 indicates the MRC imaging
      model as described in ITU-T Recommendation T.44 [T.44], and must be
      set for Primary IFDs and all MRC-specific child IFDs.
 
This definition allows Bit 1 to be on for MRC-specific child IFDs. I believe

the description in Section 8.4 "Rules and Requirements for Images" cla! ri!
fies
that the child IFDs must not set bit 1 on, but it would be clearer if
the definition of NewSubFileType mentioned this as well:
 
 NewSubFileType(254) = 16, 18.                                       LONG
      For Profile M, the NewSubFileType field has two bits that are
      required.  Bit 1 indicates a single page of a multi-page document
      and must be set for the Primary IFD and MUST NOT be set for 
      MRC-specific child IFDs; Bit 4 indicates the MRC imaging
      model as described in ITU-T Recommendation T.44 [T.44], and must be
      set for Primary IFDs and all MRC-specific chil! d ! IFDs.
 
============================================================================
====
E1.4.5. Rules and Requirements for Images
 
The current description of multi-stripped IFDs for non-Primary IFDs is 
currently described as follows:
 
   8. In MRC Internet Fax, each layer is transmitted as a sequence of
             :
      single Primary IFD as a series of corresponding strips. Without 
      constraint on coding parameter changes, all stripes of the 
      foreground/Background/secondary mask layers SHALL be stored in 
      separate single-stripped IFDs. These IFDs are referenced by the 
 
              :
  10. When there are no image and coding parameter changes be! tw! een 
      stripes, a single multi-stripped IFD (i.e. each strip 
      corresponding to a stripe) MAY be used to represent a multi-
      striped layer that! is not a Primary Mask layer.
 
The phrase "Without constraint on coding parameters changes" in item 8
wasn't very clear to me.  Recommend clarifying this area of 8 with the
following:
 
  8. In MRC Internet Fax, each layer is transmitted as a sequence of
          :
      single Primary IFD as a series of corresponding strips. When
      the image or coding parameters change between stripes in the 
      foreground/Background/secondary mask layers these stripes SHALL 
      be stored in separate single-stripped IFDs. These IFDs are 
 ! &n! bsp;    referenced by the ...
 
============================================================================
====
Typos:
 
E1.4.1 Introduction, last paragraph:  
 
   "in-dept" should be "in-depth"
============================================================================
====