| Quintiq file version 2.0 | 
| #parent: #root | 
| Method GetExtensionTypeQueryURL () const remote as String | 
| { | 
|   TextBody: | 
|   [* | 
|     url := this.RootURL().TrimBoth(); | 
|      | 
|     if( url = '' ) | 
|     { | 
|       url := '<3DSpace URL>'; | 
|     } | 
|      | 
|     if( not url.EndsWith( '/' ) ) | 
|     { | 
|       url := url + '/'; | 
|     } | 
|      | 
|     extensions := selectuniquevalues( this, Entities.Extensions, extension, | 
|                                       true, | 
|                                       extension.Type() ); | 
|      | 
|     selects := construct( Strings ); | 
|     traverse( extensions, Elements, extension ) | 
|     { | 
|         extension := extension.ReplaceAll( ' ', '%20' ); | 
|         selects.Add( 'select=interface%5B' + extension + '%5D.name&select=interface%5B' + extension + '%5D.allparents' ); | 
|     } | 
|      | 
|     url := url + 'resources/v1/model/op/fetch?' + selects.ToString( '&' ); | 
|      | 
|     return url; | 
|   *] | 
|   InterfaceProperties { Accessibility: 'Module' } | 
| } |