""" Top level schema object. """ schema { query: Query mutation: Mutation } """ Root Query type """ type Query { """ Get the identified instance of the GeoLocation """ geoLocationById(id: ID): GeoLocation """ Get the set of GeoLocation """ geoLocations(longitude: Number, latitude: Number, geosystem: GeoSystem, vehicleHeading: Number, unit: Unit, timestamp: DateTime): [GeoLocation] """ Get the identified instance of the Manufacturer """ manufacturerById(id: ID): Manufacturer """ Get the set of Manufacturer """ manufacturers(name: Int): [Manufacturer] """ Get the identified instance of the Person """ personById(id: ID): Person """ Get the set of Person """ persons(firstName: String, lastName: String, dateOfBirth: Date): [Person] """ Get the identified instance of the Vehicle """ vehicleById(id: ID): Vehicle """ Get the set of Vehicle """ vehicles(make: String, model: String, colour: String, vin: String): [Vehicle] """ Get the identified instance of the Organisation """ organisationById(id: ID): Organisation """ Get the set of Organisation """ organisations(name: String): [Organisation] """ Get the identified instance of the Address """ addressById(id: ID): Address """ Get the set of Address """ addresses(street: String, postcode: String): [Address] """ Get the identified instance of the Owner """ ownerById(id: ID): Owner """ Get the set of Owner """ owners(duration: DurationInput): [Owner] } """ Root Mutation type """ type Mutation { """ Create a new Address and return the new instance """ createAddress(input: AddressInput): Address """ Create a new Organisation and return the new instance """ createOrganisation(input: OrganisationInput): Organisation """ Create a new Vehicle and return the new instance """ createVehicle(input: VehicleInput): Vehicle """ Create a new GeoLocation and return the new instance """ createGeoLocation(input: GeoLocationInput): GeoLocation """ Create a new Manufacturer and return the new instance """ createManufacturer(input: ManufacturerInput): Manufacturer """ Create a new Person and return the new instance """ createPerson(input: PersonInput): Person """ Create a new Owner and return the new instance """ createOwner(input: OwnerInput): Owner } """ Node Description """ interface Node { """ The identifier of this object """ id: ID! } """ Represents a Party object. """ interface Party { """ registered at this set of Addresses. """ registeredAtAddresses: [Address] """ registered owner of this set of Vehicles. """ registeredOwnerOfVehicles: [Vehicle] """ The set of Owners. """ owners: [Vehicle] } """ Represents a Address objectwhich implements the Node Interfaces. """ type Address implements Node { """ The identifier of this object """ id: ID! postcode: String! street: String! """ used by this set of Parties. """ usedByParties: [Party] } """ Represents a Duration object. """ type Duration { start: Date end: Date } input DurationInput { start: Date end: Date } """ Geolocation """ type GeoLocation implements Node { """ The identifier of this object """ id: ID! """ The geo system used for lat/long. """ geosystem: GeoSystem! """ The latitude value in decimal degree. """ latitude: Number! """ The longitude value in decimal degree """ longitude: Number! """ The timestamp the position was recorded. Format according to ISO 8601 format. """ timestamp: DateTime! """ The orientation unit. """ unit: Unit """ null this Vehicle. """ vehicle: Vehicle """ The orientation of the vehicle in degrees. """ vehicleHeading: Number } """ Represents a Manufacturer objectwhich implements the Node Interfaces. """ type Manufacturer implements Node { """ The identifier of this object """ id: ID! """ built this set of Vehicles. """ builtVehicles: [Vehicle]! name: Int! } """ Represents a Organisation objectwhich implements the Node & Party Interfaces. """ type Organisation implements Node & Party { """ The identifier of this object """ id: ID! name: String! """ The set of Owners. """ owners: [Vehicle] """ registered at this set of Addresses. """ registeredAtAddresses: [Address] """ registered owner of this set of Vehicles. """ registeredOwnerOfVehicles: [Vehicle] } """ Represents a Owner objectwhich implements the Node Interfaces. """ type Owner implements Node { """ The identifier of this object """ id: ID! duration: Duration! """ registered to this Party. """ party: Party! """ registered owner of this Vehicle. """ vehicle: Vehicle! } """ PageInfo description """ type PageInfo { """ hasPreviousPage description """ hasPreviousPage: Boolean! """ hasNextPage description """ hasNextPage: Boolean! """ startCursor description """ startCursor: String! """ endCursor description """ endCursor: String! } """ Represents a Person objectwhich implements the Node & Party Interfaces. """ type Person implements Node & Party { """ The identifier of this object """ id: ID! dateOfBirth: Date! firstName: String! """ has driven this set of Vehicles. """ hasDrivenVehicles: [Vehicle] lastName: String! """ The set of Owners. """ owners: [Vehicle] """ registered at this set of Addresses. """ registeredAtAddresses: [Address] """ registered owner of this set of Vehicles. """ registeredOwnerOfVehicles: [Vehicle] } """ Represents a Vehicle objectwhich implements the Node Interfaces. """ type Vehicle implements Node { """ The identifier of this object """ id: ID! colour: String! """ driven by this set of Persons. """ drivenByPersons: [Person]! make: String! """ built by this Manufacturer. """ manufacturer: Manufacturer model: String! """ observed at this set of GeoLocations. """ observedAtGeoLocations: [GeoLocation] """ The Owner. """ owner: Party! """ registered to this Party. """ registeredToParty: Party! vin: String! } """ Represents a Address object. """ input AddressInput { street: String! postcode: String! } """ Geolocation """ input GeoLocationInput { """ The longitude value in decimal degree """ longitude: Number! """ The latitude value in decimal degree. """ latitude: Number! """ The geo system used for lat/long. """ geosystem: GeoSystem! """ The orientation of the vehicle in degrees. """ vehicleHeading: Number """ The orientation unit. """ unit: Unit """ The timestamp the position was recorded. Format according to ISO 8601 format. """ timestamp: DateTime! } """ Represents a Manufacturer object. """ input ManufacturerInput { name: Int! } """ Represents a Organisation object. """ input OrganisationInput { name: String! } """ Represents a Owner object. """ input OwnerInput { duration: DurationInput! } """ Represents a Person object. """ input PersonInput { firstName: String! lastName: String! dateOfBirth: Date! } """ Represents a Vehicle object. """ input VehicleInput { make: String! model: String! colour: String! vin: String! } """ The geo system used for lat/lon """ enum GeoSystem { WGS84 } """ The orientation unit """ enum Unit { DEGREES } """ An ISO 8601 standard representation of a date. """ scalar Date """ An ISO 8601 standard representation of a date & time. """ scalar DateTime """ A signed 32-bit integer, ranges from --2,147,483,648 to 2,147,483,647 """ scalar Int """ Represents a Number object. """ scalar Number """ A sequence of characters. """ scalar String