-
Notifications
You must be signed in to change notification settings - Fork 484
Description
This morning a discussion arose around what is the correct interpretation of "should" in this clause of the 3D Tiles spec:
All extensions used in a tileset or any descendant external tilesets shall be listed in the entry tileset JSON in the top-level extensionsUsed array property...
My interpretation of this clause is that the "shall" indicates that the specification is only satisfied if all criteria is true. That is that:
- An extension is being used (included) in a
extensions
field for the tileset JSON of the tileset or a descendant external tileset. - The extension is specified in the
extensionsUsed
for the tileset.
So, in the event that only one of these components is true, then the implementation is incorrect. E.g. An extension is specified in extensionsUsed
but not used anywhere in any extensions
field for the tileset or its descendants.
As stated in the thread my interpretation is based on my understanding of the ISO directives that define "shall" and related terms.
I'm not entirely sure what the correct answer is here, but I think it's important for us to answer this question. If my interpretation is incorrect, I absolutely want to know. Conversely, if my interpretation is in fact correct, there's potentially a fix we need to do for Reality Analysis.