![]() |
Version 5.1 |
||||||||||||||||||||||||||||||||
|
|
CommuniGate Pro で使用される文字列は、基本的な非構造化テキストデータです。
配列オブジェクトは、複数のオブジェクト(配列要素) が順に並ぶという形式になっています。
辞書オブジェクトは、キーと値の対のセットです。キーは文字列です。辞書のキーはいずれも一意で なければなりません。キーは、特に指定されている場合を除き、大文字と小文字が区別されます。
キーの値としては、任意のオブジェクトを使用できます。
下は、辞書フォーマットと配列フォーマットのシンタックスです(digit =桁、symbol =記号、 atom =アトム、string =文字列、datablock =データブロック、timestamp =タイムスタンプ、 array =配列、dictionary =辞書、object =オブジェクト)。
d-digit | ::= | 0 .. 9 |
h-digit | ::= | d-digit | A | B | C | D | E | F |
a-symbol | ::= | A .. Z | a .. z | d-digit |
l-symbol | ::= | a-symbol | . | _ |
atom | ::= | 1* l-symbol |
b-symbol | ::= | a-symbol | + | / | = |
s-symbol | ::= | any printable symbol except " and \ | \\ | \" | \r | \n | \e | \ d-digit d-digit d-digit |
string | ::= | " 0* s-symbol " | atom |
datablock | ::= | [ 1* b-symbol ] |
day | ::= | 0 .. 3 d-digit (2-digit number in the 1..31 range) |
month | ::= | 0 .. 1 d-digit (2-digit number in the 1..12 range) |
year | ::= | 1 .. 2 d-digit d-digit d-digit (4-digit number in the 1970..2038 range) |
hour | ::= | 0 .. 2 d-digit (2-digit number in the 0..23 range) |
minute | ::= | 0 .. 5 d-digit (2-digit number in the 0..59 range) |
second | ::= | 0 .. 5 d-digit (2-digit number in the 0..59 range) |
number | ::= | # [ -] 1* d-digit |
timestamp | ::= | # T day - month - year [ _ hour : minute : second ] |
ip4 | ::= | 1* d-digit . 1* d-digit . 1* d-digit . 1* d-digit |
ip6 | ::= | 0*(1* h-digit :) [: [ 0*(1* h-digit :) ] ] |
ip-address | ::= | # I[ [ip4 | ip6] ] [ : 1*d-digit ] |
array | ::= | ( [object 0*( , object ) ] ) |
dictionary | ::= | { 0*( string = object ; ) } |
object | ::= | string | datablock | number | timestamp | ip-address | array | dictionary |