Book a Demo

Author Topic: v15: Element order in XSD sequence changed.  (Read 6027 times)

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
v15: Element order in XSD sequence changed.
« on: September 04, 2019, 09:12:40 pm »
We are trying to migrate from version 12.1 to version 15.
A big thing for us is the XSD generation, and we noticed a breaking change.
In v12 attributes are exported as elements in a sequence in the order they appear in the model.
In v15 attributes are exported in alphabetical order.

In other words, v12 and v15 produce different, non compatible XSD's from the same model.
I know about the position tag workaround, but that would mean adding and maintaining thousand of tagged values for no added value.

Bug reported

Geert

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: v15: Element order in XSD sequence changed.
« Reply #1 on: September 05, 2019, 11:36:55 am »
From what I can see:
  • It's been that way since v14
  • Prior to that change, the order of any associations was undefined and unstable between generations
  • Prior to that change, adding position tags required all attributes and associations to have the a unique value, and the values had to be contiguous

I don't think it would make any sense to revert that change. It would be possible to introduce an option that used the old behavior if there was at most one association for a type and no order tagged values. Personally I'd say that it makes more sense to write a simple script that set the tagged value based on the attribute pos and run that on each type that you need the old behavior.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: v15: Element order in XSD sequence changed.
« Reply #2 on: September 05, 2019, 02:43:20 pm »
  • Prior to that change, the order of any associations was undefined and unstable between generations
True, that is the reason why they don't use associations, only attributes. That makes it easy to order them. The visual order is the same as the generated order.

For this client the behavior in version 12 works just fine.
If I now have to tell them we need something extra (a script to add positions tags) to ge make it work like used to work by default in version 12 they are understandably not happy.

An option to revert to the old behavior would be preferable.

Please be more careful in introducing breaking changes like this. It makes upgrading a real headache.

Geert
« Last Edit: September 05, 2019, 03:15:56 pm by Geert Bellekens »