Skip to content

Commit fba976c

Browse files
committed
link formatting
Signed-off-by: Clemens Vasters <clemens@vasters.com>
1 parent 7cc150f commit fba976c

File tree

1 file changed

+13
-14
lines changed

1 file changed

+13
-14
lines changed

draft-vasters-json-structure-core.md

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -161,18 +161,17 @@ When the schema is placed into a namespace ({{namespaces}}) or embedded into a
161161
properties ({{properties-keyword}}) section of an `object` type, the name is the
162162
key under which the schema is stored.
163163

164-
Further rules for schemas are defined in section 3.4 ({{type-system-rules}}).
164+
Further rules for schemas are defined in {{type-system-rules}}.
165165

166166
A "schema document" is a schema that represents the root of a schema hierarchy
167167
and is the container format in which schemas are stored on disk or exchanged. A
168168
schema document MAY contain multiple type declarations and namespaces. The
169-
structure of schema documents is defined in section 3.3
170-
({{document-structure}}).
169+
structure of schema documents is defined in {{document-structure}}.
171170

172171
JSON Structure is extensible. All keywords that are not explicitly defined in
173172
this document MAY be used for custom annotations and extensions. This also
174173
applies to keywords that begin with the `$` character. A complete list of
175-
reserved keywords is provided in section 3.11 ({{reserved-keywords}}).
174+
reserved keywords is provided in {{reserved-keywords}}.
176175

177176
The semantics of keywords defined in this document MAY be expanded by extension
178177
specifications, but the core semantics of the keywords defined in this document
@@ -182,10 +181,10 @@ Be mindful that the use of custom keywords and annotations might conflict with
182181
future versions of this specification or other extensions and that the authors
183182
of this specification will not go out of their way to avoid such conflicts.
184183

185-
Section 3.10 ({{extensions-and-add-ins}}) details the extensibility features.
184+
{{extensions-and-add-ins}} details the extensibility features.
186185

187186
Formally, a schema is a constrained non-schema ({{non-schema}}) that requires a
188-
type ({{type-keyword}}) keyword or a ['$ref']({{ref-keyword}}) keyword to be a
187+
type ({{type-keyword}}) keyword or a `$ref` ({{ref-keyword}}) keyword to be a
189188
schema.
190189

191190
### Non-Schema {#non-schema}
@@ -612,8 +611,8 @@ The `tuple` type is used to define an ordered collection of elements with a
612611
specific length. It's represented as a JSON array where each element is of a
613612
specific type.
614613

615-
The elements are defined using a `properties` map as [with the
616-
`object`]({{object}}) type and each element is named. All declared properties of
614+
The elements are defined using a `properties` map as with the
615+
`object` ({{object}}) type and each element is named. All declared properties of
617616
a `tuple` are implicitly required.
618617

619618
A `tuple` type MUST include a `name` attribute that defines the name of the
@@ -662,7 +661,7 @@ are represented differently in JSON:
662661

663662
- _Tagged unions_: The `choice` type is represented as a JSON object with a
664663
single property whose name is the selector of the type as declared in the
665-
[`choices`]({{choices-keyword}}) map and whose value is of the selected type.
664+
`choices` ({{choices-keyword}}) map and whose value is of the selected type.
666665
- _Inline unions_: The `choice` type is represented as a JSON object of the
667666
selected type with the selector as a property of the object.
668667

@@ -702,7 +701,7 @@ or:
702701

703702
Inline unions require for all type choices to extend a common base type.
704703

705-
This is expressed by using the [`$extends`]({{extends-keyword}}) keyword in the
704+
This is expressed by using the `$extends` ({{extends-keyword}}) keyword in the
706705
`choice` declaration. The `$extends` keyword MUST refer to a schema that defines
707706
the base type and the base type MUST be abstract.
708707

@@ -1108,7 +1107,7 @@ specification.
11081107
- Non-discriminated type unions are formed as sets of primitive types and type
11091108
references. It is NOT permitted to define a compound type inline inside a
11101109
non-discriminated type union. Discriminated unions are formed as a
1111-
[`choice`]({{choice}}) type to which the rules of this section do not apply.
1110+
`choice` ({{choice}}) type to which the rules of this section do not apply.
11121111
- A type union is a composite type reference and not a standalone compound type
11131112
and is therefore not named.
11141113
- The JSON node described by a schema with a type union MUST conform to at least
@@ -1347,7 +1346,7 @@ type names to schemas. Each type name MUST be unique within the `choices` map.
13471346

13481347
The value of each type name MUST be a schema. Inline compound types are permitted.
13491348

1350-
The `choices` keyword MUST only be used in schemas of type [`choice`]({{choice}}).
1349+
The `choices` keyword MUST only be used in schemas of type `choice` ({{choice}}).
13511350

13521351
***Example**:
13531352

@@ -1368,9 +1367,9 @@ The `choices` keyword MUST only be used in schemas of type [`choice`]({{choice}}
13681367
The `selector` keyword defines the name of the property that acts as the selector
13691368
for the type in a `choice` type. The value of `selector` MUST be a string.
13701369

1371-
The `selector` keyword MUST only be used in schemas of type [`choice`]({{choice}}).
1370+
The `selector` keyword MUST only be used in schemas of type `choice` ({{choice}}).
13721371

1373-
See [`choice`]({{choice}}) for an example.
1372+
See `choice` ({{choice}}) for an example.
13741373

13751374
## Type Annotation Keywords {#type-annotation-keywords}
13761375

0 commit comments

Comments
 (0)