| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  | scalar Long
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | schema {
 | 
					
						
							|  |  |  |     query: Query
 | 
					
						
							|  |  |  |     mutation: Mutation
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type Query {
 | 
					
						
							| 
									
										
										
										
											2021-01-25 13:29:23 -08:00
										 |  |  |     dataset(urn: String!): Dataset
 | 
					
						
							|  |  |  |     user(urn: String!): CorpUser
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  |     search(input: SearchInput!): SearchResults
 | 
					
						
							|  |  |  |     autoComplete(input: AutoCompleteInput!): AutoCompleteResults
 | 
					
						
							|  |  |  |     browse(input: BrowseInput!): BrowseResults
 | 
					
						
							|  |  |  |     browsePaths(input: BrowsePathsInput!): [[String!]!]
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type Mutation {
 | 
					
						
							|  |  |  |     logIn(username: String!, password: String!): CorpUser
 | 
					
						
							|  |  |  |     updateDataset(input: DatasetUpdateInput!): Dataset
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | input DatasetUpdateInput {
 | 
					
						
							|  |  |  |     urn: String!
 | 
					
						
							|  |  |  |     ownership: OwnershipUpdate
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | input OwnershipUpdate {
 | 
					
						
							|  |  |  |     owners: [OwnerUpdate!]
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | input OwnerUpdate {
 | 
					
						
							|  |  |  |     # The owner URN, eg urn:li:corpuser:1
 | 
					
						
							|  |  |  |     owner: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # The owner role type
 | 
					
						
							|  |  |  |     type: OwnershipType!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | enum OwnershipSourceType {
 | 
					
						
							|  |  |  |     AUDIT
 | 
					
						
							|  |  |  |     DATABASE
 | 
					
						
							|  |  |  |     FILE_SYSTEM
 | 
					
						
							|  |  |  |     ISSUE_TRACKING_SYSTEM
 | 
					
						
							|  |  |  |     MANUAL
 | 
					
						
							|  |  |  |     SERVICE
 | 
					
						
							|  |  |  |     SOURCE_CONTROL
 | 
					
						
							|  |  |  |     OTHER
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type OwnershipSource {
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     The type of the source
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     type: OwnershipSourceType!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     A reference URL for the source
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     url: String
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | enum OwnershipType {
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     A person or group that is in charge of developing the code
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     DEVELOPER
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     A person or group that is owning the data
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     DATAOWNER
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     A person or a group that overseas the operation, e.g. a DBA or SRE.
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     DELEGATE
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     A person, group, or service that produces/generates the data
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     PRODUCER
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     A person, group, or service that consumes the data
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     CONSUMER
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     A person or a group that has direct business interest
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     STAKEHOLDER
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type Owner {
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Owner object
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     owner: CorpUser!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     The type of the ownership
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     type: OwnershipType
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Source information for the ownership
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     source: OwnershipSource
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type Ownership {
 | 
					
						
							|  |  |  |     owners: [Owner!]
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     lastModified: Long!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | enum FabricType {
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Designates development fabrics
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     DEV
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Designates early-integration (staging) fabrics
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     EI
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Designates production fabrics
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     PROD
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Designates corporation fabrics
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     CORP
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | enum PlatformNativeType {
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Table
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     TABLE
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     View
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     VIEW
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Directory in file system
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     DIRECTORY
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Stream
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     STREAM
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Bucket in key value store
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     BUCKET
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type PropertyTuple {
 | 
					
						
							|  |  |  |     key: String!
 | 
					
						
							|  |  |  |     value: String
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-10-06 23:39:52 -07:00
										 |  |  | type SubTypes {
 | 
					
						
							|  |  |  |     typeNames: [String!]
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  | type Dataset {
 | 
					
						
							|  |  |  |     urn: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     platform: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     name: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-02-03 11:49:51 -08:00
										 |  |  |     origin: FabricType!
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  |     description: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     uri: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     platformNativeType: PlatformNativeType
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     tags: [String!]!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     properties: [PropertyTuple!]
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     createdTime: Long!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     modifiedTime: Long!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     ownership: Ownership
 | 
					
						
							| 
									
										
										
										
											2021-10-06 23:39:52 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     subTypes: SubTypes
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type CorpUserInfo {
 | 
					
						
							|  |  |  |     active: Boolean!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     displayName: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     email: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     title: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     manager: CorpUser
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     departmentId: Long
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     departmentName: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     firstName: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     lastName: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     fullName: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     countryCode: String
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type CorpUserEditableInfo {
 | 
					
						
							|  |  |  |     aboutMe: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     teams: [String!]
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     skills: [String!]
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     pictureLink: String
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type CorpUser {
 | 
					
						
							|  |  |  |     urn: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     username: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     info: CorpUserInfo
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     editableInfo: CorpUserEditableInfo
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-11 17:55:45 -07:00
										 |  |  | type CorpGroup implements Entity {
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     The unique user URN
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     urn: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     GMS Entity Type
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     type: EntityType!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     group name e.g. wherehows-dev, ask_metadata
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     name: String
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Information of the corp group
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     info: CorpGroupInfo
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type CorpGroupInfo {
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     email of this group
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     email: String!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     owners of this group
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     admins: [String!]!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     List of ldap urn in this group.
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     members: [String!]!
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     List of groups in this group.
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     groups: [String!]!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  | enum EntityType {
 | 
					
						
							|  |  |  |     DATASET
 | 
					
						
							|  |  |  |     USER
 | 
					
						
							| 
									
										
										
										
											2021-04-21 12:06:31 -07:00
										 |  |  |     DATA_FLOW
 | 
					
						
							|  |  |  |     DATA_JOB
 | 
					
						
							| 
									
										
										
										
											2021-05-11 17:55:45 -07:00
										 |  |  |     CORP_USER
 | 
					
						
							|  |  |  |     CORP_GROUP
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Search Input
 | 
					
						
							|  |  |  | input SearchInput {
 | 
					
						
							|  |  |  |     type: EntityType!
 | 
					
						
							|  |  |  |     query: String!
 | 
					
						
							|  |  |  |     start: Int
 | 
					
						
							|  |  |  |     count: Int
 | 
					
						
							|  |  |  |     filters: [FacetFilterInput!]
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | input FacetFilterInput {
 | 
					
						
							|  |  |  |     field: String! # Facet Field Name
 | 
					
						
							|  |  |  |     value: String! # Facet Value
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Search Output
 | 
					
						
							|  |  |  | type SearchResults {
 | 
					
						
							|  |  |  |     start: Int!
 | 
					
						
							|  |  |  |     count: Int!
 | 
					
						
							|  |  |  |     total: Int!
 | 
					
						
							|  |  |  |     elements: [SearchResult!]!
 | 
					
						
							|  |  |  |     facets: [FacetMetadata!]
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | union SearchResult = Dataset | CorpUser
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type FacetMetadata {
 | 
					
						
							|  |  |  |     field: String!
 | 
					
						
							|  |  |  |     aggregations: [AggregationMetadata!]!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type AggregationMetadata {
 | 
					
						
							|  |  |  |     value: String!
 | 
					
						
							|  |  |  |     count: Long!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Autocomplete Input
 | 
					
						
							|  |  |  | input AutoCompleteInput {
 | 
					
						
							|  |  |  |     type: EntityType!
 | 
					
						
							|  |  |  |     query: String!
 | 
					
						
							| 
									
										
										
										
											2021-02-03 11:49:51 -08:00
										 |  |  |     field: String # Field name
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  |     limit: Int
 | 
					
						
							|  |  |  |     filters: [FacetFilterInput!]
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Autocomplete Output
 | 
					
						
							|  |  |  | type AutoCompleteResults {
 | 
					
						
							|  |  |  |     query: String!
 | 
					
						
							|  |  |  |     suggestions: [String!]!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Browse Inputs
 | 
					
						
							|  |  |  | input BrowseInput {
 | 
					
						
							|  |  |  |     type: EntityType!
 | 
					
						
							|  |  |  |     path: [String!]
 | 
					
						
							|  |  |  |     start: Int
 | 
					
						
							|  |  |  |     count: Int
 | 
					
						
							|  |  |  |     filters: [FacetFilterInput!]
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Browse Output
 | 
					
						
							|  |  |  | type BrowseResults {
 | 
					
						
							| 
									
										
										
										
											2021-01-25 13:29:23 -08:00
										 |  |  |     entities: [BrowseResultEntity!]!
 | 
					
						
							| 
									
										
										
										
											2021-01-17 12:54:49 -08:00
										 |  |  |     start: Int!
 | 
					
						
							|  |  |  |     count: Int!
 | 
					
						
							|  |  |  |     total: Int!
 | 
					
						
							|  |  |  |     metadata: BrowseResultMetadata!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type BrowseResultEntity {
 | 
					
						
							|  |  |  |     name: String!
 | 
					
						
							|  |  |  |     urn: String!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type BrowseResultMetadata {
 | 
					
						
							|  |  |  |     path: [String!]
 | 
					
						
							|  |  |  |     groups: [BrowseResultGroup!]!
 | 
					
						
							|  |  |  |     totalNumEntities: Long!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type BrowseResultGroup {
 | 
					
						
							|  |  |  |     name: String!
 | 
					
						
							|  |  |  |     count: Long!
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Browse Paths Input
 | 
					
						
							|  |  |  | input BrowsePathsInput {
 | 
					
						
							|  |  |  |     type: EntityType!
 | 
					
						
							|  |  |  |     urn: String!
 | 
					
						
							|  |  |  | }
 |