itwinjs-core icon indicating copy to clipboard operation
itwinjs-core copied to clipboard

[Project] Schema Merging API

Open StefanApfel-Bentley opened this issue 2 years ago • 0 comments

Goal is to develop a library component that merges two schemas together. For this we use the schema comparer api, to get the differences between two schemas and apply the merging logic depending on the type of change.

See as reference the Schema Merger in the C++ code https://bentleycs.visualstudio.com/iModelTechnologies/_git/imodel02?path=/iModelCore/ecobjects/src/SchemaMerger.cpp&_a=contents&version=GBmaster

### Merging API
- [ ] https://github.com/iTwin/itwinjs-core/issues/6081
- [ ] https://github.com/iTwin/itwinjs-core/issues/6859
- [ ] https://github.com/iTwin/itwinjs-backlog/issues/851
- [ ] https://github.com/iTwin/itwinjs-backlog/issues/852
- [ ] https://github.com/iTwin/itwinjs-backlog/issues/853
- [ ] https://github.com/iTwin/itwinjs-backlog/issues/855
- [ ] https://github.com/iTwin/itwinjs-core/issues/5891
- [ ] https://github.com/iTwin/itwinjs-core/issues/5991
- [ ] https://github.com/iTwin/itwinjs-core/issues/5992
- [ ] https://github.com/iTwin/itwinjs-core/issues/5993
- [ ] https://github.com/iTwin/itwinjs-core/issues/5994
- [ ] https://github.com/iTwin/itwinjs-core/issues/6014
- [ ] https://github.com/iTwin/itwinjs-core/issues/5909
- [ ] https://github.com/iTwin/itwinjs-core/issues/6045
- [ ] https://github.com/iTwin/itwinjs-core/issues/7115
- [ ] https://github.com/iTwin/itwinjs-core/issues/5989
- [ ] https://github.com/iTwin/itwinjs-core/issues/5990
- [ ] https://github.com/iTwin/itwinjs-core/issues/6348
- [ ] https://github.com/iTwin/itwinjs-core/issues/6638
- [ ] https://github.com/iTwin/itwinjs-core/issues/6855
- [ ] https://github.com/iTwin/itwinjs-core/issues/6311
### Merge Changes API
- [ ] https://github.com/iTwin/itwinjs-core/issues/6857
- [ ] https://github.com/iTwin/itwinjs-core/issues/6858
- [ ] https://github.com/iTwin/itwinjs-core/issues/6895
- [ ] Allow to alter the schema alias through changes
- [ ] Support renaming schema items / properties
- [ ] Support skipping differences (and related) from being merged
- [ ] Support force difference merging, despite possible data integrity issues
### Bugs
- [ ] https://github.com/iTwin/itwinjs-core/issues/6731
- [ ] https://github.com/iTwin/itwinjs-core/issues/7181
- [ ] https://github.com/iTwin/itwinjs-core/issues/6349
- [ ] https://github.com/iTwin/itwinjs-core/issues/7020
- [ ] https://github.com/iTwin/itwinjs-core/issues/7021
- [ ] Use full qualified names for schema edits
### Documentation
- [ ] https://github.com/iTwin/itwinjs-core/issues/6875
- [ ] List of EC Validation Rules that gets applied during schema merging
- [ ] Schema Conflict and Changes documentation
- [ ] Examples

StefanApfel-Bentley avatar Aug 17 '23 13:08 StefanApfel-Bentley