salesking / json_schema_tools

Tools for building and handling a JSON Schema powered API's
27 stars 9 forks source link

recursively load nested $refs #8

Closed a2800276 closed 10 years ago

a2800276 commented 10 years ago

Hi Schorsch,

ich habe die Schema Tools mal so angepasst, dass sie rekursiv das gesammte Schema nach $refs abklappern und die beim Laden aufloesen.

Das kommt aber ein bisschen mit Deinem bisherigen vorgehen in die Quere, $refs als Indikatoren fuer genestete Typen zu nutzen, bzw. Array Inhalte mit Properties zu definieren. Zwei tests schlagen fehl und ich bin mir nicht sicher, wie Du das handeln willst (zumindest ohne dass die Schema Tools fuer Saleskind schemas nicht mehr funktionieren.) Die Fehler treten bei diesem Konstrukt auf:

"links_clicked":{
  "description": "Timestamps of clicks. Test nested array values without object reference",
  "type":"array",
  "properties":{
    "type": "string"
  }
},

Im Prinzip muesste es ja auch lauten:

properties : {
    property_name : {type: string}
}

Aber ich schaetze, dass Du das auch in Deinen echten Schemas so machst. Also: great big fuckup. Einmal Schema Tools neuschreiben, bitte!

Wie gesagt, schau Dir mal die failenden Tests an...