Skip to content

Long data type changed to integer #160

@ajr3-gen

Description

@ajr3-gen

This was mentioned in an older issue but I want to bring it up again: the JsonSchema generator does not differentiate between longs and ints. Both types end up as "integer" in the schema. It is said that when data is retrieved, it will be treated as long or int based on its size and that may be so. But when one examines the JsonSchema object, everything is "integer". You can see this from the code shown in the Readme for this package. Here is a very simple demonstration of it; generating a schema from an object with an int, a long, and a Long simply represents them all as "integer".

Mapped object: {
  "type" : "object",
  "id" : "urn:jsonschema:org:example:Demonstrator",
  "properties" : {
    "myId" : {
      "type" : "string"
    },
    "myInteger" : {
      "type" : "integer"
    },
    "myLongPrimitive" : {
      "type" : "integer"
    },
    "myLongObject" : {
      "type" : "integer"
    }
  }
}

Is there any way to preserve the original type information for the properties?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions