Files
Marc SchierandCopilot c71f2e7733 Fix source generator generated structures with optional fields (#3674)
Split validator load/validate; split DesignFileCollection Targets/Dependencies

ModelDesignValidator.LoadNodes now skips ValidateDictionary when a model is loaded purely as a dependency. The flag is plumbed through LoadModelDesign and LoadDesignFile; the dep loop in ValidateModel passes false, the primary target passes true. This lets callers supply unrelated or reverse dependencies (deps that import the target) without triggering premature validation failures.

DesignFileCollection exposes Targets + Dependencies; generators and tests updated. MergeNamespace preserves FilePath across PublicationDate-based replacement so later loads can still find the source file. Tester simplified to treat every other xml/csv pair as a dependency of each target.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-17 22:36:53 +02:00

10 KiB

1WoTAssetConnectionManagementType1ObjectType
2WoTAssetConnectionManagementType_WoTAssetName_Placeholder2Object
3WotConNamespaceMetadata_NamespaceFile3Object
4WotConNamespaceMetadata_NamespaceFile_Size4Variable
5WotConNamespaceMetadata_NamespaceFile_Writable5Variable
6WotConNamespaceMetadata_NamespaceFile_UserWritable6Variable
7WotConNamespaceMetadata_NamespaceFile_OpenCount7Variable
8WotConNamespaceMetadata_NamespaceFile_MimeType8Variable
9WotConNamespaceMetadata_NamespaceFile_MaxByteStringLength9Variable
10WotConNamespaceMetadata_NamespaceFile_LastModifiedTime10Variable
11WotConNamespaceMetadata_NamespaceFile_Open11Method
12WotConNamespaceMetadata_NamespaceFile_Open_InputArguments12Variable
13WotConNamespaceMetadata_NamespaceFile_Open_OutputArguments13Variable
14WotConNamespaceMetadata_NamespaceFile_Close14Method
15WotConNamespaceMetadata_NamespaceFile_Close_InputArguments15Variable
16WotConNamespaceMetadata_NamespaceFile_Read16Method
17WotConNamespaceMetadata_NamespaceFile_Read_InputArguments17Variable
18WotConNamespaceMetadata_NamespaceFile_Read_OutputArguments18Variable
19WotConNamespaceMetadata_NamespaceFile_Write19Method
20WotConNamespaceMetadata_NamespaceFile_Write_InputArguments20Variable
21WotConNamespaceMetadata_NamespaceFile_GetPosition21Method
22WotConNamespaceMetadata_NamespaceFile_GetPosition_InputArguments22Variable
23WotConNamespaceMetadata_NamespaceFile_GetPosition_OutputArguments23Variable
24WotConNamespaceMetadata_NamespaceFile_SetPosition24Method
25WotConNamespaceMetadata_NamespaceFile_SetPosition_InputArguments25Variable
26WoTAssetConnectionManagementType_CreateAsset26Method
27WoTAssetConnectionManagementType_CreateAsset_InputArguments27Variable
28WoTAssetConnectionManagementType_CreateAsset_OutputArguments28Variable
29WoTAssetConnectionManagementType_DeleteAsset29Method
30WoTAssetConnectionManagementType_DeleteAsset_InputArguments30Variable
31WoTAssetConnectionManagement31Object
32WoTAssetConnectionManagement_CreateAsset32Method
33WoTAssetConnectionManagement_CreateAsset_InputArguments33Variable
34WoTAssetConnectionManagement_CreateAsset_OutputArguments34Variable
35WoTAssetConnectionManagement_DeleteAsset35Method
36WoTAssetConnectionManagement_DeleteAsset_InputArguments36Variable
37WotConNamespaceMetadata_NamespaceFile_ExportNamespace37Method
38WotConNamespaceMetadata_ConfigurationVersion38Variable
39WotConNamespaceMetadata_ModelVersion39Variable
40WoTAssetConnectionManagementType_SupportedWoTBindings40Variable
41WoTAssetConnectionManagementType_DiscoverAssets41Method
42IWoTAssetType42ObjectType
43IWoTAssetType_WoTFile43Object
44IWoTAssetType_WoTFile_Size44Variable
45IWoTAssetType_WoTFile_Writable45Variable
46IWoTAssetType_WoTFile_UserWritable46Variable
47IWoTAssetType_WoTFile_OpenCount47Variable
48WoTAssetConnectionManagementType_DiscoverAssets_OutputArguments48Variable
49WoTAssetConnectionManagementType_CreateAssetForEndpoint49Method
50WoTAssetConnectionManagementType_CreateAssetForEndpoint_InputArguments50Variable
51IWoTAssetType_WoTFile_Open51Method
52IWoTAssetType_WoTFile_Open_InputArguments52Variable
53IWoTAssetType_WoTFile_Open_OutputArguments53Variable
54IWoTAssetType_WoTFile_Close54Method
55IWoTAssetType_WoTFile_Close_InputArguments55Variable
56IWoTAssetType_WoTFile_Read56Method
57IWoTAssetType_WoTFile_Read_InputArguments57Variable
58IWoTAssetType_WoTFile_Read_OutputArguments58Variable
59IWoTAssetType_WoTFile_Write59Method
60IWoTAssetType_WoTFile_Write_InputArguments60Variable
61IWoTAssetType_WoTFile_GetPosition61Method
62IWoTAssetType_WoTFile_GetPosition_InputArguments62Variable
63IWoTAssetType_WoTFile_GetPosition_OutputArguments63Variable
64IWoTAssetType_WoTFile_SetPosition64Method
65IWoTAssetType_WoTFile_SetPosition_InputArguments65Variable
66IWoTAssetType_WoTPropertyName_Placeholder66Variable
67WotConNamespaceMetadata67Object
68WotConNamespaceMetadata_NamespaceUri68Variable
69WotConNamespaceMetadata_NamespaceVersion69Variable
70WotConNamespaceMetadata_NamespacePublicationDate70Variable
71WotConNamespaceMetadata_IsNamespaceSubset71Variable
72WotConNamespaceMetadata_StaticNodeIdTypes72Variable
73WotConNamespaceMetadata_StaticNumericNodeIdRange73Variable
74WotConNamespaceMetadata_StaticStringNodeIdPattern74Variable
75WoTAssetConnectionManagementType_ConnectionTest75Method
76WoTAssetConnectionManagementType_ConnectionTest_InputArguments76Variable
77WoTAssetConnectionManagementType_ConnectionTest_OutputArguments77Variable
78WoTAssetConnectionManagementType_Configuration78Object
79WoTAssetConnectionManagementType_Configuration_License79Variable
80WoTAssetConnectionManagement_SupportedWoTBindings80Variable
81WoTAssetConnectionManagement_DiscoverAssets81Method
82WoTAssetConnectionManagement_DiscoverAssets_OutputArguments82Variable
83WoTAssetConnectionManagement_CreateAssetForEndpoint83Method
84WoTAssetConnectionManagement_CreateAssetForEndpoint_InputArguments84Variable
85WoTAssetConnectionManagement_ConnectionTest85Method
86WoTAssetConnectionManagement_ConnectionTest_InputArguments86Variable
87WoTAssetConnectionManagement_ConnectionTest_OutputArguments87Variable
88WoTAssetConnectionManagement_Configuration88Object
89WoTAssetConnectionManagement_Configuration_License89Variable
90CreateAssetMethodType90Method
91CreateAssetMethodType_InputArguments91Variable
92CreateAssetMethodType_OutputArguments92Variable
93DeleteAssetMethodType93Method
94DeleteAssetMethodType_InputArguments94Variable
95DiscoverAssetsMethodType95Method
96DiscoverAssetsMethodType_OutputArguments96Variable
97CreateAssetForEndpointMethodType97Method
98CreateAssetForEndpointMethodType_InputArguments98Variable
99WotConNamespaceMetadata_DefaultRolePermissions99Variable
100WotConNamespaceMetadata_DefaultUserRolePermissions100Variable
101WotConNamespaceMetadata_DefaultAccessRestrictions101Variable
102ConnectionTestMethodType102Method
103ConnectionTestMethodType_InputArguments103Variable
104ConnectionTestMethodType_OutputArguments104Variable
105WoTAssetConfigurationType105ObjectType
106IWoTAssetType_WoTFile_CloseAndUpdate106Method
107IWoTAssetType_WoTFile_CloseAndUpdate_InputArguments107Variable
108WoTAssetConfigurationType_WoTConfigurationParameterName_Placeholder108Variable
109WoTAssetConfigurationType_License109Variable
110WoTAssetFileType110ObjectType
111WoTAssetFileType_CloseAndUpdate111Method
112WoTAssetFileType_CloseAndUpdate_InputArguments112Variable
113IWoTAssetType_WoTFile_MimeType113Variable
114IWoTAssetType_WoTFile_MaxByteStringLength114Variable
115WoTAssetType115Unspecified
116WoTAssetType_WoTFile116Unspecified
117WoTAssetType_WoTFile_Size117Unspecified
118WoTAssetType_WoTFile_Writable118Unspecified
119WoTAssetType_WoTFile_UserWritable119Unspecified
120WoTAssetType_WoTFile_OpenCount120Unspecified
121IWoTAssetType_WoTFile_LastModifiedTime121Variable
122IWoTAssetType_AssetEndpoint122Variable
123CloseAndUpdateMethodType123Method
124WoTAssetType_WoTFile_Open124Unspecified
125WoTAssetType_WoTFile_Open_InputArguments125Unspecified
126WoTAssetType_WoTFile_Open_OutputArguments126Unspecified
127WoTAssetType_WoTFile_Close127Unspecified
128WoTAssetType_WoTFile_Close_InputArguments128Unspecified
129WoTAssetType_WoTFile_Read129Unspecified
130WoTAssetType_WoTFile_Read_InputArguments130Unspecified
131WoTAssetType_WoTFile_Read_OutputArguments131Unspecified
132WoTAssetType_WoTFile_Write132Unspecified
133WoTAssetType_WoTFile_Write_InputArguments133Unspecified
134WoTAssetType_WoTFile_GetPosition134Unspecified
135WoTAssetType_WoTFile_GetPosition_InputArguments135Unspecified
136WoTAssetType_WoTFile_GetPosition_OutputArguments136Unspecified
137WoTAssetType_WoTFile_SetPosition137Unspecified
138WoTAssetType_WoTFile_SetPosition_InputArguments138Unspecified
139WoTAssetType_WoTFile_CloseAndUpdate139Unspecified
140WoTAssetType_WoTFile_CloseAndUpdate_InputArguments140Unspecified
141WoTAssetType_WoTPropertyName_Placeholder141Unspecified
142HasWoTComponent142ReferenceType
143CloseAndUpdateMethodType_InputArguments143Variable
144WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile144Object
145WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Size145Variable
146WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Writable146Variable
147WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_UserWritable147Variable
148WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_OpenCount148Variable
149WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_MimeType149Variable
150WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_MaxByteStringLength150Variable
151WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_LastModifiedTime151Variable
152WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Open152Method
153WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Open_InputArguments153Variable
154WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Open_OutputArguments154Variable
155WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Close155Method
156WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Close_InputArguments156Variable
157WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Read157Method
158WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Read_InputArguments158Variable
159WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Read_OutputArguments159Variable
160WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Write160Method
161WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_Write_InputArguments161Variable
162WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_GetPosition162Method
163WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_GetPosition_InputArguments163Variable
164WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_GetPosition_OutputArguments164Variable
165WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_SetPosition165Method
166WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_SetPosition_InputArguments166Variable
167WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_CloseAndUpdate167Method
168WoTAssetConnectionManagementType_WoTAssetName_Placeholder_WoTFile_CloseAndUpdate_InputArguments168Variable
169WoTAssetConnectionManagementType_WoTAssetName_Placeholder_AssetEndpoint169Variable
170WoTAssetConnectionManagementType_CreateAssetForEndpoint_OutputArguments170Variable
171WoTAssetConnectionManagement_CreateAssetForEndpoint_OutputArguments171Variable
172CreateAssetForEndpointMethodType_OutputArguments172Variable