# CASRAI Dictionary — GraphQL Schema Definition Language # Version: v2026.1 # Licence: CC-BY 4.0 https://creativecommons.org/licenses/by/4.0/ # Source: https://casrai.org # # This SDL describes the read-only surface of the CASRAI Dictionary # as it appears via the WPGraphQL endpoint at /graphql. """A dictionary domain — top-level grouping for terms (20 in vv2026.1).""" type DictionaryDomain { id: ID! slug: String! name: String! track: String! description: String termCount: Int } """A single CRediT contributor role (14 in CRediT).""" type CreditRole { id: ID! slug: String! name: String! group: String! order: Int! definition: String! nisoUri: String! } """A single dictionary term.""" type DictionaryTerm { id: ID! slug: String! title: String! status: TermStatus definitionOperational: String definitionFormal: String domain: DictionaryDomain picklists: [Picklist!] relatedTerms: [DictionaryTerm!] } enum TermStatus { DRAFT REVIEW STABLE DEPRECATED } """Allowable-value list referenced by terms.""" type Picklist { id: ID! slug: String! title: String! description: String values: [String!]! } """Composite object schema referenced by terms.""" type ObjectTemplate { id: ID! slug: String! title: String! description: String fields: [ObjectField!] } type ObjectField { name: String! type: String! required: Boolean } type Query { domains: [DictionaryDomain!]! domain(slug: String!): DictionaryDomain terms(first: Int = 50, domain: String): [DictionaryTerm!]! term(slug: String!): DictionaryTerm creditRoles: [CreditRole!]! creditRole(slug: String!): CreditRole picklists(first: Int = 50): [Picklist!]! picklist(slug: String!): Picklist objectTemplates(first: Int = 50): [ObjectTemplate!]! objectTemplate(slug: String!): ObjectTemplate }