""" Top level schema object. """ schema { query: Query } """ Root Query type """ type Query { """ Get the identified instance of the Location """ locationById(id: ID): Location """ Get the set of Location """ locations(lat: Number, long: Number, height: Number): [Location] """ Get the identified instance of the Property """ propertyById(id: ID): Property """ Get the identified instance of the Bank """ bankById(id: ID): Bank """ Get the set of Bank """ actorById(id: ID): Actor """ Get the set of Actor """ actors(firstName: String, lastName: String, dob: Date): [Actor] """ Get the identified instance of the ActorLivedAtPropertyForPeriod """ actorLivedAtPropertyForPeriodById(id: ID): ActorLivedAtPropertyForPeriod """ Get the identified instance of the PropertyOwnership """ propertyOwnershipById(id: ID): PropertyOwnership """ Get the identified instance of the BankAccount """ bankAccountById(id: ID): BankAccount """ Get the set of BankAccount """ bankAccounts: [BankAccount] } """ Represents a Account object. """ interface Account { """ The unique identifier for this account. """ accountRef: String! } """ Node Description """ interface Node { """ The identifier of this object """ id: ID! } """ Represents a Owns object. """ union Owns = PropertyOwnership | Actor """ Represents a Actor objectwhich implements the Node Interfaces. """ type Actor implements Node { """ The identifier of this object """ id: ID! """ The set of ActorLivedAtPropertyForPeriods. """ actorLivedAtPropertyForPeriods: [Property] """ The set of ActorRelationships. """ actorRelationships: [Actor] """ The set of BankAccounts. """ bankAccounts: [Bank] dob: Date firstName: String! """ has account at this set of Banks. """ hasAccountAtBanks: [Bank] lastName: String! """ lives at this set of Properties. """ livesAtProperties: [Property] """ owned this set of Properties. """ ownedProperties: [Property] """ The set of PropertyOwnerships. """ propertyOwnerships: [Property] """ related to this set of Actors. """ relatedTos: [Actor] } """ Represents a Actor Lived At Property For Period objectwhich implements the Node Interfaces. """ type ActorLivedAtPropertyForPeriod implements Node { """ The identifier of this object """ id: ID! """ lived at by this Actor. """ actor: Actor! dateRange: DateRange! """ lives at this Property. """ property: Property! } """ Represents a Actor Relationship objectwhich implements the Node Interfaces. """ type ActorRelationship implements Node { """ The identifier of this object """ id: ID! """ null this Actor. """ relatedFromActor: Actor! """ related to this Actor. """ relatedToActor: Actor! dateRange: DateRange! relationshipType: RelationshipType! } """ Represents a Address object. """ type Address { strret: String! town: String! county: String! country: String! addressType: PropertyType } """ Represents a Bank objectwhich implements the Node Interfaces. """ type Bank implements Node { """ The identifier of this object """ id: ID! """ The set of BankAccounts. """ bankAccounts: [Actor] """ has account for this set of Actors. """ hasAccountForActors: [Actor] operatesAt: [Address]! } """ Represents a Bank Account objectwhich implements the Account & Node Interfaces. """ type BankAccount implements Account & Node { """ The identifier of this object """ id: ID! """ The unique identifier for this account. """ accountRef: String! """ has account for this Actor. """ actor: Actor! """ has account at this Bank. """ bank: Bank! """ used for payment of this set of PropertyOwnerships. """ usedForPaymentOfPropertyOwnerships: [PropertyOwnership] } """ Represents a Date Range object. """ type DateRange { start: DateTime finish: DateTime } """ Represents a Location objectwhich implements the Node Interfaces. """ type Location implements Node { """ The identifier of this object """ id: ID! height: Number lat: Number! long: Number! } """ PageInfo description """ type PageInfo { """ hasPreviousPage description """ hasPreviousPage: Boolean! """ hasNextPage description """ hasNextPage: Boolean! """ startCursor description """ startCursor: String! """ endCursor description """ endCursor: String! } """ Represents a Property objectwhich implements the Node Interfaces. """ type Property implements Node { """ The identifier of this object """ id: ID! """ The set of ActorLivedAtPropertyForPeriods. """ actorLivedAtPropertyForPeriods: [Actor] address: Address! height: Number lat: Number! """ lived at by this set of Actors. """ livedAtByActors: [Actor] long: Number! """ owned by this set of Actors. """ ownedByActors: [Actor] """ The set of PropertyOwnerships. """ propertyOwnerships: [Actor] propertyType: PropertyType! } """ Represents a Property Ownership objectwhich implements the Node Interfaces. """ type PropertyOwnership implements Node { """ The identifier of this object """ id: ID! """ owned by this Actor. """ actor: Actor! dateRange: DateRange! """ paid for from this set of BankAccounts. """ paidForFromBankAccounts: [BankAccount] percentageOwnership: Float """ owned this Property. """ property: Property! } """ Represents a PropertyType object. """ enum PropertyType { APPARTMENT HOUSE NOFIXEDABODE MOBILEHOME BUSINESS } """ Represents a Relationship Type object. """ enum RelationshipType { HUSBAND WIFE PARTNER CHILD COLLEAGUE FRIEND } """ An ISO 8601 standard representation of a date. """ scalar Date """ An ISO 8601 standard representation of a date & time. """ scalar DateTime """ A 32-bit floating point number that adheres to the IEEE 754 single-precision standard . """ scalar Float """ Represents a Number object. """ scalar Number """ A sequence of characters. """ scalar String