Api-blueprint: Los atributos con una matriz de objetos producen un esquema incompleto

Creado en 11 may. 2016  ·  8Comentarios  ·  Fuente: apiaryio/api-blueprint

La siguiente parte de mi archivo de texto:

  • Respuesta 200 (aplicación / json)

    • Atributos (objeto)

    • nodos (matriz [objeto])



      • id: 4 (número)


      • sname: Chromista (cadena) - El nombre científico


      • rango: Kingdom (cadena) - El rango taxonómico del nombre científico


      • autoría: noworms, 1603 (cadena) - Información de autoría sobre el nombre científico



    • Cuerpo

```
{
    "nodes": [
        {
            "id": "1",
            "sname": "Animalia",
            "rank": "Kingdom",
            "authorship": "noworms, 1603"
        },
        {
            "id": "2",
            "sname": "Archaea",
            "rank": "Kingdom",
            "authorship": "noworms, 1603"
        },
        {
            "id": "3",
            "sname": "Bacteria",
            "rank": "Kingdom",
            "authorship": "noworms, 1603"
        },
        {
            "id": "4",
            "sname": "Chromista",
            "rank": "Kingdom",
            "authorship": "noworms, 1603"
        },
        {
            "id": "5",
            "sname": "Fungi",
            "rank": "Kingdom",
            "authorship": "noworms, 1603"
        }
    ],
    "hasMore": 1
}
```

Produce este HTML:

pic1

¡Falta la parte del esquema dentro de los "" nodos "!
También he intentado utilizar estructuras de datos, pero el esquema sigue incompleto.

Comentario más útil

¿Puedes probar esto?

+ nodes (array, fixed)
    + (object)
        + id: 4 (number)

Todos 8 comentarios

@agougousis ¿Puedes probar lo siguiente?

nodes (array[object], fixed)

¡OK! Aunque todavía no he encontrado de dónde vino este mundo "fijo", ahora el esquema está completo.
Sin embargo, parece que el esquema producido no es correcto.
El esquema producido es:

pic3

y el esquema correcto debería ser:

pic4

¿Me equivoco?

¿Puedes probar esto?

+ nodes (array, fixed)
    + (object)
        + id: 4 (number)

¡Sí! ¡Mucho mejor! ¡No pensé que se pudieran definir objetos "anónimos"!
No estoy seguro, pero creo que los corchetes marcados en la siguiente captura de pantalla no deberían estar allí. ¿Qué piensas?
schema

@agougousis Los corchetes son correctos ya que los elementos son una matriz de tipos posibles

No recuerdo muy bien las reglas, pero en http://jsonschema.net/ (una solución rápida y sucia que uso de vez en cuando) cuando doy los datos json como entrada, me da el esquema sin estos corchetes .

@agougousis usa fixed-type para esto:

+ nodes (array, fixed-type)
    + (object)
        + id: 4 (number)

+1 para el tipo fijo

fijo: instancia de este tipo de estructura y valores son fijos. Este atributo se propaga a los tipos de miembros anidados.

tipo fijo: la instancia de este tipo de estructura es fija, el valor no lo es. Este atributo no se propaga a los tipos de miembros anidados.

https://apiblueprint.org/documentation/mson/specification.html#353 -type-attribute

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

pete001 picture pete001  ·  6Comentarios

robbinjanssen picture robbinjanssen  ·  6Comentarios

BigBlueHat picture BigBlueHat  ·  3Comentarios

jmdacruz picture jmdacruz  ·  6Comentarios

annappropriate picture annappropriate  ·  5Comentarios