Skip to content

Commit

Permalink
Merge pull request #61 from linkml/rules-model
Browse files Browse the repository at this point in the history
Corresponding linkml changes for linkml/linkml-model#52
  • Loading branch information
cmungall authored Oct 26, 2021
2 parents 0fd55c3 + 4a005a6 commit 2997d84
Show file tree
Hide file tree
Showing 40 changed files with 13,171 additions and 3,251 deletions.
2 changes: 1 addition & 1 deletion linkml_runtime/linkml_model/annotations.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Auto generated from annotations.yaml by pythongen.py version: 0.9.0
# Generation date: 2021-09-24 02:32
# Generation date: 2021-10-25 15:29
# Schema: annotations
#
# id: https://w3id.org/linkml/annotations
Expand Down
2 changes: 1 addition & 1 deletion linkml_runtime/linkml_model/extensions.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Auto generated from extensions.yaml by pythongen.py version: 0.9.0
# Generation date: 2021-09-24 02:32
# Generation date: 2021-10-22 21:39
# Schema: extensions
#
# id: https://w3id.org/linkml/extensions
Expand Down
240 changes: 230 additions & 10 deletions linkml_runtime/linkml_model/graphql/meta.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,101 @@ type Annotation implements Annotatable
annotations: [Annotation]
}

type ClassDefinition
type AnonymousClassExpression implements ClassExpression
{
extensions: [Extension]
annotations: [Annotation]
description: String
altDescriptions: [AltDescription]
deprecated: String
todos: [String]
notes: [String]
comments: [String]
examples: [Example]
inSubset: [SubsetDefinition]
fromSchema: Uri
importedFrom: String
seeAlso: [Uriorcurie]
deprecatedElementHasExactReplacement: Uriorcurie
deprecatedElementHasPossibleReplacement: Uriorcurie
anyOf: [AnonymousClassExpression]
exactlyOneOf: [AnonymousClassExpression]
noneOf: [AnonymousClassExpression]
allOf: AnonymousClassExpression
slotConditions: [SlotDefinition]
}

type AnonymousExpression implements Expression, Extensible, Annotatable, CommonMetadata
{
extensions: [Extension]
annotations: [Annotation]
description: String
altDescriptions: [AltDescription]
deprecated: String
todos: [String]
notes: [String]
comments: [String]
examples: [Example]
inSubset: [SubsetDefinition]
fromSchema: Uri
importedFrom: String
seeAlso: [Uriorcurie]
deprecatedElementHasExactReplacement: Uriorcurie
deprecatedElementHasPossibleReplacement: Uriorcurie
}

type AnonymousSlotExpression implements SlotExpression
{
extensions: [Extension]
annotations: [Annotation]
description: String
altDescriptions: [AltDescription]
deprecated: String
todos: [String]
notes: [String]
comments: [String]
examples: [Example]
inSubset: [SubsetDefinition]
fromSchema: Uri
importedFrom: String
seeAlso: [Uriorcurie]
deprecatedElementHasExactReplacement: Uriorcurie
deprecatedElementHasPossibleReplacement: Uriorcurie
range: Element
rangeExpression: AnonymousClassExpression
required: Boolean
recommended: Boolean
minimumValue: Integer
maximumValue: Integer
pattern: String
equalsString: String
equalsNumber: Integer
noneOf: [AnonymousSlotExpression]
exactlyOneOf: [AnonymousSlotExpression]
anyOf: [AnonymousSlotExpression]
allOf: AnonymousSlotExpression
}

type AnonymousTypeExpression implements TypeExpression
{
pattern: String
equalsString: String
equalsNumber: Integer
noneOf: [AnonymousTypeExpression]
exactlyOneOf: [AnonymousTypeExpression]
anyOf: [AnonymousTypeExpression]
allOf: AnonymousTypeExpression
}

type ClassDefinition implements ClassExpression
{
name: String!
title: String
idPrefixes: [Ncname]
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand Down Expand Up @@ -63,9 +150,77 @@ type ClassDefinition
unionOf: [ClassDefinition]
definingSlots: [SlotDefinition]
treeRoot: Boolean
uniqueKeys: [UniqueKey]
rules: [ClassRule]
classificationRules: [ClassificationRule]
isA: ClassDefinition
mixins: [ClassDefinition]
applyTo: [ClassDefinition]
anyOf: [AnonymousClassExpression]
exactlyOneOf: [AnonymousClassExpression]
noneOf: [AnonymousClassExpression]
allOf: AnonymousClassExpression
slotConditions: [SlotDefinition]
}

interface ClassExpression
{
anyOf: [AnonymousClassExpression]
exactlyOneOf: [AnonymousClassExpression]
noneOf: [AnonymousClassExpression]
allOf: AnonymousClassExpression
slotConditions: [SlotDefinition]
}

interface ClassLevelRule
{
}

type ClassRule implements Extensible, Annotatable, CommonMetadata
{
preconditions: AnonymousClassExpression
postconditions: AnonymousClassExpression
elseconditions: AnonymousClassExpression
bidirectional: Boolean
openWorld: Boolean
precedence: Integer
deactivated: Boolean
extensions: [Extension]
annotations: [Annotation]
description: String
altDescriptions: [AltDescription]
deprecated: String
todos: [String]
notes: [String]
comments: [String]
examples: [Example]
inSubset: [SubsetDefinition]
fromSchema: Uri
importedFrom: String
seeAlso: [Uriorcurie]
deprecatedElementHasExactReplacement: Uriorcurie
deprecatedElementHasPossibleReplacement: Uriorcurie
}

type ClassificationRule implements Extensible, Annotatable, CommonMetadata
{
instanceOf: ClassDefinition
slotConditions: [SlotDefinition]
extensions: [Extension]
annotations: [Annotation]
description: String
altDescriptions: [AltDescription]
deprecated: String
todos: [String]
notes: [String]
comments: [String]
examples: [Example]
inSubset: [SubsetDefinition]
fromSchema: Uri
importedFrom: String
seeAlso: [Uriorcurie]
deprecatedElementHasExactReplacement: Uriorcurie
deprecatedElementHasPossibleReplacement: Uriorcurie
}

interface CommonMetadata
Expand Down Expand Up @@ -93,6 +248,7 @@ interface Definition
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand Down Expand Up @@ -136,6 +292,7 @@ type Element implements Extensible, Annotatable, CommonMetadata
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand Down Expand Up @@ -167,6 +324,7 @@ type EnumDefinition
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand Down Expand Up @@ -201,6 +359,10 @@ type Example
description: String
}

interface Expression
{
}

interface Extensible
{
extensions: [Extension]
Expand Down Expand Up @@ -255,6 +417,7 @@ type SchemaDefinition
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand Down Expand Up @@ -298,14 +461,15 @@ type SchemaDefinition
name: Ncname!
}

type SlotDefinition
type SlotDefinition implements SlotExpression
{
name: String!
title: String
idPrefixes: [Ncname]
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand Down Expand Up @@ -338,14 +502,11 @@ type SlotDefinition
stringSerialization: String
singularName: String
domain: ClassDefinition
range: Element
slotUri: Uriorcurie
multivalued: Boolean
inherited: Boolean
readonly: String
ifabsent: String
required: Boolean
recommended: Boolean
inlined: Boolean
inlinedAsList: Boolean
key: Boolean
Expand All @@ -361,12 +522,39 @@ type SlotDefinition
role: String
isUsageSlot: Boolean
usageSlotName: String
minimumValue: Integer
maximumValue: Integer
pattern: String
isA: SlotDefinition
mixins: [SlotDefinition]
applyTo: [SlotDefinition]
range: Element
rangeExpression: AnonymousClassExpression
required: Boolean
recommended: Boolean
minimumValue: Integer
maximumValue: Integer
pattern: String
equalsString: String
equalsNumber: Integer
noneOf: [AnonymousSlotExpression]
exactlyOneOf: [AnonymousSlotExpression]
anyOf: [AnonymousSlotExpression]
allOf: AnonymousSlotExpression
}

interface SlotExpression
{
range: Element
rangeExpression: AnonymousClassExpression
required: Boolean
recommended: Boolean
minimumValue: Integer
maximumValue: Integer
pattern: String
equalsString: String
equalsNumber: Integer
noneOf: [AnonymousSlotExpression]
exactlyOneOf: [AnonymousSlotExpression]
anyOf: [AnonymousSlotExpression]
allOf: AnonymousSlotExpression
}

type SubsetDefinition
Expand All @@ -377,6 +565,7 @@ type SubsetDefinition
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand All @@ -400,14 +589,15 @@ type SubsetDefinition
deprecatedElementHasPossibleReplacement: Uriorcurie
}

type TypeDefinition
type TypeDefinition implements TypeExpression
{
name: String!
title: String
idPrefixes: [Ncname]
definitionUri: Uriorcurie
aliases: [String]
localNames: [LocalName]
conformsTo: String
mappings: [Uriorcurie]
exactMappings: [Uriorcurie]
closeMappings: [Uriorcurie]
Expand All @@ -434,13 +624,43 @@ type TypeDefinition
uri: Uriorcurie
repr: String
pattern: String
equalsString: String
equalsNumber: Integer
noneOf: [AnonymousTypeExpression]
exactlyOneOf: [AnonymousTypeExpression]
anyOf: [AnonymousTypeExpression]
allOf: AnonymousTypeExpression
}

interface TypeExpression
{
pattern: String
equalsString: String
equalsNumber: Integer
noneOf: [AnonymousTypeExpression]
exactlyOneOf: [AnonymousTypeExpression]
anyOf: [AnonymousTypeExpression]
allOf: AnonymousTypeExpression
}

type UniqueKey implements Extensible, Annotatable
type UniqueKey implements Extensible, Annotatable, CommonMetadata
{
uniqueKeySlots: [SlotDefinition]!
extensions: [Extension]
annotations: [Annotation]
description: String
altDescriptions: [AltDescription]
deprecated: String
todos: [String]
notes: [String]
comments: [String]
examples: [Example]
inSubset: [SubsetDefinition]
fromSchema: Uri
importedFrom: String
seeAlso: [Uriorcurie]
deprecatedElementHasExactReplacement: Uriorcurie
deprecatedElementHasPossibleReplacement: Uriorcurie
}


4 changes: 2 additions & 2 deletions linkml_runtime/linkml_model/json/annotations.json
Original file line number Diff line number Diff line change
Expand Up @@ -316,9 +316,9 @@
],
"metamodel_version": "1.7.0",
"source_file": "annotations.yaml",
"source_file_date": "Fri Sep 24 02:29:20 2021",
"source_file_date": "Fri Jun 18 11:53:26 2021",
"source_file_size": 833,
"generation_date": "2021-09-24 02:30",
"generation_date": "2021-10-22 21:37",
"@type": "SchemaDefinition",
"@context": [
"https://w3id.org/linkml/types.context.jsonld",
Expand Down
Loading

0 comments on commit 2997d84

Please sign in to comment.