Skip to content

Commit 37eb09d

Browse files
committed
feat: schema changes: support moved_to and moved_From
1 parent 0138c57 commit 37eb09d

8 files changed

Lines changed: 311 additions & 27 deletions

File tree

sources/express-changes/document.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ include::sections/05-schema-change.adoc[]
3838

3939
include::sections/06-mapping-change.adoc[]
4040

41-
include::sections/aa-examples.adoc[]
41+
include::sections/aa-schemas.adoc[]
4242

43-
include::sections/ab-schemas.adoc[]
43+
include::sections/ab-examples.adoc[]
4444

4545
include::sections/az-bibliography.adoc[]
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# yaml-language-server: $schema=https://www.expresslang.org/schemas/changes/v1/schema_changes.yaml
2+
---
3+
schema: Extended_basic_geometry_arm
4+
versions:
5+
- version: 2
6+
modifications:
7+
- type: SUBTYPE_CONSTRAINT
8+
name: alternate_extended_geometry_item
9+
deletions:
10+
- type: SUBTYPE_CONSTRAINT
11+
name: axis_placement_subtype
12+
- type: ENTITY
13+
name: Axis_placement_2d
14+
moved_to:
15+
schema: Elemental_geometric_shape_arm
16+
- type: ENTITY
17+
name: Axis_placement_3d
18+
moved_to:
19+
schema: Elemental_geometric_shape_arm
20+
- version: 3
21+
additions:
22+
- type: USE_FROM
23+
name: Geometric_model_relationship_arm
24+
modifications:
25+
- type: REFERENCE_FROM
26+
name: alternate_extended_geometry_item
27+
deletions:
28+
- type: SUBTYPE_CONSTRAINT
29+
name: Characterizable_object_arm
30+
interfaced_items:
31+
- bag_to_set
32+
- type: ENTITY
33+
name: Definitional_representation_relationship
34+
moved_to:
35+
schema: Geometric_model_relationship_arm
36+
- type: ENTITY
37+
name: Geometric_model_relationship
38+
moved_to:
39+
schema: Geometric_model_relationship
40+
- type: FUNCTION
41+
name: acyclic_representation_relationship
42+
moved_to:
43+
schema: Geometric_model_relationship
44+
- version: 4
45+
modifications:
46+
- type: SUBTYPE_CONSTRAINT
47+
name: alternate_extended_geometry_item
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# yaml-language-server: $schema=https://www.expresslang.org/schemas/changes/v1/schema_changes.yaml
2+
---
3+
schema: Associative_draughting_elements_mim
4+
versions:
5+
- version: 3
6+
additions:
7+
- type: TYPE
8+
name: draughting_model_item_definition
9+
modifications:
10+
- type: ENTITY
11+
name: draughting_model_item_association
12+
- version: 4
13+
additions:
14+
- type: USE_FROM
15+
name: geometric_model_schema
16+
interfaced_items:
17+
- geometric_set
18+
- type: USE_FROM
19+
name: draughting_element_schema
20+
interfaced_items:
21+
- annotation_plane
22+
- type: USE_FROM
23+
name: draughting_element_schema
24+
interfaced_items:
25+
- des_annotation_representation_select
26+
- type: USE_FROM
27+
name: draughting_element_schema
28+
interfaced_items:
29+
- draughting_model_item_association
30+
- type: USE_FROM
31+
name: draughting_element_schema
32+
interfaced_items:
33+
- draughting_model_item_definition
34+
- type: USE_FROM
35+
name: draughting_element_schema
36+
interfaced_items:
37+
- tessellated_annotation_occurence
38+
- type: USE_FROM
39+
name: presentation_definition_schema
40+
interfaced_items:
41+
- annotation_curve_occurrence
42+
- type: USE_FROM
43+
name: presentation_definition_schema
44+
interfaced_items:
45+
- annotation_fill_area_occurrence
46+
- type: USE_FROM
47+
name: presentation_definition_schema
48+
interfaced_items:
49+
- annotation_point_occurrence
50+
- type: USE_FROM
51+
name: presentation_definition_schema
52+
interfaced_items:
53+
- annotation_symbol_occurrence
54+
- type: USE_FROM
55+
name: presentation_definition_schema
56+
interfaced_items:
57+
- annotation_text_occurrence
58+
- type: USE_FROM
59+
name: product_property_definitin_schema
60+
interfaced_items:
61+
- product_definition_shape
62+
- type: USE_FROM
63+
name: product_property_definitin_schema
64+
interfaced_items:
65+
- property_definition
66+
- type: USE_FROM
67+
name: product_property_definitin_schema
68+
interfaced_items:
69+
- shape_aspect
70+
- type: USE_FROM
71+
name: product_property_definitin_schema
72+
interfaced_items:
73+
- shape_aspect_relationship
74+
deletions:
75+
- type: TYPE
76+
name: draughting_model_item_association_select
77+
moved_to:
78+
schema: draughting_element_schema
79+
- type: TYPE
80+
name: draughting_model_item_definition
81+
moved_to:
82+
schema: draughting_element_schema
83+
- type: ENTITY
84+
name: draughting_model_item_assocation
85+
moved_to:
86+
schema: draughting_element_schema

sources/express-changes/schemas/schema_changes.yaml

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
$schema: http://json-schema.org/draft-07/schema#
1+
$schema: http://json-schema.org/draft-04/schema#
22
title: EXPRESS Schema Changes
33
description: Records modifications to EXPRESS schema structure across versions
44
type: object
@@ -33,23 +33,22 @@ definitions:
3333
Provides comprehensive overview of what changed and why.
3434
additions:
3535
type: array
36-
description: Array of added elements
36+
description: Array of addition changes representing added elements
3737
items:
38-
$ref: '#/definitions/item_change'
38+
$ref: '#/definitions/addition_change'
3939
modifications:
4040
type: array
41-
description: Array of modified elements
41+
description: Array of modification changes representing modifications
4242
items:
43-
$ref: '#/definitions/item_change'
43+
$ref: '#/definitions/modification_change'
4444
deletions:
4545
type: array
46-
description: Array of deleted elements
46+
description: Array of deletion changes representing removed elements
4747
items:
48-
$ref: '#/definitions/item_change'
48+
$ref: '#/definitions/deletion_change'
4949
item_change:
5050
type: object
5151
description: Represents a specific schema element change
52-
additionalProperties: false
5352
required:
5453
- type
5554
- name
@@ -84,3 +83,44 @@ definitions:
8483
or used. Not needed when in deletions.
8584
items:
8685
type: string
86+
modification_change:
87+
description: Represents a modification to the schema
88+
$ref: '#/definitions/item_change'
89+
addition_change:
90+
description: Represents an addition to the schema
91+
allOf:
92+
- $ref: '#/definitions/item_change'
93+
- properties:
94+
moved_from:
95+
type: object
96+
description: >-
97+
If the addition was due to a move from another schema, provides
98+
the resource and module where it was moved from.
99+
required:
100+
- schema
101+
properties:
102+
schema:
103+
type: string
104+
description: Name of the schema where the item was moved from
105+
version:
106+
type: integer
107+
description: Version number in the source schema
108+
deletion_change:
109+
description: Represents a deletion from the schema
110+
allOf:
111+
- $ref: '#/definitions/item_change'
112+
- properties:
113+
moved_to:
114+
type: object
115+
description: >-
116+
If the deletion was due to a move to another schema, provides
117+
the resource and module where it was moved to.
118+
required:
119+
- schema
120+
properties:
121+
schema:
122+
type: string
123+
description: Name of the schema where the item was moved to
124+
version:
125+
type: integer
126+
description: Version number in the target schema

sources/express-changes/sections/04-structure.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ specification.
1616
schema: String (required)
1717
# Name of the EXPRESS schema
1818
versions:
19-
- version: String (required)
19+
- version: Integer (required)
2020
# Version number for this change version
2121
description: String (optional)
2222
# Description of changes in this version

0 commit comments

Comments
 (0)