Azure / opendigitaltwins-dtdl

Digital Twins Definition Language
Creative Commons Attribution 4.0 International
466 stars 160 forks source link

Can not convert Brick to DTDL because limit of interfaces is 2 #111

Closed georghildebrand closed 1 year ago

georghildebrand commented 3 years ago

Is there any plan to increase the number interfaces that can be extended from 2 to eg. 10?

I am trying (issue in azure examples for RDF2DTDLConverter) to import the BrickSchema into DTDL and fail because of this reason. Brick would currently need to extend up to 9 super classes.

briancr-ms commented 3 years ago

Thanks for your feedback on this issue. We are looking at changing this limit as well as some other limits in DTDL.

One approach we're considering is something like the following. It would be great to hear if you have any feedback on something like this.

Currently, in DTDL v2, extends allows 2 interfaces per extends up to a depth of 10 for a maximum of 1,024 interfaces in an extends hierarchy.

We are considering an approach that would still allow a maximum of 1,024 interfaces in an extends hierarchy, but distributed however you like: 1,024 interfaces in a single extends, but no extends from any of those interfaces; single inheritance up to 1,024 levels; or any combination that doesn't exceed 1,024 interfaces in the extends hierarchy.

rido-min commented 1 year ago

Hi @georghildebrand

The DTDL v3 spec, now in preview, has an updated limits. https://github.com/Azure/opendigitaltwins-dtdl/blob/master/DTDL/Docs/en-US/DTDL.Specification.v3.md#limits-and-exclusions

Will the new limits help to solve your scenario. If so, can you close this issue?

georghildebrand commented 1 year ago

@rido-min , thx for coming back to this. not using the azure offer ATM. will close the issue.