- If values are unquoted, scan for the delimiter or end-of-line, since these are the only significant characters.
- If values are always quoted, the following rules apply:
- At the start of the input line, or after a delimiter, an open quote must be present; otherwise, it is a malformed input line.
- Following an open quote, all characters become part of the data value, with the following exceptions:
A doubled close quote – causes one close quote to become part of the data value. The DataConnector operator supports this behavior automatically so that you do not need to specify a quote as the EscapeQuoteDelimiter attribute.
An EscapeQuoteDelimiter followed by a close quote – causes the EscapeQuoteDelimiter to be discarded and the close quote to become part of the data value.
An EscapeQuoteDelimiter followed by an EscapeQuoteDelimiter – causes the first EscapeQuoteDelimiter to be discarded and the second EscapeQuoteDelimiter to become part of the data value
An EscapeQuoteDelimiter followed by an open quote – causes the EscapeQuoteDelimiter to be discarded and the open quote to become part of the data value.Escaping open quotes is not required. Unescaped open quotes will be treated as part of the data value.An undoubled, unescaped close quote – terminates the data value, and must be immediately followed by a delimiter or end-of-line.
- If values are optionally quoted, the following rules apply:
- At the start of the input line, or after a delimiter, if an open quote is present, the value is quoted and the rules for always-quoted values apply.
- Otherwise, the value is unquoted, and the mentioned rules for unquoted values apply.