]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/server/dist/share/gdal/nitf_spec.xml
Adding pkg-precompiled tileserver-mapnik to avoid npm install
[simantics/district.git] / org.simantics.maps.server / server / dist / share / gdal / nitf_spec.xml
1 <?xml version="1.0"?>
2 <!--
3 /******************************************************************************
4  * $Id: nitf_spec.xml 32488 2015-12-27 08:29:13Z rouault $
5  *
6  * Project:  NITF Library
7  * Purpose:  Description of NITF TREs
8  * Author:   Even Rouault, <even dot rouault at mines dash paris dot org>
9  *
10  **********************************************************************
11  * Copyright (c) 2011, Even Rouault
12  *
13  * Permission is hereby granted, free of charge, to any person obtaining a
14  * copy of this software and associated documentation files (the "Software"),
15  * to deal in the Software without restriction, including without limitation
16  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
17  * and/or sell copies of the Software, and to permit persons to whom the
18  * Software is furnished to do so, subject to the following conditions:
19  *
20  * The above copyright notice and this permission notice shall be included
21  * in all copies or substantial portions of the Software.
22  *
23  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
24  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
26  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
28  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
29  * DEALINGS IN THE SOFTWARE.
30  ****************************************************************************/
31 -->
32
33 <!-- This file should validate against nitf_spec.xsd -->
34
35 <tres>
36
37     <tre name="ACCPOB" minlength="17" maxlength="99985" location="image">
38         <field name="NUM_ACPO" length="2" type="integer" minval="1" maxval="99"/>
39         <loop counter="NUM_ACPO" md_prefix="ACCPO_%02d_" name="ACCPO">
40             <field name="UNIAAH" length="3" type="string"/>
41             <if cond="UNIAAH!=">
42                 <field name="AAH" length="5" type="integer"/>
43             </if>
44             <field name="UNIAAV" length="3" type="string"/>
45             <if cond="UNIAAV!=">
46                 <field name="AAV" length="5" type="integer"/>
47             </if>
48             <field name="UNIAPH" length="3" type="string"/>
49             <if cond="UNIAPH!=">
50                 <field name="APH" length="5" type="integer"/>
51             </if>
52             <field name="UNIAPV" length="3" type="string"/>
53             <if cond="UNIAPV!=">
54                 <field name="APV" length="5" type="integer"/>
55             </if>
56             <field name="NUM_PTS" length="3" type="integer"/>
57             <loop counter="NUM_PTS" md_prefix="POINT_%03d_" name="POINT">
58                 <field name="LON" length="15" type="real"/>
59                 <field name="LAT" length="15" type="real"/>
60             </loop>
61         </loop>
62     </tre>
63
64     <tre name="ACFTB" length="207" location="image">
65         <field name="AC_MSN_ID" length="20"/>
66         <field name="AC_TAIL_NO" length="10"/>
67         <field name="AC_TO" length="12"/>
68         <field name="SENSOR_ID_TYPE" length="4"/>
69         <field name="SENSOR_ID" length="6"/>
70         <field name="SCENE_SOURCE" length="1"/>
71         <field name="SCNUM" length="6"/>
72         <field name="PDATE" length="8"/>
73         <field name="IMHOSTNO" length="6"/>
74         <field name="IMREQID" length="5"/>
75         <field name="MPLAN" length="3"/>
76         <field name="ENTLOC" length="25"/>
77         <field name="LOC_ACCY" length="6"/>
78         <field name="ENTELV" length="6"/>
79         <field name="ELV_UNIT" length="1"/>
80         <field name="EXITLOC" length="25"/>
81         <field name="EXITELV" length="6"/>
82         <field name="TMAP" length="7"/>
83         <field name="ROW_SPACING" length="7"/>
84         <field name="ROW_SPACING_UNITS" length="1"/>
85         <field name="COL_SPACING" length="7"/>
86         <field name="COL_SPACING_UNITS" length="1"/>
87         <field name="FOCAL_LENGTH" length="6"/>
88         <field name="SENSERIAL" length="6"/>
89         <field name="ABSWVER" length="7"/>
90         <field name="CAL_DATE" length="8"/>
91         <field name="PATCH_TOT" length="4"/>
92         <field name="MTI_TOT" length="3"/>
93     </tre>
94
95     <tre name="AIMIDB" length="89" location="image">
96         <field name="ACQUISITION_DATE" length="14"/>
97         <field name="MISSION_NO" length="4"/>
98         <field name="MISSION_IDENTIFICATION" length="10"/>
99         <field name="FLIGHT_NO" length="2"/>
100         <field name="OP_NUM" length="3"/>
101         <field name="CURRENT_SEGMENT" length="2"/>
102         <field name="REPRO_NUM" length="2"/>
103         <field name="REPLAY" length="3"/>
104         <field name="RESERVED_1" length="1"/>
105         <field name="START_TILE_COLUMN" length="3"/>
106         <field name="START_TILE_ROW" length="5"/>
107         <field name="END_SEGMENT" length="2"/>
108         <field name="END_TILE_COLUMN" length="3"/>
109         <field name="END_TILE_ROW" length="5"/>
110         <field name="COUNTRY" length="2"/>
111         <field name="RESERVED_2" length="4"/>
112         <field name="LOCATION" length="11"/>
113         <field name="RESERVED_3" length="13"/>
114     </tre>
115
116     <tre name="BLOCKA" length="123" location="image">
117         <field name="BLOCK_INSTANCE" length="2" type="integer" minval="1" maxval="99"/>
118         <field name="N_GRAY" length="5" type="integer" minval="0" maxval="99999"/>
119         <field name="L_LINES" length="5" type="integer" minval="1" maxval="99999"/>
120         <field name="LAYOVER_ANGLE" length="3" type="integer" minval="0" maxval="359" unit="degrees"/>
121         <field name="SHADOW_ANGLE" length="3" type="integer" minval="0" maxval="359" unit="degrees"/>
122         <field length="16"/>
123         <field name="FRLC_LOC" length="21"/>
124         <field name="LRLC_LOC" length="21"/>
125         <field name="LRFC_LOC" length="21"/>
126         <field name="FRFC_LOC" length="21"/>
127         <field length="5"/>
128     </tre>
129
130     <tre name="BNDPLB" minlength="124" maxlength="99964" location="image">
131         <field name="NUM_PTS" length="4" type="integer" minval="4" maxval="3332"/>
132         <loop counter="NUM_PTS" md_prefix="POINT_%04d_" name="POINT">
133             <field name="LON" length="15" type="real"/>
134             <field name="LAT" length="15" type="real"/>
135         </loop>
136     </tre>
137
138     <tre name="CSDIDA" md_prefix="NITF_CSDIDA_" length="70" location="file">
139         <field name="DAY" length="2"/>
140         <field name="MONTH" length="3"/>
141         <field name="YEAR" length="4"/>
142         <field name="PLATFORM_CODE" length="2"/>
143         <field name="VEHICLE_ID" length="2"/>
144         <field name="PASS" length="2"/>
145         <field name="OPERATION" length="3"/>
146         <field name="SENSOR_ID" length="2"/>
147         <field name="PRODUCT_ID" length="2"/>
148         <field name="RESERVED_0" length="4"/>
149         <field name="TIME" length="14"/>
150         <field name="PROCESS_TIME" length="14"/>
151         <field name="RESERVED_1" length="2"/>
152         <field name="RESERVED_2" length="2"/>
153         <field name="RESERVED_3" length="1"/>
154         <field name="RESERVED_4" length="1"/>
155         <field name="SOFTWARE_VERSION_NUMBER" length="10"/>
156     </tre>
157
158     <tre name="CSEPHA" minlength="257" maxlength="36005" location="des">
159         <field name="EPHEM_FLAG" length="12"/>
160         <field name="DT_EPHEM" length="5"/>
161         <field name="DATE_EPHEM" length="8"/>
162         <field name="T0_EPHEM" length="13"/>
163         <field name="NUM_EPHEM" length="3"/>
164         <loop counter="NUM_EPHEM" md_prefix="EPHEM_%03d_" name="EPHEM">
165             <field name="X" longname="EPHEM_X" length="12"/>
166             <field name="Y" longname="EPHEM_Y" length="12"/>
167             <field name="Z" longname="EPHEM_Z" length="12"/>
168         </loop>
169     </tre>
170
171     <tre name="CSCCGA" length="60" location="file">
172         <field name="CCG_SOURCE" length="18"/>
173         <field name="REG_SENSOR" length="6"/>
174         <field name="ORIGIN_LINE" length="7"/>
175         <field name="ORIGIN_SAMPLE" length="5"/>
176         <field name="AS_CELL_SIZE" length="7"/>
177         <field name="CS_CELL_SIZE" length="5"/>
178         <field name="CCG_MAX_LINE" length="7"/>
179         <field name="CCG_MAX_SAMPLE" length="5"/>
180     </tre>
181
182     <tre name="CSCRNA" length="109" location="image">
183         <field name="PREDICT_CORNERS" length="1"/>
184         <field name="ULCNR_LAT" length="9"/>
185         <field name="ULCNR_LONG" length="10"/>
186         <field name="ULCNR_HT" length="8"/>
187         <field name="URCNR_LAT" length="9"/>
188         <field name="URCNR_LONG" length="10"/>
189         <field name="URCNR_HT" length="8"/>
190         <field name="LRCNR_LAT" length="9"/>
191         <field name="LRCNR_LONG" length="10"/>
192         <field name="LRCNR_HT" length="8"/>
193         <field name="LLCNR_LAT" length="9"/>
194         <field name="LLCNR_LONG" length="10"/>
195         <field name="LLCNR_HT" length="8"/>
196     </tre>
197
198     <tre name="CSEXRA" md_prefix="NITF_CSEXRA_" length="132" location="image">
199         <field name="SENSOR" length="6"/>
200         <field name="TIME_FIRST_LINE_IMAGE" length="12"/>
201         <field name="TIME_IMAGE_DURATION" length="12"/>
202         <field name="MAX_GSD" length="5"/>
203         <field name="ALONG_SCAN_GSD" length="5"/>
204         <field name="CROSS_SCAN_GSD" length="5"/>
205         <field name="GEO_MEAN_GSD" length="5"/>
206         <field name="A_S_VERT_GSD" length="5"/>
207         <field name="C_S_VERT_GSD" length="5"/>
208         <field name="GEO_MEAN_VERT_GSD" length="5"/>
209         <field name="GSD_BETA_ANGLE" length="5"/>
210         <field name="DYNAMIC_RANGE" length="5"/>
211         <field name="NUM_LINES" length="7"/>
212         <field name="NUM_SAMPLES" length="5"/>
213         <field name="ANGLE_TO_NORTH" length="7"/>
214         <field name="OBLIQUITY_ANGLE" length="6"/>
215         <field name="AZ_OF_OBLIQUITY" length="7"/>
216         <field name="GRD_COVER" length="1"/>
217         <field name="SNOW_DEPTH_CAT" length="1"/>
218         <field name="SUN_AZIMUTH" length="7"/>
219         <field name="SUN_ELEVATION" length="7"/>
220         <field name="PREDICTED_NIIRS" length="3"/>
221         <field name="CIRCL_ERR" length="3"/>
222         <field name="LINEAR_ERR" length="3"/>
223     </tre>
224
225     <tre name="CSPROA" length="120" location="image">
226         <field length="12"/>
227         <field length="12"/>
228         <field length="12"/>
229         <field length="12"/>
230         <field length="12"/>
231         <field length="12"/>
232         <field length="12"/>
233         <field length="12"/>
234         <field length="12"/>
235         <field name="BWC" length="12"/>
236     </tre>
237
238     <tre name="CSSFAA" minlength="107" maxlength="425" location="image">
239         <field name="NUM_BANDS" length="1"/>
240         <loop counter="NUM_BANDS" md_prefix="BAND_%d_" name="BAND">
241             <field name="BAND_TYPE" length="1"/>
242             <field name="BAND_ID" length="6"/>
243             <field name="FOC_LENGTH" length="11"/>
244             <field name="NUM_DAP" length="8"/>
245             <field name="NUM_FIR" length="8"/>
246             <field name="DELTA" length="7"/>
247             <field name="OPPOFF_X" length="7"/>
248             <field name="OPPOFF_Y" length="7"/>
249             <field name="OPPOFF_Z" length="7"/>
250             <field name="START_X" length="11"/>
251             <field name="START_Y" length="11"/>
252             <field name="FINISH_X" length="11"/>
253             <field name="FINISH_Y" length="11"/>
254         </loop>
255     </tre>
256
257     <!-- STDI-0002 Appendix N -->
258     <tre name="ENGRDA">
259         <field name="RESRC" length="20" type="string"/>
260         <field name="RECNT" length="3" type="integer" minval="1"/>
261         <loop counter="RECNT" md_prefix="RECORD_%d_" name="RECORDS">
262             <field name="ENGLN" length="2" type="integer" minval="1"/>
263             <field name="ENGLBL" length_var="ENGLN" type="string"/>
264             <field name="ENGMTXC" length="4" type="integer" minval="1"/>
265             <field name="ENGMTXR" length="4" type="integer" minval="1"/>
266             <field name="ENGTYP" length="1" type="string"/>
267             <field name="ENGDTS" length="1" type="integer"/>
268             <field name="ENGDTU" length="2" type="string"/>
269             <field name="ENGDATC" length="8" type="integer" minval="1" maxval="99999932"/>
270             <field name="ENGDATA" length_var="ENGDATC"/>
271         </loop>
272     </tre>
273
274     <!-- STDI-0002 Appendix E (ASDE 2.1/CN1), Table E-12 -->
275     <tre name="EXPLTB" length="101" location="image">
276         <field name="ANGLE_TO_NORTH" length="7" type="real" minval="0.0" maxval="359.999"/>
277         <field name="ANGLE_TO_NORTH_ACCY" length="6" type="real" min="0.0" maxval="44.999"/>
278         <field name="SQUINT_ANGLE" length="7" type="real" min="-60.0" maxval="85.0"/>
279         <field name="SQUINT_ANGLE_ACCY" length="6" type="real" min="0.0" maxval="44.999"/>
280         <field name="MODE" length="3" type="string"/>
281         <field length="16" fixed_value="                "/>
282         <field name="GRAZE_ANG" length="5" type="real" unit="degrees" minval="0.0" maxval="90.00"/>
283         <field name="GRAZE_ANG_ACCY" length="5" type="real" unit="degrees" minval="0.0" maxval="90.00"/>
284         <field name="SLOPE_ANG" length="5" type="real" unit="degrees" minval="0.0" maxval="90.00"/>
285         <field name="POLAR" length="2" type="string"/>
286         <field name="NSAMP" length="5" type="integer" minval="1" maxval="99999"/>
287         <field length="1" fixed_value="0"/>
288         <!-- SEQ_NUM is a string because it is <R>, so it may contain a space -->
289         <field name="SEQ_NUM" length="1" type="string"/>
290         <field name="PRIME_ID" length="12" type="string"/>
291         <field name="PRIME_BE" length="15" type="string"/>
292         <field length="1" fixed_value="0"/>
293         <field name="N_SEC" length="2" type="integer" minval="0" maxval="99"/>
294         <field name="IPR" length="2" type="integer" unit="feet" minval="0" maxval="99"/>
295     </tre>
296
297     <tre name="GEOLOB" length="48" location="image">
298         <field name="ARV" length="9" type="real"/>
299         <field name="BRV" length="9" type="real"/>
300         <field name="LSO" length="15" type="real"/>
301         <field name="PSO" length="15" type="real"/>
302     </tre>
303
304     <tre name="GEOPSB" length="443" location="file">
305         <field name="TYP" length="3" type="string"/>
306         <field name="UNI" length="3" type="string"/>
307         <field name="DAG" length="80" type="string"/>
308         <field name="DCD" length="4" type="string"/>
309         <field name="ELL" length="80" type="string"/>
310         <field name="ELC" length="3" type="string"/>
311         <field name="DVR" length="80" type="string"/>
312         <field name="VDCDVR" length="4" type="string"/>
313         <field name="SDA" length="80" type="string"/>
314         <field name="VDCSDA" length="4" type="string"/>
315         <field name="ZOR" length="15" type="integer" minval="0"/>
316         <field name="GRD" length="3" type="string"/>
317         <field name="GRN" length="80" type="string"/>
318         <field name="ZNA" length="4" type="integer" minval="0"/>
319     </tre>
320
321     <tre name="HISTOA" minlength="115" maxlength="83512" location="image">
322         <field name="SYSTYPE" length="20"/>
323         <field name="PC" length="12"/>
324         <field name="PE" length="4"/>
325         <field name="REMAP_FLAG" length="1"/>
326         <field name="LUTID" length="2"/>
327         <field name="NEVENTS" length="2"/>
328         <loop counter="NEVENTS" md_prefix="EVENT_%02d_" name="EVENT">
329             <field name="PDATE" length="14"/>
330             <field name="PSITE" length="10"/>
331             <field name="PAS" length="10"/>
332             <field name="NIPCOM" length="1"/>
333             <loop counter="NIPCOM" md_prefix="IPCOM_%d" name="IPCOM">
334                 <field name="" longname="IPCOM" length="80"/>
335             </loop>
336             <field name="IBPP" length="2"/>
337             <field name="IPVTYPE" length="3"/>
338             <field name="INBWC" length="10"/>
339             <field name="DISP_FLAG" length="1"/>
340             <field name="ROT_FLAG" length="1"/>
341             <if cond="ROT_FLAG=1">
342                 <field name="ROT_ANGLE" length="8"/>
343             </if>
344             <field name="ASYM_FLAG" length="1"/>
345             <if cond="ASYM_FLAG=1">
346                 <field name="ZOOMROW" length="7"/>
347                 <field name="ZOOMCOL" length="7"/>
348             </if>
349             <field name="PROJ_FLAG" length="1"/>
350             <field name="SHARP_FLAG" length="1"/>
351             <if cond="SHARP_FLAG=1">
352                 <field name="SHARPFAM" length="2"/>
353                 <field name="SHARPMEM" length="2"/>
354             </if>
355             <field name="MAG_FLAG" length="1"/>
356             <if cond="MAG_FLAG=1">
357                 <field name="MAG_LEVEL" length="7"/>
358             </if>
359             <field name="DRA_FLAG" length="1"/>
360             <if cond="DRA_FLAG=1">
361                 <field name="DRA_MULT" length="7"/>
362                 <field name="DRA_SUB" length="5"/>
363             </if>
364             <field name="TTC_FLAG" length="1"/>
365             <if cond="TTC_FLAG=1">
366                 <field name="TTCFAM" length="2"/>
367                 <field name="TTCMEM" length="2"/>
368             </if>
369             <field name="DEVLUT_FLAG" length="1"/>
370             <field name="OBPP" length="2"/>
371             <field name="OPVTYPE" length="3"/>
372             <field name="OUTBWC" length="10"/>
373         </loop>
374     </tre>
375
376     <tre name="ICHIPB" length="224" location="image">
377         <field name="XFRM_FLAG" length="2" type="integer"/>
378         <field name="SCALE_FACTOR" length="10" type="real"/>
379         <field name="ANAMRPH_CORR" length="2" type="integer"/>
380         <field name="SCANBLK_NUM" length="2" type="integer"/>
381         <field name="OP_ROW_11" length="12" type="real"/>
382         <field name="OP_COL_11" length="12" type="real"/>
383         <field name="OP_ROW_12" length="12" type="real"/>
384         <field name="OP_COL_12" length="12" type="real"/>
385         <field name="OP_ROW_21" length="12" type="real"/>
386         <field name="OP_COL_21" length="12" type="real"/>
387         <field name="OP_ROW_22" length="12" type="real"/>
388         <field name="OP_COL_22" length="12" type="real"/>
389         <field name="FI_ROW_11" length="12" type="real"/>
390         <field name="FI_COL_11" length="12" type="real"/>
391         <field name="FI_ROW_12" length="12" type="real"/>
392         <field name="FI_COL_12" length="12" type="real"/>
393         <field name="FI_ROW_21" length="12" type="real"/>
394         <field name="FI_COL_21" length="12" type="real"/>
395         <field name="FI_ROW_22" length="12" type="real"/>
396         <field name="FI_COL_22" length="12" type="real"/>
397         <field name="FI_ROW" length="8" type="integer"/>
398         <field name="FI_COL" length="8" type="integer"/>
399     </tre>
400
401     <tre name="J2KLRA" location="image">
402         <field name="ORIG" length="1"/>
403         <field name="NLEVELS_O" length="2"/>
404         <field name="NBANDS_O" length="5"/>
405         <field name="NLAYERS_O" length="3"/>
406         <loop counter="NLAYERS_O" md_prefix="LAYER_%03d_" name="LAYER">
407             <field name="LAYER_ID" length="3"/>
408             <field name="BITRATE" length="9"/>
409         </loop>
410         <if_remaining_bytes>
411             <field name="NLEVELS_I" length="2"/>
412             <field name="NBANDS_I" length="5"/>
413             <field name="NLAYERS_I" length="3"/>
414         </if_remaining_bytes>
415     </tre>
416
417     <tre name="MAPLOB" length="43" location="image">
418         <field name="UNILOA" length="3" type="string"/>
419         <field name="LOD" length="5" type="integer" minval="1" maxval="99999"/>
420         <field name="LAD" length="5" type="integer" minval="1" maxval="99999"/>
421         <field name="LSO" length="15" type="real"/>
422         <field name="PSO" length="15" type="real"/>
423     </tre>
424
425     <tre name="MENSRB" location="image">
426         <field name="ACFT_LOC" length="25" type="string"/>
427         <field name="ACFT_LOC_ACCY" length ="6" type="real"/>
428         <field name="ACFT_ALT" length="6" type="integer"/>
429         <field name="RP_LOC" length="25" type="string"/>
430         <field name="RP_LOC_ACCY" length="6" type="real"/>
431         <field name="RP_ELV" length="6" type="integer" minval="-1000" maxval="30000"/>
432         <field name="OF_PC_R" length="7" type="real"/>
433         <field name="OF_PC_A" length="7" type="real"/>
434         <field name="COSGRZ" length="7" type="real" minval="0.0" maxval="1.0"/>
435         <field name="RGCRP" length="7" type="integer" minval="0" maxval="3000000"/>
436         <field name="RLMAP" length="1" type="string"/>
437         <field name="RP_ROW" length="5" type="integer" minval="1" maxval="99999"/>
438         <field name="RP_COL" length="5" type="integer" minval="1" maxval="99999"/>
439         <field name="C_R_NC" length="10" type="real" minval="-1.0" maxval="1.0"/>
440         <field name="C_R_EC" length="10" type="real" minval="-1.0" maxval="1.0"/>
441         <field name="C_R_DC" length="10" type="real" minval="-1.0" maxval="1.0"/>
442         <field name="C_AZ_NC" length="9" type="real" minval="-1.0" maxval="1.0"/>
443         <field name="C_AZ_EC" length="9" type="real" minval="-1.0" maxval="1.0"/>
444         <field name="C_AZ_DC" length="9" type="real" minval="-1.0" maxval="1.0"/>
445         <field name="C_AL_NC" length="9" type="real" minval="-1.0" maxval="1.0"/>
446         <field name="C_AL_EC" length="9" type="real" minval="-1.0" maxval="1.0"/>
447         <field name="C_AL_DC" length="9" type="real" minval="-1.0" maxval="1.0"/>
448         <field name="TOTAL_TILES_COLS" length="3" type="integer" minval="1" maxval="999"/>
449         <field name="TOTAL_TILES_ROWS" length="5" type="integer" minval="1" maxval="99999"/>
450     </tre>
451
452     <!-- STDI-0002 Appendix E (ASDE 2.1/CN1), Table E-21 -->
453     <tre name="PATCHB" size="121" location="image">
454         <field name="PAT_NO" length="4" type="integer" minval="1" maxval="999"/>
455         <!-- LAST_PAT_LEVEL is a string because it is <R>, so it may contain only a space -->
456         <field name="LAST_PAT_FLAG" length="1" type="integer" minval="0" maxval="1"/>
457         <field name="LNSTRT" length="7" type="integer" minval="1" maxval="9999999"/>
458         <field name="LNSTOP" length="7" type="integer" minval="20" maxval="9999999"/>
459         <field name="AZL" length="5" type="integer" units="lines" minval="20" maxval="99999"/>
460         <!-- NVL is a string because it is <R> -->
461         <field name="NVL" length="5" type="string" units="lines"/>
462         <!-- FVL is a string because it is <R> -->
463         <field name="FVL" length="3" type="string" minval="1" maxval="681"/>
464         <field name="NPIXEL" length="5" type="integer" units="pixels" minval="1" maxval="99999"/>
465         <field name="FVPIX" length="5" type="integer" units="pixels" minval="1" maxval="99999"/>
466         <!-- FRAME is a string because it is <R> -->
467         <field name="FRAME" length="3" type="string" minval="1" maxval="512"/>
468         <field name="UTC" length="8" type="real" units="seconds" minval="0.0" maxval="86399.99"/>
469         <field name="SHEAD" length="7" type="real" units="degrees" minval="0.0" maxval="359.999"/>
470         <!-- GRAVITY is a string because it is <R> -->
471         <field name="GRAVITY" length="7" type="string" units="feet/sec^2"/>
472         <field name="INS_V_NC" length="5" type="integer" units="feet/sec" minval="-9999" maxval="9999"/>
473         <field name="INS_V_EC" length="5" type="integer" units="feet/sec" minval="-9999" maxval="9999"/>
474         <field name="INS_V_DC" length="5" type="integer" units="feet/sec" minval="-9999" maxval="9999"/>
475         <!-- OFFLAT and OFFLONG are string because they are <R> -->
476         <field name="OFFLAT" length="8" type="string" units="seconds"/>
477         <field name="OFFLONG" length="8" type="string" units="seconds"/>
478         <field name="TRACK" length="3" type="integer" units="degrees" minval="0" maxval="359"/>
479         <field name="GSWEEP" length="6" type="real" units="degrees" minval="0.0" maxval="120.0"/>
480         <!-- SHEAR is a string because it is <R> -->
481         <field name="SHEAR" length="8" type="string"/>
482         <!-- BATCH_NO is a string because it is <R> -->
483         <field name="BATCH_NO" length="6" type="string"/>
484     </tre>
485
486     <tre name="PIAIMB" md_prefix="NITF_PIAIMB_" length="337" location="image">
487         <field name="CLOUDCVR" length="3"/>
488         <field name="SRP" length="1"/>
489         <field name="SENSMODE" length="12"/>
490         <field name="SENSNAME" length="18"/>
491         <field name="SOURCE" length="255"/>
492         <field name="COMGEN" length="2"/>
493         <field name="SUBQUAL" length="1"/>
494         <field name="PIAMSNNUM" length="7"/>
495         <field name="CAMSPECS" length="32"/>
496         <field name="PROJID" length="2"/>
497         <field name="GENERATION" length="1"/>
498         <field name="ESD" length="1"/>
499         <field name="OTHERCOND" length="2"/>
500     </tre>
501
502     <tre name="PIAIMC" md_prefix="NITF_PIAIMC_" length="362" location="image">
503         <field name="CLOUDCVR" length="3"/>
504         <field name="SRP" length="1"/>
505         <field name="SENSMODE" length="12"/>
506         <field name="SENSNAME" length="18"/>
507         <field name="SOURCE" length="255"/>
508         <field name="COMGEN" length="2"/>
509         <field name="SUBQUAL" length="1"/>
510         <field name="PIAMSNNUM" length="7"/>
511         <field name="CAMSPECS" length="32"/>
512         <field name="PROJID" length="2"/>
513         <field name="GENERATION" length="1"/>
514         <field name="ESD" length="1"/>
515         <field name="OTHERCOND" length="2"/>
516         <field name="MEANGSD" length="7"/>
517         <field name="IDATUM" length="3"/>
518         <field name="IELLIP" length="3"/>
519         <field name="PREPROC" length="2"/>
520         <field name="IPROJ" length="2"/>
521         <field name="SATTRACK" length="8"/>
522     </tre>
523
524     <tre name="PIAPEA" length="92" location="image">
525         <field name="LASTNME" length="28" type="string"/>
526         <field name="FIRSTNME" length="28" type="string"/>
527         <field name="MIDNME" length="28" type="string"/>
528         <field name="DOB" length="6" type="string"/>
529         <field name="ASSOCTRY" length="2" type="string"/>
530     </tre>
531
532     <tre name="PIAPRC" minlength="201" maxlength="63759" location="file"> <!-- same as PIAPRD apparently ? -->
533         <field name="ACCESSID" length="64" type="string"/>
534         <field name="FMCONTROL" length="32" type="string"/>
535         <field name="SUBDET" length="1" type="string"/>
536         <field name="PRODCODE" length="2" type="string"/>
537         <field name="PRODUCERSE" length="6" type="string"/>
538         <field name="PRODIDNO" length="20" type="string"/>
539         <field name="PRODSNME" length="10" type="string"/>
540         <field name="PRODUCERCD" length="2" type="string"/>
541         <field name="PRODCRTIME" length="14" type="string"/>
542         <field name="MAPID" length="40" type="string"/>
543         <field name="SECTITLEREP" length="2" type="integer" minval="0" maxval="99"/>
544         <loop counter="SECTITLEREP" md_prefix="SECTITLE_%02d_" name="SECTITLE">
545             <field name="SECTITLE" length="40" type="string"/>
546             <field name="PPNUM" length="5" type="string"/>
547             <field name="TPP" length="3" type="integer" minval="1" maxval="999"/>
548         </loop>
549         <field name="REQORGREP" length="2" type="integer" minval="0" maxval="99"/>
550         <loop counter="REQORGREP" md_prefix="REQORG_%02d" name="REQORG">
551             <field name="" longname="REQORG" length="64" type="string"/>
552         </loop>
553         <field name="KEYWORDREP" length="2" type="integer" minval="0" maxval="99"/>
554         <loop counter="KEYWORDREP" md_prefix="KEYWORD_%02d" name="KEYWORD">
555             <field name="" longname="KEYWORD" length="255" type="string"/>
556         </loop>
557         <field name="ASSRPTREP" length="2" type="integer" minval="0" maxval="99"/>
558         <loop counter="ASSRPTREP" md_prefix="ASSRPT_%02d" name="ASSRPT">
559             <field name="" longname="ASSRPT" length="20" type="string"/>
560         </loop>
561         <field name="ATEXTREP" length="2" type="integer" minval="0" maxval="99"/>
562         <loop counter="ATEXTREP" md_prefix="ATEXT_%02d" name="ATEXT">
563             <field name="" longname="ATEXT" length="255" type="string"/>
564         </loop>
565     </tre>
566
567     <tre name="PIAPRD" minlength="201" maxlength="63759" location="image">
568         <field name="ACCESSID" length="64" type="string"/>
569         <field name="FMCONTROL" length="32" type="string"/>
570         <field name="SUBDET" length="1" type="string"/>
571         <field name="PRODCODE" length="2" type="string"/>
572         <field name="PRODUCERSE" length="6" type="string"/>
573         <field name="PRODIDNO" length="20" type="string"/>
574         <field name="PRODSNME" length="10" type="string"/>
575         <field name="PRODUCERCD" length="2" type="string"/>
576         <field name="PRODCRTIME" length="14" type="string"/>
577         <field name="MAPID" length="40" type="string"/>
578         <field name="SECTITLEREP" length="2" type="integer" minval="0" maxval="99"/>
579         <loop counter="SECTITLEREP" md_prefix="SECTITLE_%02d_" name="SECTITLE">
580             <field name="SECTITLE" length="40" type="string"/>
581             <field name="PPNUM" length="5" type="string"/>
582             <field name="TPP" length="3" type="integer" minval="1" maxval="999"/>
583         </loop>
584         <field name="REQORGREP" length="2" type="integer" minval="0" maxval="99"/>
585         <loop counter="REQORGREP" md_prefix="REQORG_%02d" name="REQORG">
586             <field name="" longname="REQORG" length="64" type="string"/>
587         </loop>
588         <field name="KEYWORDREP" length="2" type="integer" minval="0" maxval="99"/>
589         <loop counter="KEYWORDREP" md_prefix="KEYWORD_%02d" name="KEYWORD">
590             <field name="" longname="KEYWORD" length="255" type="string"/>
591         </loop>
592         <field name="ASSRPTREP" length="2" type="integer" minval="0" maxval="99"/>
593         <loop counter="ASSRPTREP" md_prefix="ASSRPT_%02d" name="ASSRPT">
594             <field name="" longname="ASSRPT" length="20" type="string"/>
595         </loop>
596         <field name="ATEXTREP" length="2" type="integer" minval="0" maxval="99"/>
597         <loop counter="ATEXTREP" md_prefix="ATEXT_%02d" name="ATEXT">
598             <field name="" longname="ATEXT" length="255" type="string"/>
599         </loop>
600     </tre>
601
602     <tre name="PRJPSB" minlength="113" maxlength="248" location="file">
603         <field name="PRN" length="80" type="string"/>
604         <field name="PCO" length="2" type="string"/>
605         <field name="NUM_PRJ" length="1" type="integer" minval="0" maxval="9"/>
606         <loop counter="NUM_PRJ" md_prefix="PRJ%d" name="PRJ">
607             <field name="" longname="PRJ" length="15" type="string"/>
608         </loop>
609         <field name="XOR" length="15" type="integer" minval="0"/>
610         <field name="YOR" length="15" type="integer" minval="0"/>
611     </tre>
612
613     <!-- RPC00A and RPC00B differ by the order of coefficients. See NITFReadRPC00B() -->
614     <tre name="RPC00A" length="1041" location="image">
615         <field name="SUCCESS" length="1" type="string" fixed_value="1"/>
616         <field name="ERR_BIAS" length="7" unit="meters" type="real" minval="0000.00" maxval="9999.99"/>
617         <field name="ERR_RAND" length="7" unit="meters" type="real" minval="0000.00" maxval="9999.99"/>
618         <field name="LINE_OFF" length="6" unit="pixels" type="integer"/>
619         <field name="SAMP_OFF" length="5" unit="pixels" type="integer"/>
620         <field name="LAT_OFF" length="8" unit="degrees" type="real" minval="-90.0" maxval="90.0"/>
621         <field name="LONG_OFF" length="9" unit="degrees" type="real" minval="-180.0" maxval="180.0"/>
622         <field name="HEIGHT_OFF" length="5" unit="meters" type="integer" minval="-9999" maxval="9999"/>
623         <field name="LINE_SCALE" length="6" unit="pixels" type="integer" minval="1" maxval="999999"/>
624         <field name="SAMP_SCALE" length="5" unit="pixels" type="integer" minval="1" maxval="99999"/>
625         <field name="LAT_SCALE" length="8" unit="degrees" type="real" minval="-90.0" maxval="90.0"/>
626         <field name="LONG_SCALE" length="9" unit="degrees" type="real" minval="-180.0" maxval="180.0"/>
627         <field name="HEIGHT_SCALE" length="5" unit="meters" type="integer" minval="-9999" maxval="9999"/>
628         <loop iterations="20" md_prefix="LINE_NUM_COEFF_%02d" name="LINE_NUM_COEFF">
629             <field name="" longname="LINE_NUM_COEFF" length="12" type="real"/>
630         </loop>
631         <loop iterations="20" md_prefix="LINE_DEN_COEFF_%02d" name="LINE_DEN_COEFF">
632             <field name="" longname="LINE_DEN_COEFF" length="12" type="real"/>
633         </loop>
634         <loop iterations="20" md_prefix="SAMP_NUM_COEFF_%02d" name="SAMP_NUM_COEFF">
635             <field name="" longname="SAMP_NUM_COEFF" length="12" type="real"/>
636         </loop>
637         <loop iterations="20" md_prefix="SAMP_DEN_COEFF_%02d" name="SAMP_DEN_COEFF">
638             <field name="" longname="SAMP_DEN_COEFF" length="12" type="real"/>
639         </loop>
640     </tre>
641
642     <tre name="RPC00B" length="1041" location="image">
643         <field name="SUCCESS" length="1" type="string" fixed_value="1"/>
644         <field name="ERR_BIAS" length="7" unit="meters" type="real" minval="0000.00" maxval="9999.99"/>
645         <field name="ERR_RAND" length="7" unit="meters" type="real" minval="0000.00" maxval="9999.99"/>
646         <field name="LINE_OFF" length="6" unit="pixels" type="integer"/>
647         <field name="SAMP_OFF" length="5" unit="pixels" type="integer"/>
648         <field name="LAT_OFF" length="8" unit="degrees" type="real" minval="-90.0" maxval="90.0"/>
649         <field name="LONG_OFF" length="9" unit="degrees" type="real" minval="-180.0" maxval="180.0"/>
650         <field name="HEIGHT_OFF" length="5" unit="meters" type="integer" minval="-9999" maxval="9999"/>
651         <field name="LINE_SCALE" length="6" unit="pixels" type="integer" minval="1" maxval="999999"/>
652         <field name="SAMP_SCALE" length="5" unit="pixels" type="integer" minval="1" maxval="99999"/>
653         <field name="LAT_SCALE" length="8" unit="degrees" type="real" minval="-90.0" maxval="90.0"/>
654         <field name="LONG_SCALE" length="9" unit="degrees" type="real" minval="-180.0" maxval="180.0"/>
655         <field name="HEIGHT_SCALE" length="5" unit="meters" type="integer" minval="-9999" maxval="9999"/>
656         <loop iterations="20" md_prefix="LINE_NUM_COEFF_%02d" name="LINE_NUM_COEFF">
657             <field name="" longname="LINE_NUM_COEFF" length="12" type="real"/>
658         </loop>
659         <loop iterations="20" md_prefix="LINE_DEN_COEFF_%02d" name="LINE_DEN_COEFF">
660             <field name="" longname="LINE_DEN_COEFF" length="12" type="real"/>
661         </loop>
662         <loop iterations="20" md_prefix="SAMP_NUM_COEFF_%02d" name="SAMP_NUM_COEFF">
663             <field name="" longname="SAMP_NUM_COEFF" length="12" type="real"/>
664         </loop>
665         <loop iterations="20" md_prefix="SAMP_DEN_COEFF_%02d" name="SAMP_DEN_COEFF">
666             <field name="" longname="SAMP_DEN_COEFF" length="12" type="real"/>
667         </loop>
668     </tre>
669
670     <tre name="RSMAPA" minlength="507" maxlength="1243" location="image">
671         <field name="IID" length="80" type="string"/>
672         <field name="EDITION" length="40" type="string"/>
673         <field name="TID" length="40" type="string"/>
674         <field name="NPAR" length="2" type="integer" minval="1" maxval="36"/>
675         <field name="XUOL" length="21" type="real" unit="meters"/>
676         <field name="YUOL" length="21" type="real" unit="meters"/>
677         <field name="ZUOL" length="21" type="real" unit="meters"/>
678         <field name="XUXL" length="21" type="real"/>
679         <field name="XUYL" length="21" type="real"/>
680         <field name="XUZL" length="21" type="real"/>
681         <field name="YUXL" length="21" type="real"/>
682         <field name="YUYL" length="21" type="real"/>
683         <field name="YUZL" length="21" type="real"/>
684         <field name="ZUXL" length="21" type="real"/>
685         <field name="ZUYL" length="21" type="real"/>
686         <field name="ZUZL" length="21" type="real"/>
687         <field name="IRO" length="2" type="integer" minval="1" maxval="36"/>
688         <field name="IRX" length="2" type="integer" minval="1" maxval="36"/>
689         <field name="IRY" length="2" type="integer" minval="1" maxval="36"/>
690         <field name="IRZ" length="2" type="integer" minval="1" maxval="36"/>
691         <field name="IRXX" length="2" type="integer" minval="1" maxval="36"/>
692         <field name="IRXY" length="2" type="integer" minval="1" maxval="36"/>
693         <field name="IRXZ" length="2" type="integer" minval="1" maxval="36"/>
694         <field name="IRYY" length="2" type="integer" minval="1" maxval="36"/>
695         <field name="IRYZ" length="2" type="integer" minval="1" maxval="36"/>
696         <field name="IRZZ" length="2" type="integer" minval="1" maxval="36"/>
697         <field name="IC0" length="2" type="integer" minval="1" maxval="36"/>
698         <field name="ICX" length="2" type="integer" minval="1" maxval="36"/>
699         <field name="ICY" length="2" type="integer" minval="1" maxval="36"/>
700         <field name="ICZ" length="2" type="integer" minval="1" maxval="36"/>
701         <field name="ICXX" length="2" type="integer" minval="1" maxval="36"/>
702         <field name="ICXY" length="2" type="integer" minval="1" maxval="36"/>
703         <field name="ICXZ" length="2" type="integer" minval="1" maxval="36"/>
704         <field name="ICYY" length="2" type="integer" minval="1" maxval="36"/>
705         <field name="ICYZ" length="2" type="integer" minval="1" maxval="36"/>
706         <field name="ICZZ" length="2" type="integer" minval="1" maxval="36"/>
707         <field name="GXO" length="2" type="integer" minval="1" maxval="36"/>
708         <field name="GYO" length="2" type="integer" minval="1" maxval="36"/>
709         <field name="GZO" length="2" type="integer" minval="1" maxval="36"/>
710         <field name="GXR" length="2" type="integer" minval="1" maxval="36"/>
711         <field name="GYR" length="2" type="integer" minval="1" maxval="36"/>
712         <field name="GZR" length="2" type="integer" minval="1" maxval="36"/>
713         <field name="GS" length="2" type="integer" minval="1" maxval="36"/>
714         <field name="GXX" length="2" type="integer" minval="1" maxval="36"/>
715         <field name="GXY" length="2" type="integer" minval="1" maxval="36"/>
716         <field name="GXZ" length="2" type="integer" minval="1" maxval="36"/>
717         <field name="GYX" length="2" type="integer" minval="1" maxval="36"/>
718         <field name="GYY" length="2" type="integer" minval="1" maxval="36"/>
719         <field name="GYZ" length="2" type="integer" minval="1" maxval="36"/>
720         <field name="GZX" length="2" type="integer" minval="1" maxval="36"/>
721         <field name="GZY" length="2" type="integer" minval="1" maxval="36"/>
722         <field name="GZZ" length="2" type="integer" minval="1" maxval="36"/>
723         <loop counter="NPAR" md_prefix="PAR_%02d_" name="PAR">
724             <field name="PARVAL" length="21" type="real"/>
725         </loop>
726     </tre>
727
728     <tre name="RSMDCA" minlength="597" maxlength="99988" location="image">
729         <field name="IID" length="80" type="string"/>
730         <field name="EDITION" length="40" type="string"/>
731         <field name="TID" length="40" type="string"/>
732         <field name="NPAR" length="2" type="integer" minval="1" maxval="36"/>
733         <field name="NIMGE" length="3" type="integer" minval="1" maxval="999"/>
734         <field name="NPART" length="5" type="integer" minval="1" maxval="99999"/>
735         <loop counter="NIMGE" md_prefix="IMAGEF_%03d_" name="IMAGE">
736             <field name="IID" length="80" type="string"/>
737             <field name="NPARI" length="2" type="integer" minval="1" maxval="36"/>
738         </loop>
739         <field name="XUOL" length="21" type="real" unit="meters"/>
740         <field name="YUOL" length="21" type="real" unit="meters"/>
741         <field name="ZUOL" length="21" type="real" unit="meters"/>
742         <field name="XUXL" length="21" type="real"/>
743         <field name="XUYL" length="21" type="real"/>
744         <field name="XUZL" length="21" type="real"/>
745         <field name="YUXL" length="21" type="real"/>
746         <field name="YUYL" length="21" type="real"/>
747         <field name="YUZL" length="21" type="real"/>
748         <field name="ZUXL" length="21" type="real"/>
749         <field name="ZUYL" length="21" type="real"/>
750         <field name="ZUZL" length="21" type="real"/>
751         <field name="IRO" length="2" type="integer" minval="1" maxval="36"/>
752         <field name="IRX" length="2" type="integer" minval="1" maxval="36"/>
753         <field name="IRY" length="2" type="integer" minval="1" maxval="36"/>
754         <field name="IRZ" length="2" type="integer" minval="1" maxval="36"/>
755         <field name="IRXX" length="2" type="integer" minval="1" maxval="36"/>
756         <field name="IRXY" length="2" type="integer" minval="1" maxval="36"/>
757         <field name="IRXZ" length="2" type="integer" minval="1" maxval="36"/>
758         <field name="IRYY" length="2" type="integer" minval="1" maxval="36"/>
759         <field name="IRYZ" length="2" type="integer" minval="1" maxval="36"/>
760         <field name="IRZZ" length="2" type="integer" minval="1" maxval="36"/>
761         <field name="IC0" length="2" type="integer" minval="1" maxval="36"/>
762         <field name="ICX" length="2" type="integer" minval="1" maxval="36"/>
763         <field name="ICY" length="2" type="integer" minval="1" maxval="36"/>
764         <field name="ICZ" length="2" type="integer" minval="1" maxval="36"/>
765         <field name="ICXX" length="2" type="integer" minval="1" maxval="36"/>
766         <field name="ICXY" length="2" type="integer" minval="1" maxval="36"/>
767         <field name="ICXZ" length="2" type="integer" minval="1" maxval="36"/>
768         <field name="ICYY" length="2" type="integer" minval="1" maxval="36"/>
769         <field name="ICYZ" length="2" type="integer" minval="1" maxval="36"/>
770         <field name="ICZZ" length="2" type="integer" minval="1" maxval="36"/>
771         <field name="GXO" length="2" type="integer" minval="1" maxval="36"/>
772         <field name="GYO" length="2" type="integer" minval="1" maxval="36"/>
773         <field name="GZO" length="2" type="integer" minval="1" maxval="36"/>
774         <field name="GXR" length="2" type="integer" minval="1" maxval="36"/>
775         <field name="GYR" length="2" type="integer" minval="1" maxval="36"/>
776         <field name="GZR" length="2" type="integer" minval="1" maxval="36"/>
777         <field name="GS" length="2" type="integer" minval="1" maxval="36"/>
778         <field name="GXX" length="2" type="integer" minval="1" maxval="36"/>
779         <field name="GXY" length="2" type="integer" minval="1" maxval="36"/>
780         <field name="GXZ" length="2" type="integer" minval="1" maxval="36"/>
781         <field name="GYX" length="2" type="integer" minval="1" maxval="36"/>
782         <field name="GYY" length="2" type="integer" minval="1" maxval="36"/>
783         <field name="GYZ" length="2" type="integer" minval="1" maxval="36"/>
784         <field name="GZX" length="2" type="integer" minval="1" maxval="36"/>
785         <field name="GZY" length="2" type="integer" minval="1" maxval="36"/>
786         <field name="GZZ" length="2" type="integer" minval="1" maxval="36"/>
787         <loop formula="(NPART+1)*(NPART)/2" name="DERCOV" md_prefix="DERCOV_%05d"> <!--Warning: this condition is currently hardcoded in the interpreter -->
788             <field name="" longname="DERCOV" length="21" type="real"/>
789         </loop>
790     </tre>
791
792     <tre name="RSMECA" minlength="354" maxlength="42864" location="image">
793         <field name="IID" length="80" type="string"/>
794         <field name="EDITION" length="40" type="string"/>
795         <field name="TID" length="40" type="string"/>
796         <field name="INCLIC" length="1" type="string"/>
797         <field name="INCLUC" length="1" type="string"/>
798         <if cond="INCLIC=Y">
799             <field name="NPAR" length="2" type="integer" minval="1" maxval="36"/>
800             <field name="NPARO" length="2" type="integer" minval="1" maxval="36"/>
801             <field name="IGN" length="2" type="integer" minval="1" maxval="36"/>
802             <field name="CVDATE" length="8" type="string"/>
803             <field name="XUOL" length="21" type="real" unit="meters"/>
804             <field name="YUOL" length="21" type="real" unit="meters"/>
805             <field name="ZUOL" length="21" type="real" unit="meters"/>
806             <field name="XUXL" length="21" type="real"/>
807             <field name="XUYL" length="21" type="real"/>
808             <field name="XUZL" length="21" type="real"/>
809             <field name="YUXL" length="21" type="real"/>
810             <field name="YUYL" length="21" type="real"/>
811             <field name="YUZL" length="21" type="real"/>
812             <field name="ZUXL" length="21" type="real"/>
813             <field name="ZUYL" length="21" type="real"/>
814             <field name="ZUZL" length="21" type="real"/>
815             <field name="IRO" length="2" type="integer" minval="1" maxval="36"/>
816             <field name="IRX" length="2" type="integer" minval="1" maxval="36"/>
817             <field name="IRY" length="2" type="integer" minval="1" maxval="36"/>
818             <field name="IRZ" length="2" type="integer" minval="1" maxval="36"/>
819             <field name="IRXX" length="2" type="integer" minval="1" maxval="36"/>
820             <field name="IRXY" length="2" type="integer" minval="1" maxval="36"/>
821             <field name="IRXZ" length="2" type="integer" minval="1" maxval="36"/>
822             <field name="IRYY" length="2" type="integer" minval="1" maxval="36"/>
823             <field name="IRYZ" length="2" type="integer" minval="1" maxval="36"/>
824             <field name="IRZZ" length="2" type="integer" minval="1" maxval="36"/>
825             <field name="IC0" length="2" type="integer" minval="1" maxval="36"/>
826             <field name="ICX" length="2" type="integer" minval="1" maxval="36"/>
827             <field name="ICY" length="2" type="integer" minval="1" maxval="36"/>
828             <field name="ICZ" length="2" type="integer" minval="1" maxval="36"/>
829             <field name="ICXX" length="2" type="integer" minval="1" maxval="36"/>
830             <field name="ICXY" length="2" type="integer" minval="1" maxval="36"/>
831             <field name="ICXZ" length="2" type="integer" minval="1" maxval="36"/>
832             <field name="ICYY" length="2" type="integer" minval="1" maxval="36"/>
833             <field name="ICYZ" length="2" type="integer" minval="1" maxval="36"/>
834             <field name="ICZZ" length="2" type="integer" minval="1" maxval="36"/>
835             <field name="GXO" length="2" type="integer" minval="1" maxval="36"/>
836             <field name="GYO" length="2" type="integer" minval="1" maxval="36"/>
837             <field name="GZO" length="2" type="integer" minval="1" maxval="36"/>
838             <field name="GXR" length="2" type="integer" minval="1" maxval="36"/>
839             <field name="GYR" length="2" type="integer" minval="1" maxval="36"/>
840             <field name="GZR" length="2" type="integer" minval="1" maxval="36"/>
841             <field name="GS" length="2" type="integer" minval="1" maxval="36"/>
842             <field name="GXX" length="2" type="integer" minval="1" maxval="36"/>
843             <field name="GXY" length="2" type="integer" minval="1" maxval="36"/>
844             <field name="GXZ" length="2" type="integer" minval="1" maxval="36"/>
845             <field name="GYX" length="2" type="integer" minval="1" maxval="36"/>
846             <field name="GYY" length="2" type="integer" minval="1" maxval="36"/>
847             <field name="GYZ" length="2" type="integer" minval="1" maxval="36"/>
848             <field name="GZX" length="2" type="integer" minval="1" maxval="36"/>
849             <field name="GZY" length="2" type="integer" minval="1" maxval="36"/>
850             <field name="GZZ" length="2" type="integer" minval="1" maxval="36"/>
851             <loop counter="IGN" name="IG" md_prefix="IG_%02d_">
852                 <field name="NUMOPG" length="2" type="integer" minval="1" maxval="36"/>
853                 <loop formula="(NUMOPG+1)*(NUMOPG)/2" name="EG" md_prefix="EG_%02d"> <!--Warning: this condition is currently hardcoded in the interpreter -->
854                     <field name="" longname="ERRCVG" length="21" type="real"/>
855                 </loop>
856                 <field name="TCDF" length="1" type="integer" minval="0" maxval="2"/>
857                 <field name="NCSEG" length="1" type="integer" minval="2" maxval="9"/>
858                 <loop counter="NCSEG" name="CORSEG" md_prefix="CORSEG_%d_">
859                     <field name="CORSEG" length="21" type="real"/>
860                     <field name="TAUSEG" length="21" type="real" unit="seconds"/>
861                 </loop>
862             </loop>
863             <loop formula="NPAR*NPARO" name="MAP" md_prefix="MAP_%04d"> <!--Warning: this condition is currently hardcoded in the interpreter -->
864                 <field name="" longname="MAP" length="21" type="real"/>
865             </loop>
866         </if>
867         <if cond="INCLUC=Y">
868             <field name="URR" length="21" type="real" unit="pixel^2"/>
869             <field name="URC" length="21" type="real" unit="pixel^2"/>
870             <field name="UCC" length="21" type="real" unit="pixel^2"/>
871             <field name="UNCSR" length="1" type="integer" minval="2" maxval="9"/>
872             <loop counter="UNCSR" name="CORSR" md_prefix="CORSR_%d_">
873                 <field name="UCORSR" length="21" type="real"/>
874                 <field name="UTAUSR" length="21" type="real" unit="pixels"/>
875             </loop>
876             <field name="UNCSC" length="1" type="integer" minval="2" maxval="9"/>
877             <loop counter="UNCSC" name="CORSC" md_prefix="CORSC_%d_">
878                 <field name="UCORSC" length="21" type="real"/>
879                 <field name="UTAUSC" length="21" type="real" unit="pixels"/>
880             </loop>
881         </if>
882     </tre>
883
884     <tre name="RSMGGA" minlength="390" maxlength="99988" location="image">
885         <field name="IID" length="80" type="string"/>
886         <field name="EDITION" length="40" type="string"/>
887         <field name="GGRSN" length="3" type="integer" minval="1" maxval="256"/>
888         <field name="GGCSN" length="3" type="integer" minval="1" maxval="256"/>
889         <field name="GGRFEP" length="21" type="real"/>
890         <field name="GGCFEP" length="21" type="real"/>
891         <field name="INTORD" length="1" type="integer" minval="0" maxval="3"/>
892         <field name="NPLN" length="3" type="integer" minval="2" maxval="999"/>
893         <field name="DELTAZ" length="21" type="real"/>
894         <field name="DELTAX" length="21" type="real"/>
895         <field name="DELTAY" length="21" type="real"/>
896         <field name="ZPLN1" length="21" type="real"/>
897         <field name="XIPLN1" length="21" type="real"/>
898         <field name="YIPLN1" length="21" type="real"/>
899         <field name="REFROW" length="9" type="integer"/>
900         <field name="REFCOL" length="9" type="integer"/>
901         <field name="TNUMRD" length="2" type="integer" minval="3" maxval="31"/>
902         <field name="TNUMCD" length="2" type="integer" minval="3" maxval="31"/>
903         <field name="FNUMRD" length="1" type="integer" minval="1" maxval="3"/>
904         <field name="FNUMCD" length="1" type="integer" minval="1" maxval="3"/>
905         <loop formula="NPLN-1" name="IG" md_prefix="IG_%03d_"> <!--Warning: this condition is currently hardcoded in the interpreter -->
906             <field name="IXO" length="4" type="integer"/>
907             <field name="IYO" length="4" type="integer"/>
908         </loop>
909         <loop counter="NPLN" name="GP" md_prefix="GP_%03d_">
910             <field name="NXPTS" length="3" type="integer" minval="2"/>
911             <field name="NYPTS" length="3" type="integer" minval="2"/>
912             <loop formula="NXPTS*NYPTS" name="GPCOORD" md_prefix="GPCOORD_%06d_"> <!--Warning: this condition is currently hardcoded in the interpreter -->
913                 <field name="RCOORD" length_var="TNUMRD" type="integer"/>
914                 <field name="CCOORD" length_var="TNUMCD" type="integer"/>
915             </loop>
916         </loop>
917     </tre>
918
919     <tre name="RSMGIA" length="591" location="image">
920         <field name="IID" length="80" type="string"/>
921         <field name="EDITION" length="40" type="string"/>
922         <field name="GR0" length="21" type="real"/>
923         <field name="GRX" length="21" type="real"/>
924         <field name="GRY" length="21" type="real"/>
925         <field name="GRZ" length="21" type="real"/>
926         <field name="GRXX" length="21" type="real"/>
927         <field name="GRXY" length="21" type="real"/>
928         <field name="GRXZ" length="21" type="real"/>
929         <field name="GRYY" length="21" type="real"/>
930         <field name="GRYZ" length="21" type="real"/>
931         <field name="GRZZ" length="21" type="real"/>
932         <field name="GC0" length="21" type="real"/>
933         <field name="GCX" length="21" type="real"/>
934         <field name="GCY" length="21" type="real"/>
935         <field name="GCZ" length="21" type="real"/>
936         <field name="GCXX" length="21" type="real"/>
937         <field name="GCXY" length="21" type="real"/>
938         <field name="GCXZ" length="21" type="real"/>
939         <field name="GCYY" length="21" type="real"/>
940         <field name="GCYZ" length="21" type="real"/>
941         <field name="GCZZ" length="21" type="real"/>
942         <field name="GRNIS" length="3" type="integer"/>
943         <field name="GCNIS" length="3" type="integer"/>
944         <field name="GTNIS" length="3" type="integer"/>
945         <field name="GRSSIZ" length="21" type="real"/>
946         <field name="GCSSIZ" length="21" type="real"/>
947     </tre>
948
949     <tre name="RSMIDA" length="1628" location="image">
950         <field name="IID" length="80" type="string"/>
951         <field name="EDITION" length="40" type="string"/>
952         <field name="ISID" length="40" type="string"/>
953         <field name="SID" length="40" type="string"/>
954         <field name="STID" length="40" type="string"/>
955         <field name="YEAR" length="4" type="integer"/>
956         <field name="MONTH" length="2" type="integer"/>
957         <field name="DAY" length="2" type="integer"/>
958         <field name="HOUR" length="2" type="integer"/>
959         <field name="MINUTE" length="2" type="integer"/>
960         <field name="SECOND" length="9" type="real"/>
961         <field name="NRG" length="8" type="integer" unit="pixels" minval="1" maxval="99999999"/>
962         <field name="NCG" length="8" type="integer" unit="pixels" minval="1" maxval="99999999"/>
963         <field name="TRG" length="21" type="real" unit="seconds"/>
964         <field name="TCG" length="21" type="real" unit="seconds"/>
965         <field name="GRNDD" length="1" type="string"/>
966         <field name="XUOR" length="21" type="real" unit="meters"/>
967         <field name="YUOR" length="21" type="real" unit="meters"/>
968         <field name="ZUOR" length="21" type="real" unit="meters"/>
969         <field name="XUXR" length="21" type="real"/>
970         <field name="XUYR" length="21" type="real"/>
971         <field name="XUZR" length="21" type="real"/>
972         <field name="YUXR" length="21" type="real"/>
973         <field name="YUYR" length="21" type="real"/>
974         <field name="YUZR" length="21" type="real"/>
975         <field name="ZUXR" length="21" type="real"/>
976         <field name="ZUYR" length="21" type="real"/>
977         <field name="ZUZR" length="21" type="real"/>
978         <field name="V1X" length="21" type="real"/>
979         <field name="V1Y" length="21" type="real"/>
980         <field name="V1Z" length="21" type="real"/>
981         <field name="V2X" length="21" type="real"/>
982         <field name="V2Y" length="21" type="real"/>
983         <field name="V2Z" length="21" type="real"/>
984         <field name="V3X" length="21" type="real"/>
985         <field name="V3Y" length="21" type="real"/>
986         <field name="V3Z" length="21" type="real"/>
987         <field name="V4X" length="21" type="real"/>
988         <field name="V4Y" length="21" type="real"/>
989         <field name="V4Z" length="21" type="real"/>
990         <field name="V5X" length="21" type="real"/>
991         <field name="V5Y" length="21" type="real"/>
992         <field name="V5Z" length="21" type="real"/>
993         <field name="V6X" length="21" type="real"/>
994         <field name="V6Y" length="21" type="real"/>
995         <field name="V6Z" length="21" type="real"/>
996         <field name="V7X" length="21" type="real"/>
997         <field name="V7Y" length="21" type="real"/>
998         <field name="V7Z" length="21" type="real"/>
999         <field name="V8X" length="21" type="real"/>
1000         <field name="V8Y" length="21" type="real"/>
1001         <field name="V8Z" length="21" type="real"/>
1002         <field name="GRPX" length="21" type="real"/>
1003         <field name="GRPY" length="21" type="real"/>
1004         <field name="GRPZ" length="21" type="real"/>
1005         <field name="FULLR" length="8" type="integer" unit="pixels" minval="1" maxval="99999999"/>
1006         <field name="FULLC" length="8" type="integer" unit="pixels" minval="1" maxval="99999999"/>
1007         <field name="MINR" length="8" type="integer" unit="pixels" minval="0" maxval="99999999"/>
1008         <field name="MAXR" length="8" type="integer" unit="pixels" minval="0" maxval="99999999"/>
1009         <field name="MINC" length="8" type="integer" unit="pixels" minval="0" maxval="99999999"/>
1010         <field name="MAXC" length="8" type="integer" unit="pixels" minval="0" maxval="99999999"/>
1011         <field name="IE0" length="21" type="real" unit="radians"/>
1012         <field name="IER" length="21" type="real"/>
1013         <field name="IEC" length="21" type="real"/>
1014         <field name="IERR" length="21" type="real"/>
1015         <field name="IERC" length="21" type="real"/>
1016         <field name="IECC" length="21" type="real"/>
1017         <field name="IA0" length="21" type="real" unit="radians"/>
1018         <field name="IAR" length="21" type="real"/>
1019         <field name="IAC" length="21" type="real"/>
1020         <field name="IARR" length="21" type="real"/>
1021         <field name="IARC" length="21" type="real"/>
1022         <field name="IACC" length="21" type="real"/>
1023         <field name="SPX" length="21" type="real"/>
1024         <field name="SVX" length="21" type="real"/>
1025         <field name="SAX" length="21" type="real"/>
1026         <field name="SPY" length="21" type="real"/>
1027         <field name="SVY" length="21" type="real"/>
1028         <field name="SAY" length="21" type="real"/>
1029         <field name="SPZ" length="21" type="real"/>
1030         <field name="SVZ" length="21" type="real"/>
1031         <field name="SAZ" length="21" type="real"/>
1032     </tre>
1033
1034     <tre name="RSMPCA" minlength="486" maxlength="18546" location="image">
1035         <field name="IID" length="80" type="string"/>
1036         <field name="EDITION" length="40" type="string"/>
1037         <field name="RSN" length="3" type="integer" minval="1" maxval="256"/>
1038         <field name="CSN" length="3" type="integer" minval="1" maxval="256"/>
1039         <field name="RFEP" length="21" type="real"/>
1040         <field name="CFEP" length="21" type="real"/>
1041         <field name="RNRMO" length="21" type="real"/>
1042         <field name="CNRMO" length="21" type="real"/>
1043         <field name="XNRMO" length="21" type="real"/>
1044         <field name="YNRMO" length="21" type="real"/>
1045         <field name="ZNRMO" length="21" type="real"/>
1046         <field name="RNRMSF" length="21" type="real"/>
1047         <field name="CNRMSF" length="21" type="real"/>
1048         <field name="XNRMSF" length="21" type="real"/>
1049         <field name="YNRMSF" length="21" type="real"/>
1050         <field name="ZNRMSF" length="21" type="real"/>
1051         <field name="RNPWRX" length="1" type="integer" minval="0" maxval="5"/>
1052         <field name="RNPWRY" length="1" type="integer" minval="0" maxval="5"/>
1053         <field name="RNPWRZ" length="1" type="integer" minval="0" maxval="5"/>
1054         <field name="RNTRMS" length="3" type="integer" minval="1" maxval="216"/>
1055         <loop counter="RNTRMS" name="RNPCF" md_prefix="RNPCF_%03d">
1056             <field name="" longname="RNPCF" length="21" type="real"/>
1057         </loop>
1058         <field name="RDPWRX" length="1" type="integer" minval="0" maxval="5"/>
1059         <field name="RDPWRY" length="1" type="integer" minval="0" maxval="5"/>
1060         <field name="RDPWRZ" length="1" type="integer" minval="0" maxval="5"/>
1061         <field name="RDTRMS" length="3" type="integer" minval="1" maxval="216"/>
1062         <loop counter="RDTRMS" name="RDPCF" md_prefix="RDPCF_%03d">
1063             <field name="" longname="RDPCF" length="21" type="real"/>
1064         </loop>
1065         <field name="CNPWRX" length="1" type="integer" minval="0" maxval="5"/>
1066         <field name="CNPWRY" length="1" type="integer" minval="0" maxval="5"/>
1067         <field name="CNPWRZ" length="1" type="integer" minval="0" maxval="5"/>
1068         <field name="CNTRMS" length="3" type="integer" minval="1" maxval="216"/>
1069         <loop counter="CNTRMS" name="CNPCF" md_prefix="CNPCF_%03d">
1070             <field name="" longname="CNPCF" length="21" type="real"/>
1071         </loop>
1072         <field name="CDPWRX" length="1" type="integer" minval="0" maxval="5"/>
1073         <field name="CDPWRY" length="1" type="integer" minval="0" maxval="5"/>
1074         <field name="CDPWRZ" length="1" type="integer" minval="0" maxval="5"/>
1075         <field name="CDTRMS" length="3" type="integer" minval="1" maxval="216"/>
1076         <loop counter="CDTRMS" name="CDPCF" md_prefix="CDPCF_%03d">
1077             <field name="" longname="CDPCF" length="21" type="real"/>
1078         </loop>
1079     </tre>
1080
1081     <tre name="RSMPIA" length="591" location="image">
1082         <field name="IID" length="80" type="string"/>
1083         <field name="EDITION" length="40" type="string"/>
1084         <field name="R0" length="21" type="real"/>
1085         <field name="RX" length="21" type="real"/>
1086         <field name="RY" length="21" type="real"/>
1087         <field name="RZ" length="21" type="real"/>
1088         <field name="RXX" length="21" type="real"/>
1089         <field name="RXY" length="21" type="real"/>
1090         <field name="RXZ" length="21" type="real"/>
1091         <field name="RYY" length="21" type="real"/>
1092         <field name="RYZ" length="21" type="real"/>
1093         <field name="RZZ" length="21" type="real"/>
1094         <field name="C0" length="21" type="real"/>
1095         <field name="CX" length="21" type="real"/>
1096         <field name="CY" length="21" type="real"/>
1097         <field name="CZ" length="21" type="real"/>
1098         <field name="CXX" length="21" type="real"/>
1099         <field name="CXY" length="21" type="real"/>
1100         <field name="CXZ" length="21" type="real"/>
1101         <field name="CYY" length="21" type="real"/>
1102         <field name="CYZ" length="21" type="real"/>
1103         <field name="CZZ" length="21" type="real"/>
1104         <field name="RNIS" length="3" type="integer"/>
1105         <field name="CNIS" length="3" type="integer"/>
1106         <field name="TNIS" length="3" type="integer"/>
1107         <field name="RSSIZ" length="21" type="real"/>
1108         <field name="CSSIZ" length="21" type="real"/>
1109     </tre>
1110
1111     <tre name="SENSRB" location="image">
1112         <field name="GENERAL_DATA" length="1" type="string"/>
1113         <if cond="GENERAL_DATA=Y">
1114             <field name="SENSOR" length="25" type="string"/>
1115             <field name="SENSOR_URI" length="32" type="string"/>
1116             <field name="PLATFORM" length="25" type="string"/>
1117             <field name="PLATFORM_URI" length="32" type="string"/>
1118             <field name="OPERATION_DOMAIN" length="10" type="string"/>
1119             <field name="CONTENT_LEVEL" length="1" type="integer" minval="0" maxval="9"/>
1120             <field name="GEODETIC_SYSTEM" length="5" type="string"/>
1121             <field name="GEODETIC_TYPE" length="1" type="string"/>
1122             <field name="ELEVATION_DATUM" length="3" type="string"/>
1123             <field name="LENGTH_UNIT" length="2" type="string"/>
1124             <field name="ANGULAR_UNIT" length="3" type="string"/>
1125             <field name="START_DATE" length="8" type="string"/>
1126             <field name="START_TIME" length="14" type="real" minval="0.0" maxval="86399.99999999"/>
1127             <field name="END_DATE" length="8" type="string"/>
1128             <field name="END_TIME" length="14" type="real" minval="0.0" maxval="86399.99999999"/>
1129             <field name="GENERATION_COUNT" length="2" type="integer" minval="0" maxval="99"/>
1130             <field name="GENERATION_DATE" length="8" type="string"/>
1131             <field name="GENERATION_TIME" length="10" type="string"/>
1132         </if>
1133         <field name="SENSOR_ARRAY_DATA" length="1" type="string"/>
1134         <if cond="SENSOR_ARRAY_DATA=Y">
1135             <field name="DETECTION" length="20" type="string"/>
1136             <field name="ROW_DETECTORS" length="8" type="integer"/>
1137             <field name="COLUMN_DETECTORS" length="8" type="integer"/>
1138             <field name="ROW_METRIC" length="8" type="string"/>
1139             <field name="COLUMN_METRIC" length="8" type="string"/>
1140             <field name="FOCAL_LENGTH" length="8" type="string"/>
1141             <field name="ROW_FOV" length="8" type="string"/>
1142             <field name="COLUMN_FOV" length="8" type="string"/>
1143             <field name="CALIBRATED" length="1" type="string"/>
1144         </if>
1145         <field name="SENSOR_CALIBRATION_DATA" length="1" type="string"/>
1146         <if cond="SENSOR_CALIBRATION_DATA=Y">
1147             <field name="CALIBRATION_UNIT" length="2" type="string"/>
1148             <field name="PRINCIPAL_POINT_OFFSET_X" length="9" type="string"/>
1149             <field name="PRINCIPAL_POINT_OFFSET_Y" length="9" type="string"/>
1150             <field name="RADIAL_DISTORT_1" length="12" type="string"/>
1151             <field name="RADIAL_DISTORT_2" length="12" type="string"/>
1152             <field name="RADIAL_DISTORT_3" length="12" type="string"/>
1153             <field name="RADIAL_DISTORT_LIMIT" length="9" type="string"/>
1154             <field name="DECENT_DISTORT_1" length="12" type="string"/>
1155             <field name="DECENT_DISTORT_2" length="12" type="string"/>
1156             <field name="AFFINITY_DISTORT_1" length="12" type="string"/>
1157             <field name="AFFINITY_DISTORT_2" length="12" type="string"/>
1158             <field name="CALIBRATION_DATE" length="8" type="string"/>
1159         </if>
1160         <field name="IMAGE_FORMATION_DATA" length="1" type="string"/>
1161         <if cond="IMAGE_FORMATION_DATA=Y">
1162             <field name="METHOD" length="15" type="string"/>
1163             <field name="MODE" length="3" type="string"/>
1164             <field name="ROW_COUNT" length="8" type="integer" minval="1" maxval="99999999"/>
1165             <field name="COLUMN_COUNT" length="8" type="integer" minval="1" maxval="99999999"/>
1166             <field name="ROW_SET" length="8" type="integer"/>
1167             <field name="COLUMN_SET" length="8" type="integer"/>
1168             <field name="ROW_RATE" length="10" type="real"/>
1169             <field name="COLUMN_RATE" length="10" type="real"/>
1170             <field name="FIRST_PIXEL_ROW" length="8" type="integer" minval="0" maxval="99999999"/>
1171             <field name="FIRST_PIXEL_COLUMN" length="8" type="integer" minval="0" maxval="99999999"/>
1172             <field name="TRANSFORM_PARAMS" length="1" type="integer" minval="0" maxval="8"/>
1173             <loop counter="TRANSFORM_PARAMS" name="TRANSFORM_PARAM" md_prefix="TRANSFORM_PARAM_%d_">
1174                 <field name="" longname="TRANSFORM_PARAM" length="12" type="string"/>
1175             </loop>
1176         </if>
1177         <field name="REFERENCE_TIME" length="12" type="string"/>
1178         <field name="REFERENCE_ROW" length="8" type="string"/>
1179         <field name="REFERENCE_COLUMN" length="8" type="string"/>
1180         <field name="LATITUDE_OR_X" length="11" type="string"/>
1181         <field name="LONGITUDE_OR_Y" length="12" type="string"/>
1182         <field name="ALTITUDE_OR_Z" length="11" type="string"/>
1183         <field name="SENSOR_X_OFFSET" length="8" type="integer"/>
1184         <field name="SENSOR_Y_OFFSET" length="8" type="integer"/>
1185         <field name="SENSOR_Z_OFFSET" length="8" type="integer"/>
1186         <field name="ATTITUDE_EULER_ANGLES" length="1" type="string"/>
1187         <if cond="ATTITUDE_EULER_ANGLES=Y">
1188             <field name="SENSOR_ANGLE_MODEL" length="1" type="integer"/>
1189             <field name="SENSOR_ANGLE_1" length="10" type="string"/>
1190             <field name="SENSOR_ANGLE_2" length="9" type="string"/>
1191             <field name="SENSOR_ANGLE_3" length="10" type="string"/>
1192             <field name="PLATFORM_RELATIVE" length="1" type="string"/>
1193             <field name="PLATFORM_HEADING" length="9" type="string"/>
1194             <field name="PLATFORM_PITCH" length="9" type="string"/>
1195             <field name="PLATFORM_ROLL" length="10" type="string"/>
1196         </if>
1197         <field name="ATTITUDE_UNIT_VECTORS" length="1" type="string"/>
1198         <if cond="ATTITUDE_UNIT_VECTORS=Y">
1199             <field name="ICX_NORTH_OR_X" length="10" type="real"/>
1200             <field name="ICX_EAST_OR_Y" length="10" type="real"/>
1201             <field name="ICX_DOWN_OR_Z" length="10" type="real"/>
1202             <field name="ICY_NORTH_OR_X" length="10" type="real"/>
1203             <field name="ICY_EAST_OR_Y" length="10" type="real"/>
1204             <field name="ICY_DOWN_OR_Z" length="10" type="real"/>
1205             <field name="ICZ_NORTH_OR_X" length="10" type="real"/>
1206             <field name="ICZ_EAST_OR_Y" length="10" type="real"/>
1207             <field name="ICZ_DOWN_OR_Z" length="10" type="real"/>
1208         </if>
1209         <field name="ATTITUDE_QUATERNION" length="1" type="string"/>
1210         <if cond="ATTITUDE_QUATERNION=Y">
1211             <field name="ATTITUDE_Q1" length="10" type="real"/>
1212             <field name="ATTITUDE_Q2" length="10" type="real"/>
1213             <field name="ATTITUDE_Q3" length="10" type="real"/>
1214             <field name="ATTITUDE_Q4" length="10" type="real"/>
1215         </if>
1216         <field name="SENSOR_VELOCITY_DATA" length="1" type="string"/>
1217         <if cond="SENSOR_VELOCITY_DATA=Y">
1218             <field name="VELOCITY_NORTH_OR_X" length="9" type="real"/>
1219             <field name="VELOCITY_EAST_OR_Y" length="9" type="real"/>
1220             <field name="VELOCITY_DOWN_OR_Z" length="9" type="real"/>
1221         </if>
1222         <field name="POINT_SET_DATA" length="2" type="integer"/>
1223         <loop counter="POINT_SET_DATA" name="POINT_SETS" md_prefix="POINT_SET_%02d_">
1224             <field name="POINT_SET_TYPE_MM" length="25" type="string"/>
1225             <field name="POINT_COUNT_MM" length="3" type="integer"/>
1226             <loop counter="POINT_COUNT_MM" name="POINT" md_prefix="POINT_%03d_">
1227                 <field name="P_ROW_NNN" length="8" type="integer"/>
1228                 <field name="P_COLUMN_NNN" length="8" type="integer"/>
1229                 <field name="P_LATITUDE_NNN" length="10" type="string"/>
1230                 <field name="P_LONGITUDE_NNN" length="11" type="string"/>
1231                 <field name="P_ELEVATION_NNN" length="6" type="string"/>
1232                 <field name="P_RANGE_NNN" length="8" type="string"/>
1233             </loop>
1234         </loop>
1235         <field name="TIME_STAMPED_DATA_SETS" length="2" type="integer"/>
1236         <loop counter="TIME_STAMPED_DATA_SETS" name="TIME_STAMPED_SET" md_prefix="TIME_STAMPED_SET_%02d_">
1237             <field name="TIME_STAMP_TYPE_MM" length="3" type="string"/>
1238             <field name="TIME_STAMP_COUNT_MM" length="4" type="integer"/>
1239             <loop counter="TIME_STAMP_COUNT_MM" name="TIME_STAMP_COUNTS" md_prefix="TIME_STAMP_COUNT_%04d_">
1240                 <field name="TIME_STAMP_TIME_NNNN" length="12" type="real"/>
1241                 <if cond="TIME_STAMP_TYPE_MM=05a">
1242                     <field name="TIME_STAMP_VALUE_NNNN" length="12" type="real"/>
1243                 </if>
1244                 <if cond="TIME_STAMP_TYPE_MM=05b">
1245                     <field name="TIME_STAMP_VALUE_NNNN" length="8" type="integer"/>
1246                 </if>
1247                 <if cond="TIME_STAMP_TYPE_MM=05c">
1248                     <field name="TIME_STAMP_VALUE_NNNN" length="8" type="integer"/>
1249                 </if>
1250                 <if cond="TIME_STAMP_TYPE_MM=06a">
1251                     <field name="TIME_STAMP_VALUE_NNNN" length="11" type="real"/>
1252                 </if>
1253                 <if cond="TIME_STAMP_TYPE_MM=06b">
1254                     <field name="TIME_STAMP_VALUE_NNNN" length="12" type="real"/>
1255                 </if>
1256                 <if cond="TIME_STAMP_TYPE_MM=06c">
1257                     <field name="TIME_STAMP_VALUE_NNNN" length="11" type="real"/>
1258                 </if>
1259                 <if cond="TIME_STAMP_TYPE_MM=06d">
1260                     <field name="TIME_STAMP_VALUE_NNNN" length="8" type="real"/>
1261                 </if>
1262                 <if cond="TIME_STAMP_TYPE_MM=06e">
1263                     <field name="TIME_STAMP_VALUE_NNNN" length="8" type="real"/>
1264                 </if>
1265                 <if cond="TIME_STAMP_TYPE_MM=06f">
1266                     <field name="TIME_STAMP_VALUE_NNNN" length="8" type="real"/>
1267                 </if>
1268                 <if cond="TIME_STAMP_TYPE_MM=07a">
1269                     <field name="TIME_STAMP_VALUE_NNNN" length="1" type="integer"/>
1270                 </if>
1271                 <if cond="TIME_STAMP_TYPE_MM=07b">
1272                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1273                 </if>
1274                 <if cond="TIME_STAMP_TYPE_MM=07c">
1275                     <field name="TIME_STAMP_VALUE_NNNN" length="9" type="real"/>
1276                 </if>
1277                 <if cond="TIME_STAMP_TYPE_MM=07d">
1278                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1279                 </if>
1280                 <if cond="TIME_STAMP_TYPE_MM=07e">
1281                     <field name="TIME_STAMP_VALUE_NNNN" length="1" type="string"/>
1282                 </if>
1283                 <if cond="TIME_STAMP_TYPE_MM=07f">
1284                     <field name="TIME_STAMP_VALUE_NNNN" length="9" type="real"/>
1285                 </if>
1286                 <if cond="TIME_STAMP_TYPE_MM=07g">
1287                     <field name="TIME_STAMP_VALUE_NNNN" length="9" type="real"/>
1288                 </if>
1289                 <if cond="TIME_STAMP_TYPE_MM=07h">
1290                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1291                 </if>
1292                 <if cond="TIME_STAMP_TYPE_MM=08a">
1293                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1294                 </if>
1295                 <if cond="TIME_STAMP_TYPE_MM=08b">
1296                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1297                 </if>
1298                 <if cond="TIME_STAMP_TYPE_MM=08c">
1299                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1300                 </if>
1301                 <if cond="TIME_STAMP_TYPE_MM=08d">
1302                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1303                 </if>
1304                 <if cond="TIME_STAMP_TYPE_MM=08e">
1305                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1306                 </if>
1307                 <if cond="TIME_STAMP_TYPE_MM=08f">
1308                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1309                 </if>
1310                 <if cond="TIME_STAMP_TYPE_MM=08g">
1311                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1312                 </if>
1313                 <if cond="TIME_STAMP_TYPE_MM=08h">
1314                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1315                 </if>
1316                 <if cond="TIME_STAMP_TYPE_MM=08i">
1317                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1318                 </if>
1319                 <if cond="TIME_STAMP_TYPE_MM=09a">
1320                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1321                 </if>
1322                 <if cond="TIME_STAMP_TYPE_MM=09b">
1323                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1324                 </if>
1325                 <if cond="TIME_STAMP_TYPE_MM=09c">
1326                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1327                 </if>
1328                 <if cond="TIME_STAMP_TYPE_MM=09d">
1329                     <field name="TIME_STAMP_VALUE_NNNN" length="10" type="real"/>
1330                 </if>
1331                 <if cond="TIME_STAMP_TYPE_MM=10a">
1332                     <field name="TIME_STAMP_VALUE_NNNN" length="9" type="real"/>
1333                 </if>
1334                 <if cond="TIME_STAMP_TYPE_MM=10b">
1335                     <field name="TIME_STAMP_VALUE_NNNN" length="9" type="real"/>
1336                 </if>
1337                 <if cond="TIME_STAMP_TYPE_MM=10c">
1338                     <field name="TIME_STAMP_VALUE_NNNN" length="9" type="real"/>
1339                 </if>
1340             </loop>
1341         </loop>
1342         <field name="PIXEL_REFERENCED_DATA_SETS" length="2" type="integer"/>
1343         <loop counter="PIXEL_REFERENCED_DATA_SETS" name="PIXEL_REFERENCE_DATA_SET" md_prefix="PIXEL_REFERENCE_DATA_SET_%02d_">
1344             <field name="PIXEL_REFERENCE_TYPE_MM" length="3" type="string"/>
1345             <field name="PIXEL_REFERENCE_COUNT_MM" length="4" type="integer"/>
1346             <loop counter="PIXEL_REFERENCE_COUNT_MM" name="PIXEL_REFERENCE_COUNTS" md_prefix="PIXEL_REFERENCE_COUNT_%04d_">
1347                 <field name="PIXEL_REFERENCE_ROW_NNNN" length="8" type="integer"/>
1348                 <field name="PIXEL_REFERENCE_COLUMN_NNNN" length="8" type="integer"/>
1349                 <if cond="PIXEL_REFERENCE_TYPE_MM=05a">
1350                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="12" type="real"/>
1351                 </if>
1352                 <if cond="PIXEL_REFERENCE_TYPE_MM=05b">
1353                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="8" type="integer"/>
1354                 </if>
1355                 <if cond="PIXEL_REFERENCE_TYPE_MM=05c">
1356                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="8" type="integer"/>
1357                 </if>
1358                 <if cond="PIXEL_REFERENCE_TYPE_MM=06a">
1359                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="11" type="real"/>
1360                 </if>
1361                 <if cond="PIXEL_REFERENCE_TYPE_MM=06b">
1362                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="12" type="real"/>
1363                 </if>
1364                 <if cond="PIXEL_REFERENCE_TYPE_MM=06c">
1365                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="11" type="real"/>
1366                 </if>
1367                 <if cond="PIXEL_REFERENCE_TYPE_MM=06d">
1368                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="8" type="real"/>
1369                 </if>
1370                 <if cond="PIXEL_REFERENCE_TYPE_MM=06e">
1371                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="8" type="real"/>
1372                 </if>
1373                 <if cond="PIXEL_REFERENCE_TYPE_MM=06f">
1374                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="8" type="real"/>
1375                 </if>
1376                 <if cond="PIXEL_REFERENCE_TYPE_MM=07a">
1377                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="1" type="integer"/>
1378                 </if>
1379                 <if cond="PIXEL_REFERENCE_TYPE_MM=07b">
1380                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1381                 </if>
1382                 <if cond="PIXEL_REFERENCE_TYPE_MM=07c">
1383                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="9" type="real"/>
1384                 </if>
1385                 <if cond="PIXEL_REFERENCE_TYPE_MM=07d">
1386                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1387                 </if>
1388                 <if cond="PIXEL_REFERENCE_TYPE_MM=07e">
1389                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="1" type="string"/>
1390                 </if>
1391                 <if cond="PIXEL_REFERENCE_TYPE_MM=07f">
1392                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="9" type="real"/>
1393                 </if>
1394                 <if cond="PIXEL_REFERENCE_TYPE_MM=07g">
1395                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="9" type="real"/>
1396                 </if>
1397                 <if cond="PIXEL_REFERENCE_TYPE_MM=07h">
1398                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1399                 </if>
1400                 <if cond="PIXEL_REFERENCE_TYPE_MM=08a">
1401                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1402                 </if>
1403                 <if cond="PIXEL_REFERENCE_TYPE_MM=08b">
1404                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1405                 </if>
1406                 <if cond="PIXEL_REFERENCE_TYPE_MM=08c">
1407                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1408                 </if>
1409                 <if cond="PIXEL_REFERENCE_TYPE_MM=08d">
1410                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1411                 </if>
1412                 <if cond="PIXEL_REFERENCE_TYPE_MM=08e">
1413                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1414                 </if>
1415                 <if cond="PIXEL_REFERENCE_TYPE_MM=08f">
1416                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1417                 </if>
1418                 <if cond="PIXEL_REFERENCE_TYPE_MM=08g">
1419                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1420                 </if>
1421                 <if cond="PIXEL_REFERENCE_TYPE_MM=08h">
1422                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1423                 </if>
1424                 <if cond="PIXEL_REFERENCE_TYPE_MM=08i">
1425                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1426                 </if>
1427                 <if cond="PIXEL_REFERENCE_TYPE_MM=09a">
1428                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1429                 </if>
1430                 <if cond="PIXEL_REFERENCE_TYPE_MM=09b">
1431                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1432                 </if>
1433                 <if cond="PIXEL_REFERENCE_TYPE_MM=09c">
1434                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1435                 </if>
1436                 <if cond="PIXEL_REFERENCE_TYPE_MM=09d">
1437                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="10" type="real"/>
1438                 </if>
1439                 <if cond="PIXEL_REFERENCE_TYPE_MM=10a">
1440                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="9" type="real"/>
1441                 </if>
1442                 <if cond="PIXEL_REFERENCE_TYPE_MM=10b">
1443                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="9" type="real"/>
1444                 </if>
1445                 <if cond="PIXEL_REFERENCE_TYPE_MM=10c">
1446                     <field name="PIXEL_REFERENCE_VALUE_NNNN" length="9" type="real"/>
1447                 </if>
1448             </loop>
1449         </loop>
1450         <field name="UNCERTAINTY_DATA" length="3" type="integer"/>
1451         <loop counter="UNCERTAINTY_DATA" name="UNCERTAINTY_DATA_SETS" md_prefix="UNCERTAINTY_DATA_%03d_">
1452             <field name="UNCERTAINTY_FIRST_TYPE_NNN" length="11" type="string"/>
1453             <field name="UNCERTAINTY_SECOND_TYPE_NNN" length="11" type="string"/>
1454             <field name="UNCERTAINTY_VALUE_NNN" length="10" type="string"/>
1455         </loop>
1456         <field name="ADDITIONAL_PARAMETER_DATA" length="3" type="integer"/>
1457         <loop counter="ADDITIONAL_PARAMETER_DATA" name="ADDITIONAL_PARAMETER_DATA_SETS" md_prefix="ADDITIONAL_PARAMETER_DATA_%03d_">
1458             <field name="PARAMETER_NAME_MMM" length="25" type="string"/>
1459             <field name="PARAMETER_SIZE_MMM" length="3" type="integer"/>
1460             <field name="PARAMETER_COUNT_MMM" length="4" type="integer"/>
1461             <loop counter="PARAMETER_COUNT_MMM" name="ADDITIONAL_PARAMETER_VALUES" md_prefix="PARAMETER_VALUE_%04d">
1462                 <field name="PARAMETER_VALUE_NNNN" length_var="PARAMETER_SIZE_MMM" type="string"/>
1463             </loop>
1464         </loop>
1465     </tre>
1466
1467     <tre name="SOURCB" minlength="906" maxlength="99985" location="image">
1468         <field name="IS_SCA" length="9" type="integer"/>
1469         <field name="CPATCH" length="10" type="string"/>
1470         <field name="NUM_SOUR" length="2" type="integer" minval="1"/>
1471         <loop counter="NUM_SOUR" name="SOURCE" md_prefix="SOURCE_%02d_">
1472             <field name="NUM_BP" length="2" type="integer"/>
1473             <loop counter="NUM_BP" name="BP" md_prefix="BP_%02d_">
1474                 <field name="NUM_PTS" length="3" type="integer"/>
1475                 <loop counter="NUM_PTS" md_prefix="POINT_%03d_" name="POINT">
1476                     <field name="LON" length="15" type="real"/>
1477                     <field name="LAT" length="15" type="real"/>
1478                 </loop>
1479             </loop>
1480             <field name="PRT" length="10" type="string"/>
1481             <field name="URF" length="20" type="string"/>
1482             <field name="EDN" length="7" type="string"/>
1483             <field name="NAM" length="20" type="string"/>
1484             <field name="CDP" length="3" type="integer"/>
1485             <field name="CDV" length="8" type="string"/>
1486             <field name="CDV27" length="8" type="string"/>
1487             <field name="SRN" length="80" type="string"/>
1488             <field name="SCA" length="9" type="integer"/>
1489             <field name="UNISQU" length="3" type="string"/>
1490             <if cond="UNISQU!=">
1491                 <field name="SQU" length="10" type="integer"/>
1492             </if>
1493             <field name="UNIPCI" length="3" type="string"/>
1494             <if cond="UNIPCI!=">
1495                 <field name="PCI" length="4" type="integer"/>
1496             </if>
1497             <field name="WPC" length="3" type="integer"/>
1498             <field name="NST" length="3" type="integer"/>
1499             <field name="UNIHKE" length="3" type="string"/>
1500             <if cond="UNIHKE!=">
1501                 <field name="HKE" length="6" type="integer"/>
1502                 <field name="LONHKE" length="15" type="real"/>
1503                 <field name="LATHKE" length="15" type="real"/>
1504             </if>
1505             <field name="QSS" length="1" type="string"/>
1506             <field name="QOD" length="1" type="string"/>
1507             <if cond="QSS!=U AND QOD!=Y">                           <!--Warning: this condition is currently hardcoded in the interpreter -->
1508                 <field name="CDV10" length="8" type="string"/>
1509             </if>
1510             <field name="QLE" length="80" type="string"/>
1511             <field name="CPY" length="80" type="string"/>
1512             <field name="NMI" length="2" type="integer"/>
1513             <loop counter="NMI" name="MI" md_prefix="MI_%02d_">
1514                 <field name="CDV30" length="8" type="string"/>
1515                 <field name="UNIRAT" length="3" type="string"/>
1516                 <field name="RAT" length="8" type="real"/>
1517                 <field name="UNIGMA" length="3" type="string"/>
1518                 <field name="GMA" length="8" type="real"/>
1519                 <field name="LONGMA" length="15" type="real"/>
1520                 <field name="LATGMA" length="15" type="real"/>
1521                 <field name="UNIGCA" length="3" type="string"/>
1522                 <if cond="UNIGCA!=">
1523                     <field name="GCA" length="8" type="real"/>
1524                 </if>
1525             </loop>
1526             <field name="NLI" length="2" type="integer"/>
1527             <loop counter="NLI" name="LI" md_prefix="LI_%02d_">
1528                 <field name="BAD" length="10" type="string"/>
1529             </loop>
1530             <field name="DAG" length="80" type="string"/>
1531             <field name="DCD" length="4" type="string"/>
1532             <field name="ELL" length="80" type="string"/>
1533             <field name="ELC" length="3" type="string"/>
1534             <field name="DVR" length="80" type="string"/>
1535             <field name="VDCDVR" length="4" type="string"/>
1536             <field name="SDA" length="80" type="string"/>
1537             <field name="VDCSDA" length="4" type="string"/>
1538             <field name="PRN" length="80" type="string"/>
1539             <field name="PCO" length="2" type="string"/>
1540             <field name="NUM_PRJ" length="1" type="integer"/>
1541             <loop counter="NUM_PRJ" name="PRJ" md_prefix="PRJ_%d">
1542                 <field name="" longname="PRJ" length="15" type="real"/>
1543             </loop>
1544             <field name="XOR" length="15" type="integer" minval="0"/>
1545             <field name="YOR" length="15" type="integer" minval="0"/>
1546             <field name="GRD" length="3" type="string"/>
1547             <field name="GRN" length="80" type="string"/>
1548             <field name="ZNA" length="4" type="integer" minval="0"/>
1549             <field name="NIN" length="2" type="integer"/>
1550             <loop counter="NIN" name="IN" md_prefix="IN_%02d_">
1551                 <field name="INT" length="10" type="string"/>
1552                 <field name="INS_SCA" length="9" type="integer"/>
1553                 <field name="NTL" length="15" type="real"/>
1554                 <field name="TTL" length="15" type="real"/>
1555                 <field name="NVL" length="15" type="real"/>
1556                 <field name="TVL" length="15" type="real"/>
1557                 <field name="NTR" length="15" type="real"/>
1558                 <field name="TTR" length="15" type="real"/>
1559                 <field name="NVR" length="15" type="real"/>
1560                 <field name="TVR" length="15" type="real"/>
1561                 <field name="NRL" length="15" type="real"/>
1562                 <field name="TRL" length="15" type="real"/>
1563                 <field name="NSL" length="15" type="real"/>
1564                 <field name="TSL" length="15" type="real"/>
1565                 <field name="NRR" length="15" type="real"/>
1566                 <field name="TRR" length="15" type="real"/>
1567                 <field name="NSR" length="15" type="real"/>
1568                 <field name="TSR" length="15" type="real"/>
1569             </loop>
1570         </loop>
1571     </tre>
1572
1573     <tre name="STDIDC" md_prefix="NITF_STDIDC_" length="89" location="image">
1574         <field name="ACQUISITION_DATE" length="14"/>
1575         <field name="MISSION" length="14"/>
1576         <field name="PASS" length="2"/>
1577         <field name="OP_NUM" length="3"/>
1578         <field name="START_SEGMENT" length="2"/>
1579         <field name="REPRO_NUM" length="2"/>
1580         <field name="REPLAY_REGEN" length="3"/>
1581         <field length="1"/>
1582         <field name="START_COLUMN" length="3"/>
1583         <field name="START_ROW" length="5"/>
1584         <field name="END_SEGMENT" length="2"/>
1585         <field name="END_COLUMN" length="3"/>
1586         <field name="END_ROW" length="5"/>
1587         <field name="COUNTRY" length="2"/>
1588         <field name="WAC" length="4"/>
1589         <field name="LOCATION" length="11"/>
1590         <field length="5"/>
1591         <field length="8"/>
1592     </tre>
1593
1594     <tre name="STREOB" length="94" location="image">
1595         <field name="ST_ID" length="60" type="string"/>
1596         <field name="N_MATES" length="1" type="integer"/>
1597         <field name="MATE_INSTANCE" length="1" type="integer"/>
1598         <field name="B_CONV" length="5" type="real"/>
1599         <field name="E_CONV" length="5" type="real"/>
1600         <field name="B_ASYM" length="5" type="real"/>
1601         <field name="E_ASYM" length="5" type="real"/>
1602         <field name="B_BIE" length="6" type="real"/>
1603         <field name="E_BIE" length="6" type="real"/>
1604     </tre>
1605
1606     <tre name="USE00A" md_prefix="NITF_USE00A_" length="107" location="image">
1607         <field name="ANGLE_TO_NORTH" length="3"/>
1608         <field name="MEAN_GSD" length="5"/>
1609         <field length="1"/>
1610         <field name="DYNAMIC_RANGE" length="5"/>
1611         <field length="3"/>
1612         <field length="1"/>
1613         <field length="3"/>
1614         <field name="OBL_ANG" length="5"/>
1615         <field name="ROLL_ANG" length="6"/>
1616         <field length="12"/>
1617         <field length="15"/>
1618         <field length="4"/>
1619         <field length="1"/>
1620         <field length="3"/>
1621         <field length="1"/>
1622         <field length="1"/>
1623         <field name="N_REF" length="2"/>
1624         <field name="REV_NUM" length="5"/>
1625         <field name="N_SEG" length="3"/>
1626         <field name="MAX_LP_SEG" length="6"/>
1627         <field length="6"/>
1628         <field length="6"/>
1629         <field name="SUN_EL" length="5"/>
1630         <field name="SUN_AZ" length="5"/>
1631     </tre>
1632
1633 </tres>