Skip to content

Commit 6c815a0

Browse files
committed
feat: update content per @TRThurman and make interfaced_items and description more granular
1 parent aaa3831 commit 6c815a0

3 files changed

Lines changed: 110 additions & 57 deletions

File tree

sources/express-changes/sections/05-schema-change.adoc

Lines changed: 82 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@
33

44
=== General
55

6-
The schema change structure captures modifications to the structure and
7-
semantics of an EXPRESS schema across different editions or versions. It
8-
captures additions, modifications, and removals of schema elements such as
6+
The schema change structure is a record of modifications to the structure and
7+
semantics of an EXPRESS schema across different editions.
8+
9+
It records additions, modifications, and removals of schema elements such as
910
entities, types, functions, and rules.
1011

1112
The structure is built on the following constructs:
1213

13-
* Edition changes: Each edition or version of the schema, detailing what
14-
changed.
14+
* Edition changes: Changes made to the schema in a specific edition compared to
15+
the previous edition.
1516

16-
* Item changes: Specific elements that were added, modified, or removed in an
17-
edition.
17+
* Item changes: Specific elements that were added, modified, or removed.
1818

1919
Syntax:
2020

@@ -30,16 +30,15 @@ editions:
3030

3131
=== Edition change
3232

33-
Each edition change represents a specific version of the schema and details
34-
the changes made in that version.
33+
Each edition change object details changes between two editions of the schema.
3534

3635
Syntax:
3736

3837
[source,yaml]
3938
----
4039
version: String (required)
4140
# Version number for this change edition
42-
description: String (required)
41+
description: String (optional)
4342
# Description of changes in this edition
4443
additions:
4544
- {item change 1}
@@ -54,40 +53,47 @@ removals:
5453

5554
Fields:
5655

57-
`version`:: The version number (string) (required).
56+
`version`:: (required) The version number (integer). Must be positive.
5857
+
5958
[example]
60-
`2`, `3.1`, `2024-06`.
59+
`2`, `3`, `6`.
6160

62-
`description`:: A multi-line string describing the changes made in this edition
63-
(required). Should provide a comprehensive overview of what changed and why.
61+
`description`:: (optional) A multi-line string describing the changes made in
62+
this edition. Should provide a comprehensive overview of what changed and why.
63+
If not provided, a publication may provide its own boilerplate or summary.
6464

65-
`additions`:: An array of added elements as item changes (optional).
65+
`additions`:: (optional) An array of added elements as item changes.
6666

67-
`modifications`:: An array of modified elements as item changes (optional).
67+
`modifications`:: (optional) An array of modified elements as item changes.
6868

69-
`removals`:: An array of removed elements as item changes (optional).
69+
`removals`:: (optional) An array of removed elements as item changes.
7070

7171

7272

7373
=== Item change
7474

7575
Each item change represents a specific schema element that was added, modified,
76-
or removed.
76+
or removed, and when applicable, references to other EXPRESS constructs.
7777

7878
Syntax:
7979

8080
[source,yaml]
8181
----
82-
type: String (required)
8382
# Type of the EXPRESS construct (e.g., ENTITY, TYPE, FUNCTION)
84-
name: String (required)
83+
type: String (required)
8584
# Name of the EXPRESS construct
85+
name: String (required)
86+
# Description of the change
87+
description: Array (optional)
88+
- String
89+
# For USE_FROM or REFERENCE_FROM, list of specific items referenced or used
90+
interfaced_items: Array (optional)
91+
- String
8692
----
8793

8894
Fields:
8995

90-
`type`:: The type of the EXPRESS construct (string) (required). Allowed values
96+
`type`:: (required) The type of the EXPRESS construct (string). Allowed values
9197
are:
9298

9399
`ENTITY`::: Entity definitions
@@ -96,6 +102,59 @@ are:
96102
`RULE`::: Rule definitions
97103
`PROCEDURE`::: Procedure definitions
98104
`CONSTANT`::: Constant definitions
105+
`REFERENCE_FROM`::: A reference from another schema, with an additional field
106+
`interfaced_items` listing the specific items referenced when in `additions`.
107+
When used in `deletions`, no `interfaced_items` is needed.
108+
`USE_FROM`::: A use from another schema, with an additional field `interfaced_items`
109+
listing the specific items used when in `additions`. When used in `deletions`, no
110+
`interfaced_items` is needed.
111+
112+
`name`:: (required) The name of the EXPRESS construct (string).
113+
114+
`description`:: (optional) An array of strings describing the change. Each
115+
string represents a description for a single change in the named target.
116+
For instance, if an entity had an attribute removed and a WHERE rule added, the
117+
description array would have two entries, one for each change.
118+
+
119+
[example]
120+
====
121+
[source,yaml]
122+
----
123+
---
124+
schema: Additive_manufacturing_part_and_build_information_arm
125+
editions:
126+
- version: '2'
127+
modifications:
128+
- type: ENTITY
129+
name: Additive_manufacturing_build_direction_element
130+
description:
131+
- Remove Attribute 'identified_item'
132+
- Remove DERIVE 'element_name'
133+
- Add WHERE 'WR1'
134+
- Figure updated
135+
----
136+
====
99137

100-
`name`:: The name of the EXPRESS construct (string) (required).
101-
138+
`interfaced_items`:: (optional) For `USE_FROM` or `REFERENCE_FROM`, an array of
139+
specific items referenced or used. Not needed when in `deletions`.
140+
+
141+
[example]
142+
====
143+
[source,yaml]
144+
----
145+
---
146+
schema: Document_and_version_identification_mim
147+
editions:
148+
- version: '2'
149+
deletions:
150+
- type: USE_FROM
151+
name: Product_identification_mim
152+
- version: '3'
153+
additions:
154+
- type: USE_FROM
155+
name: product_definition_schema
156+
interfaced_items:
157+
- product_category
158+
- product_related_product_category
159+
----
160+
====

sources/express-changes/sections/06-mapping-change.adoc

Lines changed: 24 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ another schema or representation.
88

99
The structure is built on the following constructs:
1010

11-
* Edition changes: Each edition or version of the schema, detailing what
12-
changed.
11+
* Edition changes: Details changes made to this edition of the mapping specification
12+
against the previous version.
1313

14-
* Item changes: Specific elements that had mappings changed in an edition.
14+
* Item changes: Specific elements in the mappings that were changed in this edition.
1515

1616
Syntax:
1717

@@ -26,33 +26,34 @@ editions:
2626

2727
=== Edition change
2828

29-
Each edition change represents a specific version of the schema and details
30-
the mapping changes made in that version.
29+
Each edition change represents a changes made to the mapping specification in a
30+
specific edition compared to the previous edition.
3131

3232
Syntax:
3333

3434
[source,yaml]
3535
----
3636
version: String (required)
3737
# Version number for this change edition
38-
description: String (required)
38+
description: String (optional)
3939
# Description of changes in this edition
40-
mapping:
40+
mappings:
4141
- {item change 1}
4242
- {item change 2}
4343
----
4444

4545
Fields:
4646

47-
`version`:: The version number (string) (required).
47+
`version`:: (required) The version number (integer). Must be positive.
4848
+
4949
[example]
50-
`2`, `3.1`, `2024-06`.
50+
`2`, `3`, `6`.
5151

52-
`description`:: A multi-line string describing the changes made in this edition
53-
(required). Should provide a comprehensive overview of what changed and why.
52+
`description`:: (optional) A multi-line string describing the changes made in
53+
this edition. Should provide a comprehensive overview of what changed and why.
54+
If not provided, a publication may provide its own boilerplate or summary.
5455

55-
`mappings`:: An array of mapping changes (optional).
56+
`mappings`:: (optional) An array of mapping changes.
5657

5758

5859
=== Mapping change
@@ -64,41 +65,33 @@ Syntax:
6465

6566
[source,yaml]
6667
----
67-
name: String (required)
68+
name: String (optional)
6869
# Name of the EXPRESS construct whose mapping changed
6970
description: String (optional)
7071
# Description of the mapping change
7172
----
7273

7374
Fields:
7475

75-
`name`:: The name of the EXPRESS construct whose mapping changed (string) (required).
76-
77-
`description`:: A description of the mapping change (string) (optional).
76+
`name`:: (optional) The name of the EXPRESS construct whose mapping changed (string).
7877

78+
`description`:: (optional) A description of the mapping change (string).
7979

80-
.Mapping change file from ISO 10303 SRL altered_package
80+
.Mapping change file from ISO 10303 SRL module product_as_individual_assembly_and_test
8181
[example]
8282
====
8383
[source,yaml]
8484
----
8585
---
86-
schema: altered_package
87-
change_edition:
86+
schema: product_as_individual_assembly_and_test
87+
editions:
8888
- version: '2'
8989
mappings:
90-
- name: Altered_package.modified_terminal_separation
91-
- description: Altered_package.of_geometric_status mapping has been updated.
92-
- version: '3'
93-
description: |-
94-
Minor editorial changes.
95-
96-
The definitions of the following MIM EXPRESS declarations and interface specifications were modified:
97-
98-
* ENTITY surface_prepped_terminal.
99-
- version: '4'
100-
description: 'Minor editorial change: the HTML link of Layered_assembly_module_design_view
101-
in Surface_prepped_terminal''s description has been fixed.'
90+
- description: Applied_activity_assignment mapping updated
91+
- description: Applied_process_operation_occurrence mapping updated
92+
- description: Applied_test_activity mapping updated
93+
- version: '5'
94+
description: Mapping specifications updated.
10295
----
10396
====
10497

sources/express-changes/sections/aa-examples.adoc

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ This example shows schema changes made to a resource schema,
1414
----
1515
---
1616
schema: support_resource_schema
17-
change_edition:
17+
editions:
1818
- version: '2'
1919
description: |-
2020
The definitions of the following EXPRESS entity data types were modified:
@@ -62,7 +62,7 @@ across several editions: version 2, version 3, version 4, and version 5.
6262
----
6363
---
6464
schema: Analytical_model_arm
65-
change_edition:
65+
editions:
6666
- version: '2'
6767
additions:
6868
- type: TYPE
@@ -85,7 +85,8 @@ change_edition:
8585
name: Specification_document_arm
8686
- type: REFERENCE_FROM
8787
name: product_identification_arm
88-
interfaced_items: types_of_product
88+
interfaced_items:
89+
- types_of_product
8990
- version: '3'
9091
additions:
9192
- type: TYPE

0 commit comments

Comments
 (0)