Filling Out the Image Compression Parameters Class
The Image_Compression_Parameters class contains attributes describing onboard compression parameters used for data storage and transmission.
The first three attributes below are part of a choice list where each element has minOccurs=0. (Problem with LDDTool?) |
Contents
- 1 <compression_mode_id>
- 2 <compression_mode_name>
- 3 <compression_type>
- 4 <compressor_id>
- 5 <compression_parameter>
- 6 <compression_quality>
- 7 <compression_rate>
- 8 <compression_ratio>
- 9 <block_count>
- 10 <block_size_x>
- 11 <block_size_y>
- 12 <color_mode>
- 13 <decomposition_stages>
- 14 <quantization_table_id>
- 15 <quantization_table_id_ac>
- 16 <quantization_table_id_dc>
- 17 <quantization_type>
- 18 <segment_count>
- 19 <Image_Compression_Segment>
<compression_mode_id>
OPTIONAL
This is defined as an integer, with is not consistent with the usual use of "mode". |
<compression_mode_name>
OPTIONAL
There is no standard value list for this attribute. |
<compression_type>
OPTIONAL
There is no standard value list for this attribute. |
<compressor_id>
OPTIONAL
There is no standard value list for this attribute. |
<compression_parameter>
OPTIONAL
The definition of this attribute actually says it is specific to JPEG. If this is true, the attribute name really should indicate that. If it's not true, the definition needs re-writing. |
<compression_quality>
OPTIONAL
The definition of this attribute actually says it is specific to JPEG. If this is true, the attribute name really should indicate that. If it's not true, the definition needs re-writing. This is also defined as an integer without any indication of whether a larger integer is higher or lower quality. |
<compression_rate>
OPTIONAL
<compression_ratio>
OPTIONAL
<block_count>
OPTIONAL
How are this and the related values attributes of the image object? |
<block_size_x>
OPTIONAL
<block_size_y>
OPTIONAL
<color_mode>
OPTIONAL
There is a null rule in the Schematron for this context, but no standard values defined. |
<decomposition_stages>
OPTIONAL
This attribute seems to assume wavelet decomposition. Is that the only type of compression, or the only type of compression for which the term "decomposition" is ever used (or will ever be used)? |
<quantization_table_id>
OPTIONAL
Given the definition of this attribute, it does not seem to comply with PDS4 IM design principles. It is neither explicit nor does is it sufficient in itself to provide the linking detailed in its definition. |
<quantization_table_id_ac>
OPTIONAL
This seems to have a much more specific relevance than the name implies (relevant only to specific compression types), and has the same referential issues as <quantization_table_id>. |
<quantization_table_id_dc>
OPTIONAL
This seems to have a much more specific relevance than the name implies (relevant only to specific compression types), and has the same referential issues as <quantization_table_id>. |
<quantization_type>
OPTIONAL
There are no standard values define for this attribute. |
<segment_count>
OPTIONAL
<Image_Compression_Segment>
OPTIONAL
Seems like <segment_count> should be required if at least one occurence of this class is present. |
<segment_number>
REQUIRED
<first_line>
REQUIRED
This attribute is allowed to be zero or negative. |
<first_sample>
REQUIRED
This attribute is allowed to be zero or negative. |
<lines>
REQUIRED
This value is allowed to be zero. |
<samples>
REQUIRED
This value is allowed to be zero. |
<segment_quality>
OPTIONAL
This attribute appears to only be relevant to specific compression methods, though the name implies otherwise. There is no indication of whether this value can be negative, or zero, or whether a higher number corresponds to higher or lower quality. |
<segment_status>
OPTIONAL
This is actually defined as a "bit mask", which is not consistent with the definition of "status". There is also no indication in the definition of byte-order, even though this value is not constrained to be 8 digits or less in length. Neither is there any indication of whether the mask must be a multiple of 8 digits, or how to apply masks that are not multiple of 8 digits. |
<missing_constant>
OPTIONAL
The definition refers to a missing "value", but in the context of this class there is nothing that corresponds to a single "value". |