d (Datum) Вложенный дочерний уровень «Datum».
Помимо обязательных полей, могут быть дополнительные составляющие
optional header:
ot (Object type) тип объекта (в некотором реестре).
• Если поле отсутствует, то оно должно присутствовать в каждом дочернем «Datum»
dc (Datums count) общее количество «Datum» в серии;
• Если поле отсутствует, подразумевается, что оно равно 1
dp (Datums passed) количество уже переданных «Datum»;
• Если поле отсутствует, подразумевается, что оно равно 1
Любые другие поля не описанные протоколом
IRC-IoT,
которые могут использоваться не мешая работе протокола. Такие поля могут
игнорироваться.
Пример:
{"oid": 345, *** optional header ***, "ot": "mysens", "d": { *** Datum *** }}
Обязательные поля из optional header всегда присутствуют в описании объекта.
Даже если они не указаны явным образом, то наследуются от вышестоящих объектов и в любом случае
подразумеваются в описании каждого объекта. Соответствующие названия полей в реестрах зарезервированы.
Данный список может расширяться в ходе развития протокола, и если вы построили свою модификацию
протокола и внесли в реестр зарезервированное название переменной, а при выходе новой версии
IRC-IoT протокола
возник конфликт, то вам следует для совместимости поменять такое название на другое во всех
реестрах вашей
IRC-IoT сети.
Каждый «Object», помимо полей своего заголовка, может содержать
один или серию вложенных объектов «Datum». В случае, если такой
объект один, он именуется буквой «d», если объектов несколько,
то серия заключается в квадратные
скобки (массив в JSON), и уже
весь данный массив именуется как «d», вложенные в массив объекты
не именуются, и могут быть отличены друг от друга только по собственному
полю «did».
Пример:
{"oid": 234, "dc": 3, "dp": 1,
*** optional header ***, "d": [
{ "did": 1, *** Datum *** }, { "did": 2, *** Datum *** }, ... ] }