WPC ? 2BV[Z #|m2cpi (M)LtTddd,dp@~rQ@HP LaserJet IIIDHPLASIII.PRSdp@~rQ,\,Bj@#|m2 ZMvpHP LaserJet IIIHPLASIII.PRSx  @,\,BjX@a8DocumentgDocument Style StyleXX` `  ` a4DocumentgDocument Style Style . 2kk*v:a6DocumentgDocument Style Style GX  a5DocumentgDocument Style Style }X(# a2DocumentgDocument Style Style<o   ?  A.  a7DocumentgDocument Style StyleyXX` ` (#` 2:tV  BibliogrphyBibliography:X (# a1Right ParRight-Aligned Paragraph Numbers:`S@ I.  X(# a2Right ParRight-Aligned Paragraph Numbers C @` A. ` ` (#` a3DocumentgDocument Style Style B b  ?  1.  2T l   a3Right ParRight-Aligned Paragraph Numbers L! ` ` @P 1. ` `  (# a4Right ParRight-Aligned Paragraph Numbers Uj` `  @ a. ` (# a5Right ParRight-Aligned Paragraph Numbers _o` `  @h(1)  hh#(#h a6Right ParRight-Aligned Paragraph Numbersh` `  hh#@$(a) hh#((# 2& V / + a7Right ParRight-Aligned Paragraph NumberspfJ` `  hh#(@*i) (h-(# a8Right ParRight-Aligned Paragraph NumbersyW"3!` `  hh#(-@p/a) -pp2(#p a1DocumentgDocument Style StyleXqq   l ^) I. ׃  Doc InitInitialize Document Style  0*0*  I. A. 1. a.(1)(a) i) a) I. 1. A. a.(1)(a) i) a)Documentg2XXfTech InitInitialize Technical Style. k I. A. 1. a.(1)(a) i) a) 1 .1 .1 .1 .1 .1 .1 .1 Technicala5TechnicalTechnical Document Style)WD (1) . a6TechnicalTechnical Document Style)D (a) . a2TechnicalTechnical Document Style<6  ?  A.   2FUa3TechnicalTechnical Document Style9Wg  2  1.   a4TechnicalTechnical Document Style8bv{ 2  a.   a1TechnicalTechnical Document StyleF!<  ?  I.   a7TechnicalTechnical Document Style(@D i) . 2! Aa8TechnicalTechnical Document Style(D a) . PleadingHeader for numbered pleading paperP@n   $] X X` hp x (#%'0*,.8135@8:``((Z(````;S>`]]]PJSJ8iiiii8888iiiiiiSif({Z{Z{Z{Z{ZuZ`Z`Z`Z`Z.(.(.(.(x`````x`x`x`x`r]{Zx```r]x`c`{Z{Z{ZuZuZuZuZx``Z`Z`Z`Z{`{`{`{`{`{`x`x`.(.(.(.(P]oZZ(Z(Z(Z=Z(x`xrx`x```l;l;l;lSlSlSlSi>i>i>x`x`x`x`x`x`r]fPfPfPx`Z(x`l;lSi>r]r]x``x`8SS888/NxxxSii8V]]iiiDDiAASSiA88SSi>>iiffSSxSrff]8SSA"xxSxXxxS姧 S88xcxxxxxxxxxxx8S{i]ix{S8ixSi`xlxxxxxxxxxxZxxxxxxofxGcxxxxxxxSxxxxxxxJxxxxJxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx8xxx8xxx8xxx8xxxxxxxxxxxxx{]iZ]S{Z`MfGx`Z.(oS{V]x]iG`x`cZccJiMrZuxPr{]M`((`ZZZ]rr88iiiiiii]]]]]]]]]]]]]]]]]]]MMMMMMM````````````````````((((((((((((```````ZZZZZZZZZZZZ8`{`x.r{SJ824"&t+0"m'^,,CTTe,,,T,,,,TTTTTTTTTT,,EcT^`MJc`%JYHy`eOhVVT```[Q,,,CC,HMHMH1MM H tMMMM/C1MJtJJ@;C;,TTTTT,,,,TTTTTTCTQ cHcHcHcHcHr^HMHMHMHMH% % % % `MeMeMeMeM`M`M`M`M[JcH`MeMeM[J`MOMcHcHcH^H^H^H^H`MMHMHMHMHcMcMcMcMcMcM`M`M% % % % l@JYHH H H H0H `M`[`M`MeMeMyV/V/V/VCVCVCVCT1T1T1`M`M`M`M`M`Mt[JQ@Q@Q@`MH `MV/VCT1[J[J`MeM`M,CC,,,/N```CTT,EJJTTT66T44CCT4,,CCT11TTRReCC`C[{{QQK,CC4"``C`F``C充C,,`O``````````x,CcTJT`cC,T`CTM`hV``````````H``````oYQh`9O```````C```````;````;```````````````````````````````````````````,```,```,```,`````````````cJTHJCcHM>Q9`MeH% YCcEyJ`JT9eM`MOHOO;T>[Hm^`@j[ceJ>M MHHeHJe[[,,TTTTTTTJJJJJJJJJJJJJJJJJJJ>>>>>>>MMMMMMMMMMMMMMMMMMMM MMMMMMMHHHHHHHHHHHHeeeeeeeeeeeeeeeeeeee,McM`%e[cC;,"m'^88Vii888i8888iiiiiiiiii88V{iux`]{x.]oZxcllixxxrf888SS8Z`Z`Z>``((Z(````;S>`]]]PSSS8iiiii8888iiiiiiSif({Z{Z{Z{Z{ZuZ`Z`Z`Z`Z.(.(.(.(x`````x`x`x`x`r]{Zx```r]x`c`{Z{Z{ZuZuZuZuZx``Z`Z`Z`Z{`{`{`{`{`{`x`x`.(.(.(.(P]oZZ(Z(Z(ZAZ.x`xxx`x```l;l;l;lSlSlSlSi>i>i>x`x`x`x`x`x`r]fPfPfPx`Z(x`l;lSi>r]r]x``x`8SS888/NxxxSii8V]]iiiDDiAASSiA88SSi>>iiffSSxSrff]8SSA"xxSx]xxS姧 S88xfxxxxxxxxxxx8S{ici{P8ix]i`xrxxxxxxxxxxSxxxxxxofxGcxxxxxxxSxxxxxxxSxxxxSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx8xxx8xxx8xxx8xxxxxxxxxxxxx{`ic]S{``SfMx`f.+oS{Scx]xP`fc`flMiMrcxx]x`S`++`cc`lrx88iiiiiii```````````````````SSSSSSS````````````````````++++++++++++```````cccccccccccc8f{`x.rSJ8"m'^,,ETTe,,,T,,,,TTTTTTTTTT,,EcT^`MJc`%JYHy`eOhVVT```[Q,,,CC,HMHMH1MM H tMMMM/C1MJtJJ@CCC,TTTTT,,,,TTTTTTCTQ cHcHcHcHcHr^HMHMHMHMH% % % % `MeMeMeMeM`M`M`M`M[JcH`MeMeM[J`MOMcHcHcH^H^H^H^H`MMHMHMHMHcMcMcMcMcMcM`M`M% % % % o@JYHH H H H4H%`M```M`MeMeMyV/V/V/VCVCVCVCT1T1T1`M`M`M`M`M`Mt[JQ@Q@Q@`MH `MV/VCT1[J[J`MeM`M,CC,,,/N```CTT,EJJTTT66T44CCT4,,CCT11TTRReCC`C[{{QQK,CC4"``C`J``C充C,,`Q``````````x,CcTOTmc@,T`JTM`h[``````````C``````tYQh`9O```````C```````C````C```````````````````````````````````````````,```,```,```,`````````````cMTOJCcMMCQ>`MeQ%#YCcCyO`J`@eMmQOMQV>T>[O{``J{`mhMCM##MOOhMVh[`,,TTTTTTTMMMMMMMMMMMMMMMMMMMCCCCCCCMMMMMMMMMMMMMMMMMMMM############MMMMMMMOOOOOOOOOOOOhhhhhhhhhhhhhhhhhhhh,QcM`%e[mC;,"m'^,,CTTe,,,T,,,,TTTTTTTTTT,,EcT^`MJc`%JYHy`eOhVVT```[Q,,,CC,HMHMH1MM H tMMMM/C1MJtJJ@;C;, TTTTT,,,,TTTTTTCTQ cHcHcHcHcHr^HMHMHMHMH% % % % `MeMeMeMeM`M`M`M`M[JcH`MeMeM[J`MOMcHcHcH^H^H^H^H`MMHMHMHMHcMcMcMcMcMcM`M`M% % % % j@JYHH H H H*H `M`c`M`MeMeMyV/V/V/VCVCVCVCT1T1T1`M`M`M`M`M`Mt[JQ@Q@Q@`MH `MV/VCT1[J[J`MeM`M,CC,,,/N```CTT,EJJTTT66T44CCT4,,CCT11TTRReCC`C[{{QQK,CC4"``C`I``C充 C,,`O``````````x,CcTJT`cC,T`CTM`hV``````````H``````oYQh`9O```````C```````;````;```````````````````````````````````````````,```,```,```,`````````````cJTHJCcHM>Q9`MeH% YCcEyJ`JT9eM`MOHOO;T>[Hm^`@j[ceJ>M MHHeHJe[[,,TTTTTTTJJJJJJJJJJJJJJJJJJJ>>>>>>>MMMMMMMMMMMMMMMMMMMM MMMMMMMHHHHHHHHHHHHeeeeeeeeeeeeeeeeeeee,McM`%e[cC;,2> 4^9> R"m'^CCh~~ȘCCC~CCCC~~~~~~~~~~CChȔ~so8okw~ȐzCCCddCkskskJss00k0ssssFdJsooo`dddC~~~~~CCCC~~~~~~d~z0kkkkkĪksksksksk80808080sssssssssoksssoswskkkkkkksskskskskssssssss80808080`okk0k0k0kNk8sssssȵFFFdddd~J~J~JssssssȮoz`z`z`sk0sFd~JoosssCddCCC/Nd~~Choo~~~QQ~NNdd~NCCdd~JJ~~zzdddzzpCddN"Ȑdod dCCȐzȐxCd~w~ȣȔ`C~o~sȐdȐȐȮzȐUwŐdȐddCCCCΔs~wodssdz]sz84ddwo`szwsz]~]wosds44swwsCC~~~~~~~sssssssssssssssssssdddddddssssssssssssssssssss444444444444ssssssswwwwwwwwwwwwCzs8dYC?xxx,wx6X@8;X@ tTddd,Wmdp@>pQ@tTddd,'dphQQH12~CC,GqX~xP7XP 2}*i88,GAixP7P3d!T,,,GQTxP7P*}*i88,Zhip?7-d!T,,,ZxTp?7d.d!T,,,reTx7X?xxx,x `B;X2~CC,ZXhX~p?7X?xxx,Ax6Nh ;XHLtTddd,wldp@~rQ@Courier 10cpiPrestige Elite 12cpi (D)Prestige Elite 12cpi Italic (D)Univers (Scalable)Univers Bold (Scalable)Univers Italic (Scalable)Courier 10cpi (Bold)Courier 10cpi (Italic)Prestige Elite 12cpi (M)2?#dp@>pQWm@#X` hp x (#%'0*,.8135@8:pQWm@#Programmers Reference Manual for FIPS PUB 123 Function Library Appendix B: Overview of FIPS PUB 123 (ISO 8211)    tT 3/93` `  !hh&,1pp7<  BxxG M BՊ )Appendix B  Overview of FIPS PUB 123 (ISO 8211) <0*$$  tT B.` ` OVERVIEW OF FIPS PUB 123 (ISO 8211)  tTX ` ` This appendix presents an overview of the Specification for a Data  tT Descriptive File for Information Interchange (FIPS PUB 123) and is intended to supplement the standard to facilitate its understanding and use. Definitions of terms are provided in the glossary contained in appendix A. Please refer to FIPS PUB 123 for more detailed definitions and explanations.(#`  tT B.1` ` DATA DESCRIPTIVE INTERCHANGE FILE STRUCTURE ` ` A Data Descriptive File (DDF) is a continuous stream of ASCII characters which comprises two types of logical records: a Data Descriptive Record (DDR), followed by any number of Data Records (DR). Figure B1 depicts a schematic of the structure of a DDF in conformance with the FIPS PUB 123 standard. This figure also shows a decomposition of the two types of records into a leader, a directory, and a data area. The ISO standard file labels depicted are not part of the file but are external labels or information.(#` ` ` FIPS PUB 123 uses the concept of fields and subfields. A subfield is the basic element of data. A field comprises one or more subfields delimited by a unit terminator and terminated with a field terminator.(#` 0*$$ !L <ddؒL\"*Jؒd#dp@>pQWm@# Figure B1 . FIPS PUB 123 File Structure. $(#(#(#(#!'#$00*$$'#O-!0Ԓ` ` There are four basic delimiters used in FIPS PUB 123 interchange files. Two of the delimiters are nonprintable characters. The two characters are defined as ASCII characters 30 and 31 (decimal value) corresponding to the field terminator and unit terminator, respectively. The user may specify printable characters to be substituted for these delimiters for display purposes. The characters '!' and '*' have also been reserved for use by the standard.(#`  tT B.2` ` DATA DESCRIPTIVE RECORD (DDR)(#` ` ` The DDR describes, and is used to control, the reading and writing of the DRs which follow. Figure B2 provides an expanded schematic of a DDR. An extract of a DDF is provided in example 1.A Ln!J<<ddL\"*ؒk#dp@>pQWm@# Figure B2 Expanded Logical Schematic of a DDR.~a Ln!JLddؒEX1.DOCL\"*ؒ tT #dp@>pQWm@# Example 1 r An Extract of an Example Interchange File.  S  X, #X~xP7qXP#DDR Leader  ? #x6X@8;wX@#  }KA #ixP7AP#024503L 0600454 4504  S #X~xP7qXP#DDR Directory  ? #x6X@8;wX@#  }K #ixP7AP#DDR Directory Entry 20 #ixP7AP#00000287000000001003000287CATX006600317CATS007000383IDEN009200453THDS004000545; DDR Data Descriptive Area 2 0000;&DLG-Optional/SDTS Transfer File&0001CATX 0001CATS0001IDEN0001THDS0001IREF0001XREF0001SPDM0001DMSA0001DDDF0001DDEA0001DDOM0001STAT0001PNTS0001LINE0001POLYPOLYRFID0001LNIDRFIDLFID0001SADR0001PIDL0001PIDR0001SNID0001ENID0001AT00AT00AV00AV00AT01AT01AV01AV01AT02AT02AV02AV02AT03AT03AV03; 1000;&DDF RECORD IDENTIFIER&&; 2600;&CATALOG/CROSS REFERENCE&*MODN !NAM1!TYP1!NAM2!TYP2!COMT&(6A); 2600;&CATALOG/SPATIAL DOMAIN&*MODN !NAME!TYPE!DOMN!MAP !THEM!COMT&(7A); 1600;&IDENTIFICATION&MODN!STID!STVS !DOCU!TITL!DAID!DOMD!DAST!MPD1!MPD2 !SCA1!SCA2!COMT&(13A); 2000;&THEME DESCRIPTION&*NAME!DSCR& (2A);~(#` ` ` The DDR leader comprises 24 bytes and occurs at the beginning of the record. Each byte or group of bytes represents parameters for processing the record. The first five bytes (relative positions 04) contain the length of the DDR. The DDR leader also includes the fields listed below which are further described in the following paragraphs in conjunction with other elements of the DDR:(#` @(#0*$$!'#O-A'#O-a@Ԍ$(#(#(#(#A'#$@0*$$!'#O-A'#O-a@Ԓ$(#(#(#(#a'#$00*$$'#O-a0Ԓ` `     tT, ` `  Field!hh&,1pp7<  BxxGPosition  tT ` `   !hh&,1pp7<  BxxG(Byte) ` `    ` `   tTL ` `  Interchange level,1pp7<  BxxG5  tTx ` `  Leader identifier,1pp7<  BxxG6  tT ` `  Inline code extension indicator<  BxxG7  tT ` `  Application indicator1pp7<  BxxG9  tT ` `  Field control length1pp7<  BxxG1011  tT( ` `  Base address of data descriptive<  tTT ` `   areahh&,1pp7<  BxxG1216  tT ` `  Extended character set indicator<  BxxG1719  tT ` `  Entry maphh&,1pp7<  BxxG2023 ` `    ` ` The next component of the DDR is the directory. The directory is made up of 1 to n entries, each of which specifies the location and length of a corresponding DDF. Each entry comprises a field tag, length, and position; the lengths of each are determined by the entry map which is part of the leader:(#`  tT8 ` ` X oX!The first byte of the entry map specifies the size (in bytes) of the field length of a directory entry(#  tT ` ` X oX!The second byte specifies the size of the field position(#  tT ` ` X oX!The third byte is reserved for future use(#  tTl ` ` X oX!The fourth byte specifies the size of the field tag (in bytes).(# "0*$$Ԍ` ` Each directory entry consists of the tag value followed by the field length, followed by the field position. The entry map of '4504', as shown in example 1, specifies the following format for each directory entry:(#` ` `    ` `  !hh&,1pp7<  BxxGPosition  tTl ` `  Field!hh&,1Sizepp7<  BxxG(bytes) ` `     tT ` `  Tag valuehh&,1 4pp7<  BxxG03  tT ` `  Field length,1 4pp7<  BxxG47  tT ` `  Field position,1 5pp7<  BxxG812 ` `    ` ` Referring to example 1, the tag for the first directory entry is '0000'; the field length is '0287'; and the field position is '00000'. Together they make up entry '0000028700000'. The next entry is '0001003000287'. These directory entries specify how the data descriptive fields which follow are to be interpreted.(#` ` ` The data descriptive area shown in figure B2 begins with a file control field and a data description of record identifier field, followed by data descriptive fields. (#` ` ` The data following the partial directory shown in example 1 is part of the data descriptive area. Per the first directory entry, the file control field has a tag of 0000. It is 287 bytes in length and begins at position 00000 relative to the base address of the data descriptive data area. The record identifier field has a tag of 1000, is 287 bytes in length, and begins at position 00300. The (#` `"0*$$Ԍ` ` first data descriptive field which describes a DR data value field has a tag of CATX, a field length of 317 bytes, and begins at relative position 00060.(#`  tT  ` ` Example 2 shows a complete DDR. Carriage returns have been inserted to separate the leader, directory, and each field of the data descriptive area. The printable characters ';' and '&' represent the field and unit terminator, respectively.(#` ` ` Relative byte position 5 of the leader contains the interchange level of the DDF. The interchange level may have a value of 1, 2, or 3, defined as follows:(#`  tT< ` `  o` !Level 1contains only elementary character data fields; that is, it contains no compound data and no hierarchical data(#  tT ` `  o` !Level 2contains compound data fields but no hierarchical data(#  tTp h Ln!JLl ddؒEX2.DOC L\"*ؒ|#dp@>pQWm@# Example 2 Extract of an Interchange File Showing a Complete DDR.#TxP7QP# X,  024503L 0600454 4504 00000287000000001003000287CATX006600317CATS007000383IDEN009200453THDS004000545IREF011900585XREF007800704SPDM005100782DMSA004500833DDDF007300878DDEA006900951DDOM006401020STAT006101084PNTS003901145LINE003301184POLY004101217RFID005201258LNID004801310LFID005301358SADR004401411PIDL005201455PIDR005301507SNID004901560ENID004701609AT00005301656AV00003201709AT01005301741AV01003201794AT02005301826AV02003201879AT03005301911AV03003201964; 0000;&DLG-Optional/SDTS Transfer File&0001CATX0001CATS0001IDEN0001 THDS0001IREF0001XREF0001SPDM0001DMSA0001DDDF0001DDEA0001DDOM0001STAT0001PNTS0001LINE0001POLYPOLYRFID0001LNIDRFIDLFID0001SADR0001PIDL0001PIDR0001SNID0001ENID0001AT00AT00AV00AV00AT01AT01AV01AV01AT02AT02AV02AV02AT03AT03AV03; 1000;&DDF RECORD IDENTIFIER&&; 2600;&CATALOG/CROSS REFERENCE&*MODN!NAM1!TYP1!NAM2!TYP2!COMT& (6A); 2600;&CATALOG/SPATIAL DOMAIN&*MODN!NAME!TYPE!DOMN!MAP !THEM !COMT&(7A); 1600;&IDENTIFICATION&MODN!STID!STVS!DOCU!TITL!DAID!DOMD!DAST!MPD1 !MPD2!SCA1!SCA2!COMT&(13A); 2000;&THEME DESCRIPTION&*NAME!DSCR&(2A); 1600;&INTERNAL SPATIAL REFERENCE&MODN!COMT!SATP!SFMT!HFMT!VFMT !SFAX!SFAY!SFAZ!XORG!YORG!ZORG!XHRS!YHRS!VRES&(6A,6R,3A); 1600;&EXTERNAL SPATIAL REFERENCE&MODN!COMT!RDOC!RSNM!VDAT !SDAT!HDAT!ZONE&(8A); 1600;&SPATIAL DOMAIN&MODN!DTYP!DSTP!DSFT!COMT&(5A); 2600;&Spatial Address&*Easting!Northing&(2A); 1000;&DATA DICTIONARY/DEFINITION&MODN!EORA!EALB!SRCE!DFIN!AUTH !ADSC&(7A); 1000;&DATA DICTIONARY/ENTITY-ATTRIBUTE&MODN!ETLB!EUTH!ATLB !AUTH&(5A); 1000;&DATADICTIONARY/DOMAIN&MODN!ATLB!ADVF!ADMU!RAEN !DVAL&(6A); h` ` X oX!Level 3contains compound data fields and a list of tag pairs describing hierarchical structures.(#  Ln!J<dd'm L\"*'m#dp@>pQWm@# Example 2Continued Extract of an Interchange File Showing a Complete DDR.#TxP7QP# X,  1600;&TRANSFER STATISTICS&MODN!MNRF!MTRF!NREC!NSAD!NATT&(6A); 1600;&POINT-NODE&MODN!OBRP!OBID&(2A,I); 1600;&LINE&MODN!OBRP!OBID&(2A,I); 1600;&POLYGON-RING&MODN!OBRP!OBID&(2A,I); 1600;&Ring Foreign Id&MODN!OBRP!OBID!USAG&(2A,I,1A); 2600;&foreign id&*MODN!OBRP!OBID!USAG&(2A,I,1A); 2600;&Line Foreign Id&*MODN!OBRP!OBID!USAG&(2A,I,1A); 2600;&Spatial Address&*Easting!Northing&(R); 1600;&Polygon ID Left&MODN!OBRP!OBID!USAG&(2A,I,1A); 1600;&Polygon ID Right&MODN!OBRP!OBID!USAG&(2A,I,1A); 1600;&Startnode ID&MODN!OBRP!OBID!USAG&(2A,I,1A); 1600;&Endnode ID&MODN!OBRP!OBID!USAG&(2A,I,1A); 2600;&ATTRIBUTE DEFINITION&*ATLB!AUTH!AFMT!AUNT&(4A); 2600;&ATTRIBUTE VALUE&*ATVL&(A); 2600;&ATTRIBUTE DEFINITION&*ATLB!AUTH!AFMT!AUNT&(4A); 2600;&ATTRIBUTE VALUE&*ATVL&(A); 2600;&ATTRIBUTE DEFINITION&*ATLB!AUTH!AFMT!AUNT&(4A); 2600;&ATTRIBUTE VALUE&*ATVL&(A); 2600;&ATTRIBUTE DEFINITION&*ATLB!AUTH!AFMT!AUNT&(4A); 2600;&ATTRIBUTE VALUE&*ATVL&(A); ` ` The data descriptive area fields describe the DR fields which follow the DDR. Each DR field must have a corresponding descriptive entry in the DDR. (#` ` ` In a level 1 file, the DDR data descriptive field contains only a field label, and the DRs contain the value. Possible data types include character, implicit point, explicit point, scaled, and character mode list string, as shown by example 3.(#` @(# 0*$$!'#O- '#O- @Ԍ$(#(#(#(#'#$@ 0*$$!'#O- '#O- @Ԓ$(#(#(#(#'#$0 0*$$'#O- 0Ԓ<|J< dd'm <*'me#dp@>pQWm@#  Example 3 Possible Elementary Data Types. #ixP7AP#   }K  Example` `  !hh&Field Contents  }K@  ` `  !DDRhh&,1DR  }K  1` `  !AUTHOR;,1Doe,Jane;  }K  2` `  !AGE;hh&,124;  }K`  3` `  !HEIGHT;,15.5;  }K(  4` `  !WEIGHT;,12.45E2;  }K  5` `  !BITSTR;,1010101;$(#(#(#(#'#$ ` ` Table B1 specifies the format of the compound data structures for interchange level 2 or 3. The structure types are elementary, vector, and array. (#` ` ` Figure B3 provides a further expansion of the schematic for a level 2 interchange file, in which each DDF is broken into its components. For an interchange level 2 or 3 file, the subfields of a DDR data descriptive field are field control, name, vector or Cartesian label, and format controls. The field control subfield must be present for a compound data field descriptor. Table B1 identifies the possible subfields for each data structure/data type. Brackets specify an optional subfield; otherwise, the subfield is required. (#` 0(# 0*$$'# 0Ԍ**Table B1 Compound Data Field Descriptors  0*$$ Ln!J<<ddL\"*'mx#dp@>pQWm@# Figure B3  Expanded Level 2 Data Descriptive Area Schematic.$(#(#(#(#'#$00*$$'#O-0Ԓ` ` The length of the control field is specified in the leader in byte positions 1011. The relative positions 03 of the field are four numeric characters defined as follows:(#`  tT ` ` X oX!Position 0 designates the data structure type(#  tT ` `  o` !Position 1 specifies the data type(#  tT` ` `  o` !Positions 4 and 5 consist of userdefined printable graphics symbols to represent the field terminator and unit terminator, respectively.(# ` ` Examples 4 and 5 depict label and format controls subfields. The character '!' is used to delimit data element labels within a vector label. The character '*' is used to delimit the vector labels in a Cartesian label. For a detailed definition of the subfields of these fields, please consult FIPS PUB 123.(#` 0*$$Ԍ <L dd'mEX4.DOC *J'm`#dp@>pQWm@# vExample 4 vLabels Subfield Examples. #ixP7AP# X,  VECTOR AND CARTESIAN . . . &*MODN!NAME!TYP1!NAM2!TYP2!COMT& . . . . . . &NAME!SSN!ADDRS!PHONE& . . . . . . GOLD!SODIUM!COPPER*DENSITY!COLOR!ACTIVITY& . . . . . . &ROW1,ROW2*COL1!COL2!COL3!TAB1!TAB2*PAGE! . . . NULL VALUES ARE ALLOWED . . . &LAB1!!LAB2*LAB3!LAB4& . . . . . . &!LAB1!LAB2& . . . . . . &LAB1!LAB2!**LAB3!LAB4& . . . $(#(#(#(#ht'#$ *!` <,Jdd'm` *'mh#dp@>pQWm@# vExample 5 vFormat Controls Subfield Examples. #ixP7AP#  ` `  ...&(I);  ` `  ...&(2I,3A);  ` `  ...&(A(4),2(3R(;),C));  ` `  ...&(5(100A,I(4),2(B(6),3X)),R(10));  ` `  ...&(100(A(4)),6I($) ...*$(#(#(#(#H !t'#$ ` ` FIPS PUB 123 defines several special fields to be used optionally in the data descriptive area of a DDR. These fields are identified by field tag values of 0..0 through 0..9 (0.. denotes zero fill). A tag value of 0..0 identifies the optional file control field for@#0*$$!t'#at,'#&!@ level 2 or 3 interchange files; 0..1 identifies the record identifier; and 0..2 identifies the user augmented file description. The record identifier field (tag 0..1) must also be included for each DR.(#` ` ` The file extracts shown in examples 1 and 2 contain two of the above special fields. The first field in the DDR descriptive area is a file control field. Note that its corresponding entry in the directory has a tag value of 0000. The file control field is made up of three subfields:(#`  tT ` ` X oX!Field controlspresent only in level 2 or level 3 files(#  tT< ` ` X oX!File title (optional)(#  tT ` ` X oX!List of ordered tag pairsonly for hierarchical records in level 3 files.(# ` ` X Additional information on these special fields may be found in the standard.(#  tT B.3` ` DATA RECORD (DR) ` ` A DDF may include any number of data records, each variable in length and content. However, the physical structure for each data record consists of a leader, a directory, and a data area. A provision is made to omit the repetition of identical DR leaders and directories for repetitive, fixedformat data.(#` ` ` An expanded logical schematic representation of a data record is provided in figure B4. The physical structure of a DR is similiar(#` (#0*$$ A|<<dd8"*ؒl#dp@~rQ wl@# Figure B4 Expanded Logical Schematic of a DR. $(#(#(#(#A'#$00*$$'#O-A0Ԓ` ` to that of the DDR with respect to the leader and the directory. The leader identifier identifies the record as a DR and specifies the repetitive characterstics of subsequent DR leaders and directories.(#` ` ` The character 'D' in this position specifies that a leader and directory will be found in the subsequent DR. The character 'R' in the leader identifier specifies that all subsequent DRs will not contain a leader or a directory; the current leader and directory apply to the user data area for all remaining DRs. The expansion of the DR directory mirrors that of the DDR directory.(#` ` ` The fields of the data area of a DR contain the user information to be interchanged. Each field is an instance of the user data structure and data types defined by the DDR data descriptive field with the corresponding field tag. The format of the data values within a field is determined by the format controls contained in the corresponding description in the DDR. Subfields of a DR field include the number of dimensions of the field, the length of each dimension, and the actual data values. A DR field ends with a field terminator. (#` ` ` Examples 6 through 8 show the link or relationship between data descriptive records and the corresponding data records. Note that the data type specified in the field control determines the subfields available in the DDR (see table B1). If only the name subfield is present, the data value in the DR may be read or written as a single ASCII string having a field terminator as the last character. The format controls may be used to read the data values in the DR or to format data to an output file.ia$! |<` dd'm0 *'m#dp@~rQ wl@#  Example 6 |The Relationship Between a DDR and a Corresponding DR for Elementary Data. #TxP7QP#  dB  Example` ` Data Type!hh&,Field Contents  dB  ` `  !DDRhh&,1DR  dB>  1Character !0000;&NAME,1DOE,JANE  dB  2Implicitpoint !0100;&AGE;,118;  dB  3Explicitpoint !0200;&GPA;,13.46;  dB0  4Explicitpoint !0300;&DIST;,1+0.5E+02;   scales  dB|  5Character mode bit!0400;&BITSTR;,1010101;  dB"   string` `    dB  6Bit field (fixed) !0500;&BITFLDF&B(6);1(01010100);  dBn  7Bit field (variable) !0500;&BITFLDV&B;116(01010100); i(#` 0!0*$$'#a0 $(#(#(#(#a'#$ !d|d<Ddd'm*J'm#dp@~rQ wl@#  Example 7 |The Relationship Between a DDR and a Corresponding DR for Vector Data.#TxP7QP#  dB   Character vector with name, subfield labels, and no format controls:  dB  DDR1000;&MAILINGADDRESS7NAME!STREET!CITY!STATE!ZIP;  dB  DRDOE,JOHN&1010MAPLEST.&OSHGOSH&OHIO&12345;  dB   Implicit point vector with name, subfield labels, and format controls:  dB0  DDR1100;&POPULATION&CY60!CY65!CY70!CY75&(4)());  dB  DR765432987345903231897654;  dB"   Mixed vectors with name, no labels (this can be interpreted as an  array), but with format controls:  dB   DDR1600;&LIVESTOCK&&(A(,),I(5),R(5);  dB  DRPIGS,0274437.46STEERS,1776447.84;  dB   Explicit point vector with name, no labels, and no format controls:  dBR  DDR1200;&GRAINS;  dB  DR3.46&2.47&11.94; $(#(#(#(#'#$@#0*$$!'#ad'#+@Ԍh!|<dd'm(#*'m#dp@~rQ wl@#  Example 8 |The Relationship Between a DDR and a Corresponding DR  for Array Data  X, #TxP7QP#X` hp x (#%'0*,.8135@8:pQWm@#  Example 9 |Data Record with Corresponding DDR Descriptive Fields  }K  X, #ixP7AP#DDR #ixP7AP#TAGS; 0001, CATX` 1000;&DDF RECORD IDENTIFIER&&;` ` 2600;&CATALOG/SPATIAL DOMAIN&*MODN!NAME!TYPE!DOMN!MAP!THEM!COMT&(7A);`  S` #X~xP7qXP#DR  }K2 #ixP7AP#00419 D 00129 45040001000600000CATX009200006CATX003100098` CATX003100129CATX003100160CATX002700191CATX003600218CATX003600254;` ` 00002;` ` CX&A0&PNTS&A2&POLY&Objects in the area-point module and polygon-ring module are equivalent.;` ` CX&N0&PNTS&L1&LINE&LNID in N0.;` CX&A2&POLY&A2&POLY&RFID in A2.;` CX&A2&POLY&L1&LINE&LFID in A2.;` CX&L1&LINE&XR&&SADR in L1.;` CX&L1&LINE&A2&POLY&PIDL,PIDR in L1.;` CX&L1&LINE&N0&PNTS&SNID,ENID in L1.;` 6$(#(#(#(#'#$