Skip to content

Commit 5657622

Browse files
authored
Merge pull request #133 from vincentvialard/fix-typos-in-model-description-and-in-specifications
fix typos in model description and specification
2 parents 9d887b9 + a079862 commit 5657622

File tree

4 files changed

+26
-31
lines changed

4 files changed

+26
-31
lines changed

linkml_model/model/schema/meta.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -474,7 +474,7 @@ slots:
474474
domain: definition
475475
range: boolean
476476
description: >-
477-
Indicates the class or slot is not intended to inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins.
477+
Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins.
478478
see_also:
479479
- https://en.wikipedia.org/wiki/Mixin
480480
in_subset:
@@ -1736,7 +1736,7 @@ slots:
17361736

17371737
locally_reflexive:
17381738
is_a: relational_logical_characteristic
1739-
description: If s is locally_reflexive, then i.s=i for all instances i where s if a class slot for the type of i
1739+
description: If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i
17401740
in_subset:
17411741
- SpecificationSubset
17421742

specification/03schemas.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ However, it should be understood these are not equivalents.
5151
- [enumerated types](https://en.wikipedia.org/wiki/Enumerated_type) in programming languages and some relational systems
5252
- drop-down selections in spreadsheets
5353
- Note however that in LinkML enums are optionally backed by stronger semantics with enum elements (permissible values) mapped to vocabularies or ontologies
54-
* EnumDefinitions are analogous to:
54+
* TypeDefinitions are analogous to:
5555
- [data types](https://en.wikipedia.org/wiki/Data_type) in most object-oriented languages
5656
- primitive types in database systems
5757
- extensible types in some systems
@@ -93,7 +93,6 @@ classDiagram
9393
SchemaDefinition "1" --> "*" ClassDefinition: classes
9494
SchemaDefinition "1" --> "*" SlotDefinition: slots
9595
SchemaDefinition "1" --> "*" EnumDefinition: enums
96-
SchemaDefinition "1" --> "*" EnumDefinition: Enums
9796
SchemaDefinition "1" --> "*" SubsetDefinition: subsets
9897
SchemaDefinition "1" --> "*" Prefix: prefixes
9998
ClassDefinition --|> Element

specification/04derived-schemas.md

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ For all `x` in `ReflexiveAncestors(c)`
9494

9595
### Rule: Derived Attributes
9696

97-
Derived attributes can be calculated for every *applicable* slot name for any class `c`
97+
Derived attributes can be calculated for every *applicable* slot name `s` for any class `c`
9898

9999
`c.attributes[s] = DerivedAttributes(c,s)`
100100

@@ -111,11 +111,7 @@ and ancestors of `c`
111111

112112
The precedence rules for derived attributes are as follows:
113113

114-
If a metaslot `s` is declared `multivalued` then when copying `s` from a parent to a child, the values are appended.
115-
116-
If a metaslot `s` is declared `multivalued`
117-
118-
if a slot is multi valued then copying will append, unless the element already exists.
114+
If a metaslot `s` is declared `multivalued` then when copying `s` from a parent to a child, the values are appended, unless the element already exists.
119115

120116
if the slot is single valued, and intersection rules can be applied to the slot, then these are performed on all values
121117

specification/05validation.md

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -63,16 +63,16 @@ for each `slot=value` assignment in **Assignments**, the validation procedure is
6363

6464
`C` SHOULD have all the following properties:
6565

66-
- `C.deprecated` SHOULD be **None**
67-
- `C.abstract` SHOULD NOT be **True**
68-
- `C.mixin` SHOULD NOT be **True**
66+
- `C.deprecated` SHOULD be `None`
67+
- `C.abstract` SHOULD NOT be `True`
68+
- `C.mixin` SHOULD NOT be `True`
6969

7070
### Rule: identifiers must be unique
7171

7272
We define a procedure **IdVal**(`i`) which yields the value of `i.<identifier_slot>` where `identifier_slot`
73-
is the slot n **Assignments** with metaslot assignment `identifier`=**True**
73+
is the slot in **Assignments** with metaslot assignment `identifier=True`
7474

75-
If there is no such slot then `**IdVal**(`i`) is None and this check is ignored.
75+
If there is no such slot then **IdVal**(`i`) is `None` and this check is ignored.
7676

7777
`i` is invalid if there exists another instance `j` such that `j` is reachable from `root`,
7878
and **IdVal**(`i`)=**IdVal**(`j`) and `i` and `j` are distinct.
@@ -97,27 +97,27 @@ If this condition is not met, this is considered a warning rather than invalidit
9797

9898
For each slot `s` in **Assignments**,
9999

100-
* if `s.multivalued` is True, then `i.<s>` must be a collection or None
101-
* If `s.multivalued` is False, then `i.<s>` must not be a collection
100+
* if `s.multivalued` is `True`, then `i.<s>` must be a collection or `None`
101+
* If `s.multivalued` is `False`, then `i.<s>` must not be a collection
102102

103103
### Rule: values should be within stated bounds
104104

105105
For each slot `s` in **Assignments**,
106106

107-
* if `s.maximum_value` is not None, then `i.<s>` must be a number and must be less that or equal to the maximum value
108-
* if `s.minimum_value` is not None, then `i.<s>` must be a number and must be greater that or equal to the minimum value
107+
* if `s.maximum_value` is not `None`, then `i.<s>` must be a number and must be less that or equal to the maximum value
108+
* if `s.minimum_value` is not `None`, then `i.<s>` must be a number and must be greater that or equal to the minimum value
109109

110110
### Rule: values should equal evaluable expression
111111

112-
For each slot `s` in **Assignments**, if `s.equals_expression` is not None, then `i.<s>` must equal
112+
For each slot `s` in **Assignments**, if `s.equals_expression` is not `None`, then `i.<s>` must equal
113113
the value of `Eval(s.equals_expression)`. See section on expression language
114114
for details of syntax.
115115

116116
Note: this rule can be executed in inference mode
117117

118118
### Rule: values should equal string_serialization
119119

120-
For each slot `s` in **Assignments**, if `s.string_serialization` is not None, then `i.<s>` must equal
120+
For each slot `s` in **Assignments**, if `s.string_serialization` is not `None`, then `i.<s>` must equal
121121
the value of `Stringify(s.string_serialization)`. See section on expression language
122122
for details of syntax.
123123

@@ -127,15 +127,15 @@ Note: this rule can be executed in inference mode
127127

128128
### Range class instantiation check
129129

130-
For each slot `s` in **Assignments**, if `i.<s>` is not None, and `s.range` is in `m*.classes`,
130+
For each slot `s` in **Assignments**, if `i.<s>` is not `None`, and `s.range` is in `m*.classes`,
131131
then `s.range` must be in `ReflexiveAncestors(Type(i.<s>))`
132132

133-
Additional checks MAY be performed based on whether `s.inlined` is True
133+
Additional checks MAY be performed based on whether `s.inlined` is `True`
134134

135-
* if `s.inlined`, then `i.<s>` SHOULD NOT be a Reference
136-
* if `s.inlined` is False, then EITHER:
135+
* if `s.inlined` is `True`, then `i.<s>` SHOULD NOT be a Reference
136+
* if `s.inlined` is `False`, then EITHER:
137137
* `i.<s>` SHOULD be a Reference
138-
* OR `i.<s>` instantiates a class `R` such that R has no slot `rs` that is declared to be an identifier. i.e. `rs.identifier = True`
138+
* OR `i.<s>` instantiates a class `R` such that `R` has no slot `rs` that is declared to be an identifier. i.e. `rs.identifier = True`
139139

140140

141141

@@ -166,14 +166,14 @@ In all cases, the semantics are as follows:
166166

167167
### range expression checks
168168

169-
For each slot `s` in **Assignments**, if `i.<s>` is not None, and `RE = s.range_expression` is not None, then a check
169+
For each slot `s` in **Assignments**, if `i.<s>` is not `None`, and `RE = s.range_expression` is not `None`, then a check
170170
**CE**(`x`) is performed on `i.<s>`
171171

172172
### Rule evaluation
173173

174174
For each rule `r` in *C*.rules:
175175

176-
- if `r.preconditions` is None or `r.preconditions` is satisfied, then
176+
- if `r.preconditions` is `None` or `r.preconditions` is satisfied, then
177177
- `r.postconditions` are applied
178178

179179
### Classification Rule evaluation
@@ -182,19 +182,19 @@ For each rule `r` in *C*.rules:
182182

183183
## Validation of TypeDefinitions
184184

185-
For each slot `s` in **Assignments**, if `i.<s>` is not None, and `s.range` is in `m*.types`,
185+
For each slot `s` in **Assignments**, if `i.<s>` is not `None`, and `s.range` is in `m*.types`,
186186
where `i.<s> = *T*( **AtomicValue** )` must match `s.range`,
187187

188188
here `T.uri` is used to determine the type:
189189

190190
- for xsd floats, doubles, and decimals, AtomicValue must be a decimal- for xsd floats, doubles, and decimals, AtomicValue must be a decimal
191191
- for xsd ints, AtomicValue must be an Integer
192192
- for xsd dates, datetimes, and times, AtomicValue must be a string conforming to the relevant ISO type
193-
- for xsd booleans, AtomicValue must be True or False
193+
- for xsd booleans, AtomicValue must be `True` or `False`
194194

195195
## Validation of EnumDefinitions
196196

197-
For each slot `s` in **Assignments**, if `i.<s>` is not None, and `s.range` is in `m*.enums`,
197+
For each slot `s` in **Assignments**, if `i.<s>` is not `None`, and `s.range` is in `m*.enums`,
198198
then `i.<s>` must be equal to `pv.text` for some pv in `m*.enums[s.range]`
199199

200200
## Inference of new values

0 commit comments

Comments
 (0)