Skip to content

Structural Fields

These fields are used primarily by the Control and Meta records.

1. Type

1.A. CONTROL

This record contains the information used to determine how the Schema File needs to be read and processed.

1.B. META

This record contains the information used to determine how the Text File needs to be read and processed.

1.C. RECORD

This record contains the information for a Text File record.

1.D. FIELD

This record contains the information for a Text File field.

1.E. LIST

This record contains the definition of a list of the allowed values for a Text File field. The values of the list will be in a set of Value records.

1.F. VALUE

This record contains the information for the values belonging to a List or Condition record.

1.G. CONDITION

This record contains the information for conditions between Text File records or Text File fields. The IDs of the records or fields involved will be in a set of Value records.

1.H. RULE

This record contains the information for rules between Text File records or Text File fields.

1.I. SUMMARY

This record will provide the total counts of the various types of Schema File records as well as prove that the end of the Schema File has been reached.

2. ID

3. SchemaEnclosureCharacter

  • Description: This field identifies the Unicode code point in hexadecimal for the character that is to be used as the enclosure character for this schema file.
  • Data Type: Hexadecimal List
  • Allowed Values: 21hex to 2Chex, 2Fhex, 3Ahex to 40hex, 5Bhex to 60hex, 7Bhex to 7Ehex
  • Sample: SchemaEnclosureCharacter=22
  • Found In: Control

4. Version

  • Description: This field identifies the version.
  • Data Type: String
  • Allowed Values: Any
  • Sample: Version=0.5.2.8
  • Found In: Control, Meta

5. Name

6. Annotation

7. FileType

  • Description: This field identifies the type of flat file this schema is for.
  • Data Type: String List
  • Allowed Values: DELIMITED, FIXED-WIDTH
  • Sample: FileType=DELIMITED
  • Found In: Meta

7A. DELIMITED

A delimited text file is a file in which the individual data values contain embedded delimiters, such as quotation marks, commas, and tabs. A delimiter is a character that separates words or phrases in a text string that defines the beginning or end of a contiguous string of character data.

7B. FIXED-WIDTH

Fixed width text files are special cases of text files where the format is specified by column widths, pad character and left/right alignment. Column widths are measured in units of characters. For example, if you have data in a text file where the first column always has exactly 10 characters, and the second column has exactly 5, the third has exactly 12 (and so on), this would be categorized as a fixed width text file.

8. DelimiterCharacter

  • Description: This field identifies the Unicode code point in hexadecimal for the character between fields.
  • Data Type: Hexadecimal
  • Allowed Values: Any
  • Sample: DelimiterCharacter=2C
  • Found In: Meta

9. EnclosureCharacter

  • Description: This field identifies the Unicode code point in hexadecimal for the character to be used to enclose data.
  • Data Type: Hexadecimal
  • Allowed Values: Any
  • Sample: EnclosureCharacter=22
  • Found In: Meta

10. EncloseWhen

  • Description: This field identifies when the enclosure character is to be used.
  • Data Type: String List
  • Allowed Values: ALPHA, ALWAYS, NEEDED, NEVER
  • Sample: EncloseWhen=NEEDED
  • Found In: Meta

10.A. ALPHA

Enclose a field when it contains alpha characters.

10.B. ALWAYS

Always enclose all fields.

10.C. NEEDED

Enclose a field when it contains the separator character.

10.D. NEVER

Never enclose any field.

11. CharacterEncoding

  • Description: This field identifies the character encoding to be used. It should be a commonly understood encoding name such as those found on Wikipedia's Common Character Encodings list. However, if a custom encoding name is to be used, then both the data sender and the data recipient must mutually agree to its meaning and usage.
  • Data Type: String
  • Allowed Values: Any
  • Sample: CharacterEncoding=UTF-8
  • Found In: Meta

12. EndOfLine

  • Description: This field identifies how the record data is terminated. If it is an integer, it identifies the Unicode code point in hexadecimal for the character that terminates the record data.
  • Data Type: Hexadecimal or String List
  • Allowed Values: Any, String List: NEWLINE
  • Sample: EndOfLine=7E
  • Found In: Meta

12.A. NEWLINE

Any standard Newline characters may be used.

13. FieldIDMethod

  • Description: This field allows the ability to determine whether to use the header value from a header record or to use the field position for field identification.
  • Data Type: String List
  • Allowed Values: HEADER, POSITION
  • Sample: FieldIDMethod=POSITION
  • Found In: Meta

13.A. HEADER

The field is identified by the value in the header row.

13.B. POSITION

The field is identified by it's position in the record.

14. SchemaURL

  • Description: This field allows the schema designer to place the URL of where more information about this this schema can be found.
  • Data Type: String
  • Allowed Values: Any
  • Sample: SchemaURL=http://www.acme.com/schemas.html
  • Found In: Meta

15. OwnerName

  • Description: This field allows the schema designer to place the owner of this schema's name.
  • Data Type: String
  • Allowed Values: Any
  • Sample: OwnerName="Acme, Inc."
  • Found In: Meta

16. OwnerEmail

  • Description: This field allows the schema designer to place the owner of this schema's email address.
  • Data Type: String
  • Allowed Values: Any
  • Sample: OwnerEmail=Info@acme.com
  • Found In: Meta

17. OwnerPhone

  • Description: This field allows the schema designer to place the owner of this schema's phone number.
  • Data Type: String
  • Allowed Values: Any
  • Sample: OwnerPhone=555-555-1212
  • Found In: Meta
Back to top