2016-09-02 1 views
0

Рассмотрим У меня есть следующие типизированные объекты JSON:Что я называю объектно-иерархическим «путём» атрибутов/свойств/членов JSON и как их стандартизованное имя?

Parent: { 
    "field1" : "Value of field1" 
    "fieldC" : {Child} 
} 

Child: { 
    "field2" : "Value of field2" 
} 

Q: Что я называю field1 и field2?
Всего Strings?
Вопрос: Что мне назвать «путь» fieldC.field2?
Путь доступа?
Полевая дорожка?
Member hierarcy path?

+1

Вы спрашиваете о свойствах? –

+0

Возможно, «свойства» и «путь объектно-иерархической собственности» - это ответы, которые я ищу. Однако json.org не упоминает «свойство», хотя это имеет смысл, поскольку JSON «основан на подмножестве JS». Они просто называют «поля», я называю «именами» (пары «имя/значение»). – straville

ответ

1

field1 и field2 - это всего лишь строки.

[anything, ..., ... ] - это всего лишь массив, поэтому элементы объекта.

, а затем у вас есть 0 - 9 (с десятичными дробями, отрицательные, положительные или с e), true/false и null, как числовые значения, булевы и nullvalue

{Child} является объектом. Я не думаю, что это называется дорогой (я бы сказал, что это основано на мнениях). возможно, полевой путь, но это скорее дочерний объект. ключ представляет собой строку и значение является объект/массив/строка/BOOL/нуля/цифровой или десятичным

всех возможности, например:

{ 
    "string": "string-value", 
    "nulltype": null, 
    "child_object": { 
     "boolean": true, 
     "any_decimal_int": -1.5e3 
    }, 
    "array_values":[ 
     { 
      "any_value": true 
     }, 
     { 
      "any_value": false 
     } 
    ] 
} 

, конечно, вы можете объединить все больше и имеют неограниченные ребенок- объекты и списки :)

+0

Спасибо! Я знаю ключ: value/name: value/string: значение JSON. Я просто ищу правильный способ вызова «ключей» (и их иерархический путь в случае, если объекты имеют дочерние объекты), в соответствии со спецификацией. У вас жесткая точка, согласно спецификации, «путь», вероятно, не имеет имени. Однако я хотел бы иметь имя для практики «создания открытых» «путей свойств», таких как fieldC.field2. Переход с «дорогой свойств», если что-то еще не доказано правильно:] – straville

1

jsonapi.org, кажется, относится field1, fieldC и field2 как имена членов, которые я нахожу гораздо более описательный, чем просто «Струны».

Как уже упоминался в моем комментарии к первому ответу, я думаю, я буду лично использовать (иерархический) свойство путь или просто (объект) иерархии члена, обращаясь к «писать открытой» объект-иерархической собственность/атрибут/элемент 'путь', такой как fieldC.field2. Кажется, в этом много места для интерпретации. :]

Смежные вопросы