@bentley/imodeljs-win32-x64 3.0.24 → 3.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/Assets/ECSchemas/Dgn/ChangedElements.01.00.00.ecschema.xml +80 -80
  2. package/Assets/ECSchemas/ECDb/ECDbMap.02.00.00.ecschema.xml +50 -50
  3. package/Assets/ECSchemas/ECDb/ECDbMeta.04.00.01.ecschema.xml +533 -533
  4. package/Assets/ECSchemas/ECDb/ECDbSchemaPolicies.01.00.00.ecschema.xml +20 -20
  5. package/Assets/ParasolidSchema/sch_0_15.sch_txt +584 -584
  6. package/Assets/ParasolidSchema/sch_10002.sch_txt +1236 -1236
  7. package/Assets/ParasolidSchema/sch_10004.sch_txt +1238 -1238
  8. package/Assets/ParasolidSchema/sch_100_1000.sch_txt +586 -586
  9. package/Assets/ParasolidSchema/sch_10100.sch_txt +1252 -1252
  10. package/Assets/ParasolidSchema/sch_1022.sch_txt +738 -738
  11. package/Assets/ParasolidSchema/sch_11003.sch_txt +1254 -1254
  12. package/Assets/ParasolidSchema/sch_11004.sch_txt +1254 -1254
  13. package/Assets/ParasolidSchema/sch_110_0.sch_txt +586 -586
  14. package/Assets/ParasolidSchema/sch_12006.sch_txt +1274 -1274
  15. package/Assets/ParasolidSchema/sch_120_0.sch_txt +586 -586
  16. package/Assets/ParasolidSchema/sch_12102.sch_txt +1276 -1276
  17. package/Assets/ParasolidSchema/sch_12103.sch_txt +1279 -1279
  18. package/Assets/ParasolidSchema/sch_13005.sch_txt +1279 -1279
  19. package/Assets/ParasolidSchema/sch_13006.sch_txt +1280 -1280
  20. package/Assets/ParasolidSchema/sch_130_0.sch_txt +586 -586
  21. package/Assets/ParasolidSchema/sch_14000.sch_txt +1281 -1281
  22. package/Assets/ParasolidSchema/sch_140_0.sch_txt +586 -586
  23. package/Assets/ParasolidSchema/sch_15003.sch_txt +1286 -1286
  24. package/Assets/ParasolidSchema/sch_15102.sch_txt +1298 -1298
  25. package/Assets/ParasolidSchema/sch_16002.sch_txt +1302 -1302
  26. package/Assets/ParasolidSchema/sch_16003.sch_txt +1303 -1303
  27. package/Assets/ParasolidSchema/sch_16004.sch_txt +1306 -1306
  28. package/Assets/ParasolidSchema/sch_16100.sch_txt +1313 -1313
  29. package/Assets/ParasolidSchema/sch_17104.sch_txt +1342 -1342
  30. package/Assets/ParasolidSchema/sch_17105.sch_txt +1357 -1357
  31. package/Assets/ParasolidSchema/sch_17106.sch_txt +1355 -1355
  32. package/Assets/ParasolidSchema/sch_18005.sch_txt +1369 -1369
  33. package/Assets/ParasolidSchema/sch_18007.sch_txt +1389 -1389
  34. package/Assets/ParasolidSchema/sch_18106.sch_txt +1381 -1381
  35. package/Assets/ParasolidSchema/sch_19002.sch_txt +1386 -1386
  36. package/Assets/ParasolidSchema/sch_19007.sch_txt +1399 -1399
  37. package/Assets/ParasolidSchema/sch_19008.sch_txt +1398 -1398
  38. package/Assets/ParasolidSchema/sch_20000.sch_txt +1407 -1407
  39. package/Assets/ParasolidSchema/sch_200_1009.sch_txt +691 -691
  40. package/Assets/ParasolidSchema/sch_200_1010.sch_txt +693 -693
  41. package/Assets/ParasolidSchema/sch_200_1011.sch_txt +696 -696
  42. package/Assets/ParasolidSchema/sch_200_1012.sch_txt +696 -696
  43. package/Assets/ParasolidSchema/sch_210_1012.sch_txt +696 -696
  44. package/Assets/ParasolidSchema/sch_25000.sch_txt +1439 -1439
  45. package/Assets/ParasolidSchema/sch_25001.sch_txt +1434 -1434
  46. package/Assets/ParasolidSchema/sch_26102.sch_txt +1470 -1470
  47. package/Assets/ParasolidSchema/sch_26104.sch_txt +1471 -1471
  48. package/Assets/ParasolidSchema/sch_26105.sch_txt +1472 -1472
  49. package/Assets/ParasolidSchema/sch_28002.sch_txt +1499 -1499
  50. package/Assets/ParasolidSchema/sch_28101.sch_txt +1545 -1545
  51. package/Assets/ParasolidSchema/sch_3000.sch_txt +738 -738
  52. package/Assets/ParasolidSchema/sch_30000.sch_txt +1555 -1555
  53. package/Assets/ParasolidSchema/sch_300_1022.sch_txt +739 -739
  54. package/Assets/ParasolidSchema/sch_30100.sch_txt +1600 -1600
  55. package/Assets/ParasolidSchema/sch_31001.sch_txt +1608 -1608
  56. package/Assets/ParasolidSchema/sch_31100.sch_txt +1639 -0
  57. package/Assets/ParasolidSchema/sch_32001.sch_txt +1689 -0
  58. package/Assets/ParasolidSchema/sch_33101.sch_txt +1700 -0
  59. package/Assets/ParasolidSchema/sch_33103.sch_txt +1704 -0
  60. package/Assets/ParasolidSchema/sch_4011.sch_txt +782 -782
  61. package/Assets/ParasolidSchema/sch_4022.sch_txt +837 -837
  62. package/Assets/ParasolidSchema/sch_4030.sch_txt +847 -847
  63. package/Assets/ParasolidSchema/sch_4031.sch_txt +847 -847
  64. package/Assets/ParasolidSchema/sch_4032.sch_txt +847 -847
  65. package/Assets/ParasolidSchema/sch_4035.sch_txt +848 -848
  66. package/Assets/ParasolidSchema/sch_4039.sch_txt +851 -851
  67. package/Assets/ParasolidSchema/sch_5015.sch_txt +958 -958
  68. package/Assets/ParasolidSchema/sch_5021.sch_txt +1030 -1030
  69. package/Assets/ParasolidSchema/sch_5030.sch_txt +1011 -1011
  70. package/Assets/ParasolidSchema/sch_5031.sch_txt +1011 -1011
  71. package/Assets/ParasolidSchema/sch_5032.sch_txt +1013 -1013
  72. package/Assets/ParasolidSchema/sch_5033.sch_txt +973 -973
  73. package/Assets/ParasolidSchema/sch_5041.sch_txt +986 -986
  74. package/Assets/ParasolidSchema/sch_5049.sch_txt +986 -986
  75. package/Assets/ParasolidSchema/sch_5050.sch_txt +988 -988
  76. package/Assets/ParasolidSchema/sch_5051.sch_txt +983 -983
  77. package/Assets/ParasolidSchema/sch_5053.sch_txt +984 -984
  78. package/Assets/ParasolidSchema/sch_5054.sch_txt +982 -982
  79. package/Assets/ParasolidSchema/sch_5056.sch_txt +986 -986
  80. package/Assets/ParasolidSchema/sch_5057.sch_txt +986 -986
  81. package/Assets/ParasolidSchema/sch_5058.sch_txt +982 -982
  82. package/Assets/ParasolidSchema/sch_5059.sch_txt +982 -982
  83. package/Assets/ParasolidSchema/sch_6020.sch_txt +1110 -1110
  84. package/Assets/ParasolidSchema/sch_6021.sch_txt +1111 -1111
  85. package/Assets/ParasolidSchema/sch_7002.sch_txt +1110 -1110
  86. package/Assets/ParasolidSchema/sch_7007.sch_txt +1103 -1103
  87. package/Assets/ParasolidSchema/sch_7014.sch_txt +1187 -1187
  88. package/Assets/ParasolidSchema/sch_7015.sch_txt +1180 -1180
  89. package/Assets/ParasolidSchema/sch_7016.sch_txt +1163 -1163
  90. package/Assets/ParasolidSchema/sch_8000.sch_txt +1147 -1147
  91. package/Assets/ParasolidSchema/sch_8002.sch_txt +1148 -1148
  92. package/Assets/ParasolidSchema/sch_8005.sch_txt +1152 -1152
  93. package/Assets/ParasolidSchema/sch_8008.sch_txt +1161 -1161
  94. package/Assets/ParasolidSchema/sch_8101.sch_txt +1172 -1172
  95. package/Assets/ParasolidSchema/sch_9001.sch_txt +1175 -1175
  96. package/Assets/ParasolidSchema/sch_9003.sch_txt +1226 -1226
  97. package/Assets/ParasolidSchema/sch_9008.sch_txt +1227 -1227
  98. package/Assets/ParasolidSchema/sch_9100.sch_txt +1229 -1229
  99. package/Assets/http/cabundle.pem +3240 -3240
  100. package/BRepCoreM02.dll +0 -0
  101. package/BaseGeoCoordM02.dll +0 -0
  102. package/BeBlobDaemon.exe +0 -0
  103. package/BeCurlB02.dll +0 -0
  104. package/BeFollyM02.dll +0 -0
  105. package/BeHttpM02.dll +0 -0
  106. package/BeIcu4cB02.dll +0 -0
  107. package/BeLibxml2B02.dll +0 -0
  108. package/BeOpenSSLB02.dll +0 -0
  109. package/BeSQLiteECM02.dll +0 -0
  110. package/BeSQLiteM02.dll +0 -0
  111. package/BeSecurityM02.dll +0 -0
  112. package/BeXmlM02.dll +0 -0
  113. package/BentleyGeomM02.dll +0 -0
  114. package/BentleyGeomSerializationM02.dll +0 -0
  115. package/BentleyM02.dll +0 -0
  116. package/DgnPlatformM02.dll +0 -0
  117. package/ECObjectsM02.dll +0 -0
  118. package/ECPresentationM02.dll +0 -0
  119. package/LicensingM02.dll +0 -0
  120. package/Notices/curl-license.txt +1 -1
  121. package/Notices/folly-notice.txt +177 -177
  122. package/Notices/jsoncpp-license.txt +55 -55
  123. package/Notices/openoffice-license.txt +2049 -2049
  124. package/Notices/openoffice-notice.txt +159 -159
  125. package/Notices/sqlite-license.txt +11 -11
  126. package/UnitsM02.dll +0 -0
  127. package/WebServicesClientM02.dll +0 -0
  128. package/bentleylog4cxxM02.dll +0 -0
  129. package/freetype2B02.dll +0 -0
  130. package/iModelHubClientM02.dll +0 -0
  131. package/imodeljs.node +0 -0
  132. package/napi.dll +0 -0
  133. package/package.json +1 -1
  134. package/pskernel.dll +0 -0
  135. package/Assets/DgnGeoCoord/Japan/TKY2JGD.par +0 -392325
@@ -1,533 +1,533 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <ECSchema schemaName="ECDbMeta" alias="meta" version="04.00.01" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
3
- <ECSchemaReference name="ECDbMap" version="02.00.00" alias="ecdbmap"/>
4
-
5
- <ECEntityClass typeName="ECSchemaDef" description="ECSchema" displayLabel="ECSchema" modifier="Sealed">
6
- <ECCustomAttributes>
7
- <ClassMap xmlns="ECDbMap.02.00.00">
8
- <MapStrategy>ExistingTable</MapStrategy>
9
- <TableName>ec_Schema</TableName>
10
- </ClassMap>
11
- </ECCustomAttributes>
12
- <ECProperty propertyName="Name" typeName="string"/>
13
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
14
- <ECProperty propertyName="Description" typeName="string"/>
15
- <ECProperty propertyName="Alias" typeName="string"/>
16
- <ECProperty propertyName="VersionMajor" typeName="int">
17
- <ECCustomAttributes>
18
- <PropertyMap xmlns="ECDbMap.02.00.00">
19
- <ColumnName>VersionDigit1</ColumnName>
20
- </PropertyMap>
21
- </ECCustomAttributes>
22
- </ECProperty>
23
- <ECProperty propertyName="VersionWrite" typeName="int">
24
- <ECCustomAttributes>
25
- <PropertyMap xmlns="ECDbMap.02.00.00">
26
- <ColumnName>VersionDigit2</ColumnName>
27
- </PropertyMap>
28
- </ECCustomAttributes>
29
- </ECProperty>
30
- <ECProperty propertyName="VersionMinor" typeName="int">
31
- <ECCustomAttributes>
32
- <PropertyMap xmlns="ECDbMap.02.00.00">
33
- <ColumnName>VersionDigit3</ColumnName>
34
- </PropertyMap>
35
- </ECCustomAttributes>
36
- </ECProperty>
37
- <ECProperty propertyName="OriginalECXmlVersionMajor" typeName="int"/>
38
- <ECProperty propertyName="OriginalECXmlVersionMinor" typeName="int"/>
39
- </ECEntityClass>
40
- <ECEntityClass typeName="ECClassDef" description="ECClass" displayLabel="ECClass" modifier="Sealed">
41
- <ECCustomAttributes>
42
- <ClassMap xmlns="ECDbMap.02.00.00">
43
- <MapStrategy>ExistingTable</MapStrategy>
44
- <TableName>ec_Class</TableName>
45
- </ClassMap>
46
- </ECCustomAttributes>
47
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsClasses" direction="backward"/>
48
- <ECProperty propertyName="Name" typeName="string"/>
49
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
50
- <ECProperty propertyName="Description" typeName="string"/>
51
- <ECProperty propertyName="Type" typeName="ECClassType"/>
52
- <ECProperty propertyName="Modifier" typeName="ECClassModifier"/>
53
- <ECProperty propertyName="CustomAttributeContainerType" typeName="ECCustomAttributeContainerType" description="ECClassType::CustomAttribute: Specifies on which containers the custom attribute ECClass can be applied to."/>
54
- <ECProperty propertyName="RelationshipStrength" typeName="ECRelationshipStrength" description="Applies to ECClassType::Relationship only."/>
55
- <ECProperty propertyName="RelationshipStrengthDirection" typeName="ECRelationshipDirection" description="Applies to ECClassType::Relationship only."/>
56
- </ECEntityClass>
57
- <ECStructClass typeName="ECEnumeratorDef" modifier="Sealed">
58
- <ECProperty propertyName="Name" typeName="string"/>
59
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
60
- <ECProperty propertyName="Description" typeName="string"/>
61
- <ECProperty propertyName="IntValue" typeName="int"/>
62
- <ECProperty propertyName="StringValue" typeName="string"/>
63
- </ECStructClass>
64
- <ECEntityClass typeName="ECEnumerationDef" description="ECEnumeration" displayLabel="ECEnumeration" modifier="Sealed">
65
- <ECCustomAttributes>
66
- <ClassMap xmlns="ECDbMap.02.00.00">
67
- <MapStrategy>ExistingTable</MapStrategy>
68
- <TableName>ec_Enumeration</TableName>
69
- </ClassMap>
70
- </ECCustomAttributes>
71
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsEnumerations" direction="backward"/>
72
- <ECProperty propertyName="Name" typeName="string"/>
73
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
74
- <ECProperty propertyName="Description" typeName="string"/>
75
- <ECProperty propertyName="Type" typeName="PrimitiveType">
76
- <ECCustomAttributes>
77
- <PropertyMap xmlns="ECDbMap.02.00.00">
78
- <ColumnName>UnderlyingPrimitiveType</ColumnName>
79
- </PropertyMap>
80
- </ECCustomAttributes>
81
- </ECProperty>
82
- <ECProperty propertyName="IsStrict" typeName="boolean"/>
83
- <ECStructArrayProperty propertyName="EnumValues" typeName="ECEnumeratorDef" minOccurs="1" maxOccurs="unbounded"/>
84
- </ECEntityClass>
85
- <ECEntityClass typeName="KindOfQuantityDef" description="KindOfQuantity" displayLabel="KindOfQuantity" modifier="Sealed">
86
- <ECCustomAttributes>
87
- <ClassMap xmlns="ECDbMap.02.00.00">
88
- <MapStrategy>ExistingTable</MapStrategy>
89
- <TableName>ec_KindOfQuantity</TableName>
90
- </ClassMap>
91
- </ECCustomAttributes>
92
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsKindOfQuantities" direction="backward"/>
93
- <ECProperty propertyName="Name" typeName="string"/>
94
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
95
- <ECProperty propertyName="Description" typeName="string"/>
96
- <ECProperty propertyName="PersistenceUnit" typeName="string"/>
97
- <ECProperty propertyName="RelativeError" typeName="double"/>
98
- <ECArrayProperty propertyName="PresentationUnits" typeName="string"/>
99
- </ECEntityClass>
100
- <ECEntityClass typeName="UnitDef" description="Unit" displayLabel="Unit" modifier="Sealed">
101
- <ECCustomAttributes>
102
- <ClassMap xmlns="ECDbMap.02.00.00">
103
- <MapStrategy>ExistingTable</MapStrategy>
104
- <TableName>ec_Unit</TableName>
105
- </ClassMap>
106
- </ECCustomAttributes>
107
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsUnits" direction="backward"/>
108
- <ECProperty propertyName="Name" typeName="string"/>
109
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
110
- <ECProperty propertyName="Description" typeName="string"/>
111
- <ECNavigationProperty propertyName="UnitSystem" relationshipName="UnitSystemHasUnits" direction="backward"/>
112
- <ECNavigationProperty propertyName="Phenomenon" relationshipName="PhenomenonOwnsUnits" direction="backward"/>
113
- <ECProperty propertyName="Definition" typeName="string"/>
114
- <ECProperty propertyName="Numerator" typeName="double"/>
115
- <ECProperty propertyName="Denominator" typeName="double"/>
116
- <ECProperty propertyName="Offset" typeName="double"/>
117
- <ECProperty propertyName="IsConstant" typeName="boolean"/>
118
- <ECNavigationProperty propertyName="InvertingUnit" description="If this property is set, this UnitDef is an inverted unit. It inverts the unit specified by this property." relationshipName="UnitHasInvertedUnit" direction="backward"/>
119
- </ECEntityClass>
120
- <ECEntityClass typeName="UnitSystemDef" description="UnitSystem" displayLabel="UnitSystem" modifier="Sealed">
121
- <ECCustomAttributes>
122
- <ClassMap xmlns="ECDbMap.02.00.00">
123
- <MapStrategy>ExistingTable</MapStrategy>
124
- <TableName>ec_UnitSystem</TableName>
125
- </ClassMap>
126
- </ECCustomAttributes>
127
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsUnitSystems" direction="backward"/>
128
- <ECProperty propertyName="Name" typeName="string"/>
129
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
130
- <ECProperty propertyName="Description" typeName="string"/>
131
- </ECEntityClass>
132
- <ECEntityClass typeName="PhenomenonDef" description="Phenomenon" displayLabel="Phenomenon" modifier="Sealed">
133
- <ECCustomAttributes>
134
- <ClassMap xmlns="ECDbMap.02.00.00">
135
- <MapStrategy>ExistingTable</MapStrategy>
136
- <TableName>ec_Phenomenon</TableName>
137
- </ClassMap>
138
- </ECCustomAttributes>
139
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsPhenomena" direction="backward"/>
140
- <ECProperty propertyName="Name" typeName="string"/>
141
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
142
- <ECProperty propertyName="Description" typeName="string"/>
143
- <ECProperty propertyName="Definition" typeName="string"/>
144
- </ECEntityClass>
145
- <ECEntityClass typeName="FormatDef" description="Format" displayLabel="Format" modifier="Sealed">
146
- <ECCustomAttributes>
147
- <ClassMap xmlns="ECDbMap.02.00.00">
148
- <MapStrategy>ExistingTable</MapStrategy>
149
- <TableName>ec_Format</TableName>
150
- </ClassMap>
151
- </ECCustomAttributes>
152
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsFormats" direction="backward"/>
153
- <ECProperty propertyName="Name" typeName="string"/>
154
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
155
- <ECProperty propertyName="Description" typeName="string"/>
156
- <ECProperty propertyName="NumericSpec" typeName="string" extendedTypeName="JSON"/>
157
- <ECProperty propertyName="CompositeSpec" typeName="string" description="CompositeSpec without units. Composite units are held by FormatCompositeUnitDef" extendedTypeName="JSON"/>
158
- </ECEntityClass>
159
- <ECEntityClass typeName="FormatCompositeUnitDef" description="FormatCompositeUnit" displayLabel="FormatCompositeUnit" modifier="Sealed">
160
- <ECCustomAttributes>
161
- <ClassMap xmlns="ECDbMap.02.00.00">
162
- <MapStrategy>ExistingTable</MapStrategy>
163
- <TableName>ec_FormatCompositeUnit</TableName>
164
- </ClassMap>
165
- </ECCustomAttributes>
166
- <ECNavigationProperty propertyName="Format" relationshipName="FormatOwnsCompositeUnits" direction="backward"/>
167
- <ECProperty propertyName="Label" typeName="string"/>
168
- <ECNavigationProperty propertyName="Unit" relationshipName="CompositeUnitRefersToUnit" direction="forward"/>
169
- <ECProperty propertyName="Ordinal" typeName="int" description="Position of the Composite Unit in its Format"/>
170
- </ECEntityClass>
171
- <ECEntityClass typeName="PropertyCategoryDef" description="PropertyCategory" displayLabel="PropertyCategory" modifier="Sealed">
172
- <ECCustomAttributes>
173
- <ClassMap xmlns="ECDbMap.02.00.00">
174
- <MapStrategy>ExistingTable</MapStrategy>
175
- <TableName>ec_PropertyCategory</TableName>
176
- </ClassMap>
177
- </ECCustomAttributes>
178
- <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsPropertyCategories" direction="backward"/>
179
- <ECProperty propertyName="Name" typeName="string"/>
180
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
181
- <ECProperty propertyName="Description" typeName="string"/>
182
- <ECProperty propertyName="Priority" typeName="int"/>
183
- </ECEntityClass>
184
- <ECEntityClass typeName="ECPropertyDef" description="ECProperty" displayLabel="ECProperty" modifier="Sealed">
185
- <ECCustomAttributes>
186
- <ClassMap xmlns="ECDbMap.02.00.00">
187
- <MapStrategy>ExistingTable</MapStrategy>
188
- <TableName>ec_Property</TableName>
189
- </ClassMap>
190
- </ECCustomAttributes>
191
- <ECNavigationProperty propertyName="Class" relationshipName="ClassOwnsLocalProperties" direction="backward"/>
192
- <ECProperty propertyName="Name" typeName="string"/>
193
- <ECProperty propertyName="DisplayLabel" typeName="string"/>
194
- <ECProperty propertyName="Description" typeName="string"/>
195
- <ECProperty propertyName="IsReadonly" typeName="boolean"/>
196
- <ECProperty propertyName="Priority" typeName="int"/>
197
- <ECProperty propertyName="Ordinal" typeName="int" description="Position of the ECProperty in its ECClass"/>
198
- <ECProperty propertyName="Kind" typeName="ECPropertyKind"/>
199
- <ECProperty propertyName="PrimitiveType" typeName="PrimitiveType" description="ECPropertyKind::Primitive: data type. ECPropertyKind::PrimitiveArray: data type of array elements."/>
200
- <ECProperty propertyName="PrimitiveTypeMinLength" typeName="int" description="Minimum length of strings or blobs."/>
201
- <ECProperty propertyName="PrimitiveTypeMaxLength" typeName="int" description="Maximum length of strings or blobs."/>
202
- <ECProperty propertyName="PrimitiveTypeMinValue" typeName="double" description="Minimum value of numeric primitives."/>
203
- <ECProperty propertyName="PrimitiveTypeMaxValue" typeName="double" description="Maximum value of numeric primitives."/>
204
- <ECNavigationProperty propertyName="Enumeration" description="ECPropertyKind::Primitive: Id of this property's ECEnumerationDef." relationshipName="PropertyHasEnumeration" direction="forward"/>
205
- <ECProperty propertyName="ExtendedTypeName" typeName="string" description="ECPropertyKind::Primitive or ECPropertyKind::PrimitiveArray: Extended type name further describing PrimitiveType."/>
206
- <ECNavigationProperty propertyName="StructClass" description="ECPropertyKind::Struct: ECClassId of property's struct type. ECPropertyKind::StructArray: ECClassId of array element struct type." relationshipName="PropertyHasStructType" direction="forward"/>
207
- <ECNavigationProperty propertyName="KindOfQuantity" description="ECPropertyKind::Primitive or ECPropertyKind::PrimitiveArray: Id of this property's KindOfQuantityDef." relationshipName="PropertyHasKindOfQuantity" direction="forward"/>
208
- <ECNavigationProperty propertyName="Category" description="Id of this property's PropertyCategoryDef." relationshipName="PropertyHasCategory" direction="forward"/>
209
- <ECProperty propertyName="ArrayMinOccurs" typeName="int" description="ECPropertyKind::PrimitiveArray or ECPropertyKind::StructArray"/>
210
- <ECProperty propertyName="ArrayMaxOccurs" typeName="int" description="ECPropertyKind::PrimitiveArray or ECPropertyKind::StructArray"/>
211
- <ECNavigationProperty propertyName="NavigationRelationshipClass" description="ECPropertyKind::Navigation: ECClassId of property's relationship class." relationshipName="PropertyHasNavigationRelationshipClassId" direction="forward"/>
212
- <ECProperty propertyName="NavigationDirection" typeName="ECRelationshipDirection" description="ECPropertyKind::Navigation: Direction to follow the relationship defined in NonPrimitiveTypeClassId."/>
213
- </ECEntityClass>
214
- <ECEntityClass typeName="ECRelationshipConstraintDef" modifier="Sealed">
215
- <ECCustomAttributes>
216
- <ClassMap xmlns="ECDbMap.02.00.00">
217
- <MapStrategy>ExistingTable</MapStrategy>
218
- <TableName>ec_RelationshipConstraint</TableName>
219
- </ClassMap>
220
- </ECCustomAttributes>
221
- <ECNavigationProperty propertyName="RelationshipClass" relationshipName="RelationshipHasConstraints" direction="backward"/>
222
- <ECProperty propertyName="RelationshipEnd" typeName="ECRelationshipEnd"/>
223
- <ECProperty propertyName="MultiplicityLowerLimit" typeName="int"/>
224
- <ECProperty propertyName="MultiplicityUpperLimit" typeName="int"/>
225
- <ECProperty propertyName="IsPolymorphic" typeName="boolean"/>
226
- <ECProperty propertyName="RoleLabel" typeName="string"/>
227
- <ECNavigationProperty propertyName="AbstractConstraintClass" description="ECClassId of base class for constraint classes of this constraint" relationshipName="RelationshipConstraintHasAbstractConstraintClass" direction="forward"/>
228
- </ECEntityClass>
229
- <ECRelationshipClass typeName="SchemaOwnsClasses" modifier="Sealed" strength="embedding">
230
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
231
- <Class class="ECSchemaDef"/>
232
- </Source>
233
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
234
- <Class class="ECClassDef"/>
235
- </Target>
236
- </ECRelationshipClass>
237
- <ECRelationshipClass typeName="SchemaHasSchemaReferences" modifier="Sealed" strength="referencing">
238
- <ECCustomAttributes>
239
- <ClassMap xmlns="ECDbMap.02.00.00">
240
- <MapStrategy>ExistingTable</MapStrategy>
241
- <TableName>ec_SchemaReference</TableName>
242
- </ClassMap>
243
- <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
244
- <SourceECInstanceIdColumn>SchemaId</SourceECInstanceIdColumn>
245
- <TargetECInstanceIdColumn>ReferencedSchemaId</TargetECInstanceIdColumn>
246
- </LinkTableRelationshipMap>
247
- </ECCustomAttributes>
248
- <Source multiplicity="(0..*)" roleLabel="references" polymorphic="false">
249
- <Class class="ECSchemaDef"/>
250
- </Source>
251
- <Target multiplicity="(0..*)" roleLabel="is referenced by" polymorphic="false">
252
- <Class class="ECSchemaDef"/>
253
- </Target>
254
- </ECRelationshipClass>
255
- <ECRelationshipClass typeName="ClassOwnsLocalProperties" modifier="Sealed" strength="embedding">
256
- <Source multiplicity="(1..1)" roleLabel="locally defines" polymorphic="false">
257
- <Class class="ECClassDef"/>
258
- </Source>
259
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
260
- <Class class="ECPropertyDef"/>
261
- </Target>
262
- </ECRelationshipClass>
263
- <ECRelationshipClass typeName="ClassHasBaseClasses" modifier="Sealed" strength="referencing">
264
- <ECCustomAttributes>
265
- <ClassMap xmlns="ECDbMap.02.00.00">
266
- <MapStrategy>ExistingTable</MapStrategy>
267
- <TableName>ec_ClassHasBaseClasses</TableName>
268
- </ClassMap>
269
- <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
270
- <SourceECInstanceIdColumn>ClassId</SourceECInstanceIdColumn>
271
- <TargetECInstanceIdColumn>BaseClassId</TargetECInstanceIdColumn>
272
- </LinkTableRelationshipMap>
273
- </ECCustomAttributes>
274
- <ECProperty propertyName="Ordinal" typeName="int"/>
275
- <Source multiplicity="(0..*)" roleLabel="is subclass of" polymorphic="false">
276
- <Class class="ECClassDef"/>
277
- </Source>
278
- <Target multiplicity="(0..*)" roleLabel="is base class of" polymorphic="false">
279
- <Class class="ECClassDef"/>
280
- </Target>
281
- </ECRelationshipClass>
282
- <ECRelationshipClass typeName="ClassHasAllBaseClasses" strength="referencing" modifier="Sealed" description="Relates a given ECClassId (Source) to all its base classes (recursively) (Target). For optimization reasons this ECRelationshipClass also holds a row for each ECClass that points to itself. Base class id order: class itself, then base classes in breadth first manner.">
283
- <ECCustomAttributes>
284
- <ClassMap xmlns="ECDbMap.02.00.00">
285
- <MapStrategy>ExistingTable</MapStrategy>
286
- <TableName>ec_cache_ClassHierarchy</TableName>
287
- </ClassMap>
288
- <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
289
- <SourceECInstanceIdColumn>ClassId</SourceECInstanceIdColumn>
290
- <TargetECInstanceIdColumn>BaseClassId</TargetECInstanceIdColumn>
291
- </LinkTableRelationshipMap>
292
- </ECCustomAttributes>
293
- <Source multiplicity="(0..*)" roleLabel="is a" polymorphic="false">
294
- <Class class="ECClassDef"/>
295
- </Source>
296
- <Target multiplicity="(0..*)" roleLabel="is ancestor of" polymorphic="false">
297
- <Class class="ECClassDef"/>
298
- </Target>
299
- </ECRelationshipClass>
300
- <ECRelationshipClass typeName="SchemaOwnsEnumerations" modifier="Sealed" strength="embedding">
301
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
302
- <Class class="ECSchemaDef"/>
303
- </Source>
304
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
305
- <Class class="ECEnumerationDef"/>
306
- </Target>
307
- </ECRelationshipClass>
308
- <ECRelationshipClass typeName="SchemaOwnsKindOfQuantities" modifier="Sealed" strength="embedding">
309
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
310
- <Class class="ECSchemaDef"/>
311
- </Source>
312
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
313
- <Class class="KindOfQuantityDef"/>
314
- </Target>
315
- </ECRelationshipClass>
316
- <ECRelationshipClass typeName="SchemaOwnsUnitSystems" modifier="Sealed" strength="embedding">
317
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
318
- <Class class="ECSchemaDef"/>
319
- </Source>
320
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
321
- <Class class="UnitSystemDef"/>
322
- </Target>
323
- </ECRelationshipClass>
324
- <ECRelationshipClass typeName="SchemaOwnsPhenomena" modifier="Sealed" strength="embedding">
325
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
326
- <Class class="ECSchemaDef"/>
327
- </Source>
328
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
329
- <Class class="PhenomenonDef"/>
330
- </Target>
331
- </ECRelationshipClass>
332
- <ECRelationshipClass typeName="SchemaOwnsUnits" modifier="Sealed" strength="embedding">
333
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
334
- <Class class="ECSchemaDef"/>
335
- </Source>
336
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
337
- <Class class="UnitDef"/>
338
- </Target>
339
- </ECRelationshipClass>
340
- <ECRelationshipClass typeName="SchemaOwnsFormats" modifier="Sealed" strength="embedding">
341
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
342
- <Class class="ECSchemaDef"/>
343
- </Source>
344
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
345
- <Class class="FormatDef"/>
346
- </Target>
347
- </ECRelationshipClass>
348
- <ECRelationshipClass typeName="FormatOwnsCompositeUnits" modifier="Sealed" strength="embedding">
349
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
350
- <Class class="FormatDef"/>
351
- </Source>
352
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
353
- <Class class="FormatCompositeUnitDef"/>
354
- </Target>
355
- </ECRelationshipClass>
356
- <ECRelationshipClass typeName="CompositeUnitRefersToUnit" modifier="Sealed" strength="referencing">
357
- <Source multiplicity="(0..*)" roleLabel="refers to" polymorphic="false">
358
- <Class class="FormatCompositeUnitDef"/>
359
- </Source>
360
- <Target multiplicity="(0..1)" roleLabel="is referred to by" polymorphic="false">
361
- <Class class="UnitDef"/>
362
- </Target>
363
- </ECRelationshipClass>
364
- <ECRelationshipClass typeName="SchemaOwnsPropertyCategories" modifier="Sealed" strength="embedding">
365
- <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
366
- <Class class="ECSchemaDef"/>
367
- </Source>
368
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
369
- <Class class="PropertyCategoryDef"/>
370
- </Target>
371
- </ECRelationshipClass>
372
- <ECRelationshipClass typeName="PhenomenonOwnsUnits" modifier="Sealed" strength="embedding">
373
- <Source multiplicity="(1..1)" roleLabel="has" polymorphic="false">
374
- <Class class="PhenomenonDef"/>
375
- </Source>
376
- <Target multiplicity="(0..*)" roleLabel="is of" polymorphic="false">
377
- <Class class="UnitDef"/>
378
- </Target>
379
- </ECRelationshipClass>
380
- <ECRelationshipClass typeName="UnitSystemHasUnits" modifier="Sealed" strength="referencing">
381
- <Source multiplicity="(0..1)" roleLabel="has" polymorphic="false">
382
- <Class class="UnitSystemDef"/>
383
- </Source>
384
- <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
385
- <Class class="UnitDef"/>
386
- </Target>
387
- </ECRelationshipClass>
388
- <ECRelationshipClass typeName="UnitHasInvertedUnit" modifier="Sealed" strength="referencing">
389
- <Source multiplicity="(0..1)" roleLabel="is inverted by" polymorphic="false">
390
- <Class class="UnitDef"/>
391
- </Source>
392
- <Target multiplicity="(0..1)" roleLabel="inverts" polymorphic="false">
393
- <Class class="UnitDef"/>
394
- </Target>
395
- </ECRelationshipClass>
396
- <ECRelationshipClass typeName="PropertyHasEnumeration" description="ECPropertyKind::Enumeration: relates the property to its ECEnumeration." modifier="Sealed" strength="referencing">
397
- <Source multiplicity="(0..*)" roleLabel="is of type" polymorphic="false">
398
- <Class class="ECPropertyDef"/>
399
- </Source>
400
- <Target multiplicity="(0..1)" roleLabel="is type of" polymorphic="false">
401
- <Class class="ECEnumerationDef"/>
402
- </Target>
403
- </ECRelationshipClass>
404
- <ECRelationshipClass typeName="PropertyHasStructType" description="ECPropertyKind::Struct: relates the struct property to its struct ECClass. ECPropertyKind::StructArray: relates the struct array property to its array element type." modifier="Sealed" strength="referencing">
405
- <Source multiplicity="(0..*)" roleLabel="is of type" polymorphic="false">
406
- <Class class="ECPropertyDef"/>
407
- </Source>
408
- <Target multiplicity="(0..1)" roleLabel="is type of" polymorphic="false">
409
- <Class class="ECClassDef"/>
410
- </Target>
411
- </ECRelationshipClass>
412
- <ECRelationshipClass typeName="PropertyHasNavigationRelationshipClassId" description="ECPropertyKind::Navigation: relates the navigation property to its backing RelationshipECClass." modifier="Sealed" strength="referencing">
413
- <Source multiplicity="(0..*)" roleLabel="is backed by" polymorphic="false">
414
- <Class class="ECPropertyDef"/>
415
- </Source>
416
- <Target multiplicity="(0..1)" roleLabel="is ECRelationshipClass of" polymorphic="false">
417
- <Class class="ECClassDef"/>
418
- </Target>
419
- </ECRelationshipClass>
420
- <ECRelationshipClass typeName="PropertyHasKindOfQuantity" description="ECPropertyKind::Primitive or ECPropertyKind::PrimitiveArray: relates the property to its KindOfQuantity." modifier="Sealed" strength="referencing">
421
- <Source multiplicity="(0..*)" roleLabel="has" polymorphic="false">
422
- <Class class="ECPropertyDef"/>
423
- </Source>
424
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="false">
425
- <Class class="KindOfQuantityDef"/>
426
- </Target>
427
- </ECRelationshipClass>
428
- <ECRelationshipClass typeName="PropertyHasCategory" description="Relates the property to its PropertyCategory." modifier="Sealed" strength="referencing">
429
- <Source multiplicity="(0..*)" roleLabel="is in" polymorphic="false">
430
- <Class class="ECPropertyDef"/>
431
- </Source>
432
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="false">
433
- <Class class="PropertyCategoryDef"/>
434
- </Target>
435
- </ECRelationshipClass>
436
- <ECRelationshipClass typeName="RelationshipHasConstraints" modifier="Sealed" strength="referencing">
437
- <Source multiplicity="(1..1)" roleLabel="defines" polymorphic="false">
438
- <Class class="ECClassDef"/>
439
- </Source>
440
- <Target multiplicity="(2..2)" roleLabel="is defined by" polymorphic="false">
441
- <Class class="ECRelationshipConstraintDef"/>
442
- </Target>
443
- </ECRelationshipClass>
444
- <ECRelationshipClass typeName="RelationshipConstraintHasAbstractConstraintClass" modifier="Sealed" strength="referencing">
445
- <Source multiplicity="(0..*)" roleLabel="defines" polymorphic="false">
446
- <Class class="ECRelationshipConstraintDef"/>
447
- </Source>
448
- <Target multiplicity="(0..1)" roleLabel="is abstract constraint class of" polymorphic="false">
449
- <Class class="ECClassDef"/>
450
- </Target>
451
- </ECRelationshipClass>
452
- <ECRelationshipClass typeName="RelationshipConstraintHasClasses" modifier="Sealed" strength="referencing">
453
- <ECCustomAttributes>
454
- <ClassMap xmlns="ECDbMap.02.00.00">
455
- <MapStrategy>ExistingTable</MapStrategy>
456
- <TableName>ec_RelationshipConstraintClass</TableName>
457
- </ClassMap>
458
- <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
459
- <SourceECInstanceIdColumn>ConstraintId</SourceECInstanceIdColumn>
460
- <TargetECInstanceIdColumn>ClassId</TargetECInstanceIdColumn>
461
- </LinkTableRelationshipMap>
462
- </ECCustomAttributes>
463
- <Source multiplicity="(0..*)" roleLabel="contains" polymorphic="false">
464
- <Class class="ECRelationshipConstraintDef"/>
465
- </Source>
466
- <Target multiplicity="(0..*)" roleLabel="is constraint class of" polymorphic="false">
467
- <Class class="ECClassDef"/>
468
- </Target>
469
- </ECRelationshipClass>
470
- <!-- ECCustomAttributeContainerType can be OR'ed together. That cannot be expressed in the ECEnumerations
471
- directly though. -->
472
- <ECEnumeration typeName="ECCustomAttributeContainerType" backingTypeName="int" isStrict="true">
473
- <ECEnumerator name="Schema" value="1" displayLabel="Schema" />
474
- <ECEnumerator name="EntityClass" value="2" displayLabel="EntityClass"/>
475
- <ECEnumerator name="CustomAttributeClass" value="4" displayLabel="CustomAttributeClass"/>
476
- <ECEnumerator name="StructClass" value="8" displayLabel="StructClass"/>
477
- <ECEnumerator name="RelationshipClass" value="16" displayLabel="RelationshipClass"/>
478
- <ECEnumerator name="AnyClass" value="30" displayLabel="AnyClass"/>
479
- <ECEnumerator name="PrimitiveProperty" value="32" displayLabel="PrimitiveProperty"/>
480
- <ECEnumerator name="StructProperty" value="64" displayLabel="StructProperty"/>
481
- <ECEnumerator name="PrimitiveArrayProperty" value="128" displayLabel="PrimitiveArrayProperty"/>
482
- <ECEnumerator name="StructArrayProperty" value="256" displayLabel="StructArrayProperty"/>
483
- <ECEnumerator name="NavigationProperty" value="512" displayLabel="NavigationProperty"/>
484
- <ECEnumerator name="AnyProperty" value="992" displayLabel="AnyProperty"/>
485
- <ECEnumerator name="SourceRelationshipConstraint" value="1024" displayLabel="SourceRelationshipConstraint"/>
486
- <ECEnumerator name="TargetRelationshipConstraint" value="2048" displayLabel="TargetRelationshipConstraint"/>
487
- <ECEnumerator name="AnyRelationshipConstraint" value="3072" displayLabel="AnyRelationshipConstraint"/>
488
- <ECEnumerator name="Any" value="4095" displayLabel="Any"/>
489
- </ECEnumeration>
490
- <ECEnumeration typeName="ECClassModifier" backingTypeName="int" isStrict="true">
491
- <ECEnumerator name="None" value="0" displayLabel="None" />
492
- <ECEnumerator name="Abstract" value="1" displayLabel="Abstract" />
493
- <ECEnumerator name="Sealed" value="2" displayLabel="Sealed" />
494
- </ECEnumeration>
495
- <ECEnumeration typeName="ECRelationshipEnd" backingTypeName="int" isStrict="true">
496
- <ECEnumerator name="Source" value="0" displayLabel="Source" />
497
- <ECEnumerator name="Target" value="1" displayLabel="Target" />
498
- </ECEnumeration>
499
- <ECEnumeration typeName="ECClassType" backingTypeName="int" isStrict="true">
500
- <ECEnumerator name="Entity" value="0" displayLabel="Entity" />
501
- <ECEnumerator name="Relationship" value="1" displayLabel="Relationship" />
502
- <ECEnumerator name="Struct" value="2" displayLabel="Struct" />
503
- <ECEnumerator name="CustomAttribute" value="3" displayLabel="CustomAttribute" />
504
- </ECEnumeration>
505
- <ECEnumeration typeName="ECPropertyKind" backingTypeName="int" isStrict="true">
506
- <ECEnumerator name="Primitive" value="0" displayLabel="Primitive" />
507
- <ECEnumerator name="Struct" value="1" displayLabel="Struct" />
508
- <ECEnumerator name="PrimitiveArray" value="2" displayLabel="PrimitiveArray" />
509
- <ECEnumerator name="StructArray" value="3" displayLabel="StructArray" />
510
- <ECEnumerator name="Navigation" value="4" displayLabel="Navigation" />
511
- </ECEnumeration>
512
- <ECEnumeration typeName="ECRelationshipDirection" backingTypeName="int" isStrict="true">
513
- <ECEnumerator name="Forward" value="1" displayLabel="Forward" />
514
- <ECEnumerator name="Backward" value="2" displayLabel="Backward" />
515
- </ECEnumeration>
516
- <ECEnumeration typeName="ECRelationshipStrength" backingTypeName="int" isStrict="true">
517
- <ECEnumerator name="Referencing" value="0" displayLabel="Referencing" />
518
- <ECEnumerator name="Holding" value="1" displayLabel="Holding" />
519
- <ECEnumerator name="Embedding" value="2" displayLabel="Embedding" />
520
- </ECEnumeration>
521
- <ECEnumeration typeName="PrimitiveType" backingTypeName="int" isStrict="true">
522
- <ECEnumerator name="Binary" value="257" displayLabel="Binary" />
523
- <ECEnumerator name="Boolean" value="513" displayLabel="Boolean" />
524
- <ECEnumerator name="DateTime" value="769" displayLabel="DateTime" />
525
- <ECEnumerator name="Double" value="1025" displayLabel="Double" />
526
- <ECEnumerator name="Integer" value="1281" displayLabel="Integer" />
527
- <ECEnumerator name="Long" value="1537" displayLabel="Long" />
528
- <ECEnumerator name="Point2d" value="1793" displayLabel="Point2d" />
529
- <ECEnumerator name="Point3d" value="2049" displayLabel="Point3d" />
530
- <ECEnumerator name="String" value="2305" displayLabel="String" />
531
- <ECEnumerator name="IGeometry" value="2561" displayLabel="IGeometry" />
532
- </ECEnumeration>
533
- </ECSchema>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ECSchema schemaName="ECDbMeta" alias="meta" version="04.00.01" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
3
+ <ECSchemaReference name="ECDbMap" version="02.00.00" alias="ecdbmap"/>
4
+
5
+ <ECEntityClass typeName="ECSchemaDef" description="ECSchema" displayLabel="ECSchema" modifier="Sealed">
6
+ <ECCustomAttributes>
7
+ <ClassMap xmlns="ECDbMap.02.00.00">
8
+ <MapStrategy>ExistingTable</MapStrategy>
9
+ <TableName>ec_Schema</TableName>
10
+ </ClassMap>
11
+ </ECCustomAttributes>
12
+ <ECProperty propertyName="Name" typeName="string"/>
13
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
14
+ <ECProperty propertyName="Description" typeName="string"/>
15
+ <ECProperty propertyName="Alias" typeName="string"/>
16
+ <ECProperty propertyName="VersionMajor" typeName="int">
17
+ <ECCustomAttributes>
18
+ <PropertyMap xmlns="ECDbMap.02.00.00">
19
+ <ColumnName>VersionDigit1</ColumnName>
20
+ </PropertyMap>
21
+ </ECCustomAttributes>
22
+ </ECProperty>
23
+ <ECProperty propertyName="VersionWrite" typeName="int">
24
+ <ECCustomAttributes>
25
+ <PropertyMap xmlns="ECDbMap.02.00.00">
26
+ <ColumnName>VersionDigit2</ColumnName>
27
+ </PropertyMap>
28
+ </ECCustomAttributes>
29
+ </ECProperty>
30
+ <ECProperty propertyName="VersionMinor" typeName="int">
31
+ <ECCustomAttributes>
32
+ <PropertyMap xmlns="ECDbMap.02.00.00">
33
+ <ColumnName>VersionDigit3</ColumnName>
34
+ </PropertyMap>
35
+ </ECCustomAttributes>
36
+ </ECProperty>
37
+ <ECProperty propertyName="OriginalECXmlVersionMajor" typeName="int"/>
38
+ <ECProperty propertyName="OriginalECXmlVersionMinor" typeName="int"/>
39
+ </ECEntityClass>
40
+ <ECEntityClass typeName="ECClassDef" description="ECClass" displayLabel="ECClass" modifier="Sealed">
41
+ <ECCustomAttributes>
42
+ <ClassMap xmlns="ECDbMap.02.00.00">
43
+ <MapStrategy>ExistingTable</MapStrategy>
44
+ <TableName>ec_Class</TableName>
45
+ </ClassMap>
46
+ </ECCustomAttributes>
47
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsClasses" direction="backward"/>
48
+ <ECProperty propertyName="Name" typeName="string"/>
49
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
50
+ <ECProperty propertyName="Description" typeName="string"/>
51
+ <ECProperty propertyName="Type" typeName="ECClassType"/>
52
+ <ECProperty propertyName="Modifier" typeName="ECClassModifier"/>
53
+ <ECProperty propertyName="CustomAttributeContainerType" typeName="ECCustomAttributeContainerType" description="ECClassType::CustomAttribute: Specifies on which containers the custom attribute ECClass can be applied to."/>
54
+ <ECProperty propertyName="RelationshipStrength" typeName="ECRelationshipStrength" description="Applies to ECClassType::Relationship only."/>
55
+ <ECProperty propertyName="RelationshipStrengthDirection" typeName="ECRelationshipDirection" description="Applies to ECClassType::Relationship only."/>
56
+ </ECEntityClass>
57
+ <ECStructClass typeName="ECEnumeratorDef" modifier="Sealed">
58
+ <ECProperty propertyName="Name" typeName="string"/>
59
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
60
+ <ECProperty propertyName="Description" typeName="string"/>
61
+ <ECProperty propertyName="IntValue" typeName="int"/>
62
+ <ECProperty propertyName="StringValue" typeName="string"/>
63
+ </ECStructClass>
64
+ <ECEntityClass typeName="ECEnumerationDef" description="ECEnumeration" displayLabel="ECEnumeration" modifier="Sealed">
65
+ <ECCustomAttributes>
66
+ <ClassMap xmlns="ECDbMap.02.00.00">
67
+ <MapStrategy>ExistingTable</MapStrategy>
68
+ <TableName>ec_Enumeration</TableName>
69
+ </ClassMap>
70
+ </ECCustomAttributes>
71
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsEnumerations" direction="backward"/>
72
+ <ECProperty propertyName="Name" typeName="string"/>
73
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
74
+ <ECProperty propertyName="Description" typeName="string"/>
75
+ <ECProperty propertyName="Type" typeName="PrimitiveType">
76
+ <ECCustomAttributes>
77
+ <PropertyMap xmlns="ECDbMap.02.00.00">
78
+ <ColumnName>UnderlyingPrimitiveType</ColumnName>
79
+ </PropertyMap>
80
+ </ECCustomAttributes>
81
+ </ECProperty>
82
+ <ECProperty propertyName="IsStrict" typeName="boolean"/>
83
+ <ECStructArrayProperty propertyName="EnumValues" typeName="ECEnumeratorDef" minOccurs="1" maxOccurs="unbounded"/>
84
+ </ECEntityClass>
85
+ <ECEntityClass typeName="KindOfQuantityDef" description="KindOfQuantity" displayLabel="KindOfQuantity" modifier="Sealed">
86
+ <ECCustomAttributes>
87
+ <ClassMap xmlns="ECDbMap.02.00.00">
88
+ <MapStrategy>ExistingTable</MapStrategy>
89
+ <TableName>ec_KindOfQuantity</TableName>
90
+ </ClassMap>
91
+ </ECCustomAttributes>
92
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsKindOfQuantities" direction="backward"/>
93
+ <ECProperty propertyName="Name" typeName="string"/>
94
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
95
+ <ECProperty propertyName="Description" typeName="string"/>
96
+ <ECProperty propertyName="PersistenceUnit" typeName="string"/>
97
+ <ECProperty propertyName="RelativeError" typeName="double"/>
98
+ <ECArrayProperty propertyName="PresentationUnits" typeName="string"/>
99
+ </ECEntityClass>
100
+ <ECEntityClass typeName="UnitDef" description="Unit" displayLabel="Unit" modifier="Sealed">
101
+ <ECCustomAttributes>
102
+ <ClassMap xmlns="ECDbMap.02.00.00">
103
+ <MapStrategy>ExistingTable</MapStrategy>
104
+ <TableName>ec_Unit</TableName>
105
+ </ClassMap>
106
+ </ECCustomAttributes>
107
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsUnits" direction="backward"/>
108
+ <ECProperty propertyName="Name" typeName="string"/>
109
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
110
+ <ECProperty propertyName="Description" typeName="string"/>
111
+ <ECNavigationProperty propertyName="UnitSystem" relationshipName="UnitSystemHasUnits" direction="backward"/>
112
+ <ECNavigationProperty propertyName="Phenomenon" relationshipName="PhenomenonOwnsUnits" direction="backward"/>
113
+ <ECProperty propertyName="Definition" typeName="string"/>
114
+ <ECProperty propertyName="Numerator" typeName="double"/>
115
+ <ECProperty propertyName="Denominator" typeName="double"/>
116
+ <ECProperty propertyName="Offset" typeName="double"/>
117
+ <ECProperty propertyName="IsConstant" typeName="boolean"/>
118
+ <ECNavigationProperty propertyName="InvertingUnit" description="If this property is set, this UnitDef is an inverted unit. It inverts the unit specified by this property." relationshipName="UnitHasInvertedUnit" direction="backward"/>
119
+ </ECEntityClass>
120
+ <ECEntityClass typeName="UnitSystemDef" description="UnitSystem" displayLabel="UnitSystem" modifier="Sealed">
121
+ <ECCustomAttributes>
122
+ <ClassMap xmlns="ECDbMap.02.00.00">
123
+ <MapStrategy>ExistingTable</MapStrategy>
124
+ <TableName>ec_UnitSystem</TableName>
125
+ </ClassMap>
126
+ </ECCustomAttributes>
127
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsUnitSystems" direction="backward"/>
128
+ <ECProperty propertyName="Name" typeName="string"/>
129
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
130
+ <ECProperty propertyName="Description" typeName="string"/>
131
+ </ECEntityClass>
132
+ <ECEntityClass typeName="PhenomenonDef" description="Phenomenon" displayLabel="Phenomenon" modifier="Sealed">
133
+ <ECCustomAttributes>
134
+ <ClassMap xmlns="ECDbMap.02.00.00">
135
+ <MapStrategy>ExistingTable</MapStrategy>
136
+ <TableName>ec_Phenomenon</TableName>
137
+ </ClassMap>
138
+ </ECCustomAttributes>
139
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsPhenomena" direction="backward"/>
140
+ <ECProperty propertyName="Name" typeName="string"/>
141
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
142
+ <ECProperty propertyName="Description" typeName="string"/>
143
+ <ECProperty propertyName="Definition" typeName="string"/>
144
+ </ECEntityClass>
145
+ <ECEntityClass typeName="FormatDef" description="Format" displayLabel="Format" modifier="Sealed">
146
+ <ECCustomAttributes>
147
+ <ClassMap xmlns="ECDbMap.02.00.00">
148
+ <MapStrategy>ExistingTable</MapStrategy>
149
+ <TableName>ec_Format</TableName>
150
+ </ClassMap>
151
+ </ECCustomAttributes>
152
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsFormats" direction="backward"/>
153
+ <ECProperty propertyName="Name" typeName="string"/>
154
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
155
+ <ECProperty propertyName="Description" typeName="string"/>
156
+ <ECProperty propertyName="NumericSpec" typeName="string" extendedTypeName="JSON"/>
157
+ <ECProperty propertyName="CompositeSpec" typeName="string" description="CompositeSpec without units. Composite units are held by FormatCompositeUnitDef" extendedTypeName="JSON"/>
158
+ </ECEntityClass>
159
+ <ECEntityClass typeName="FormatCompositeUnitDef" description="FormatCompositeUnit" displayLabel="FormatCompositeUnit" modifier="Sealed">
160
+ <ECCustomAttributes>
161
+ <ClassMap xmlns="ECDbMap.02.00.00">
162
+ <MapStrategy>ExistingTable</MapStrategy>
163
+ <TableName>ec_FormatCompositeUnit</TableName>
164
+ </ClassMap>
165
+ </ECCustomAttributes>
166
+ <ECNavigationProperty propertyName="Format" relationshipName="FormatOwnsCompositeUnits" direction="backward"/>
167
+ <ECProperty propertyName="Label" typeName="string"/>
168
+ <ECNavigationProperty propertyName="Unit" relationshipName="CompositeUnitRefersToUnit" direction="forward"/>
169
+ <ECProperty propertyName="Ordinal" typeName="int" description="Position of the Composite Unit in its Format"/>
170
+ </ECEntityClass>
171
+ <ECEntityClass typeName="PropertyCategoryDef" description="PropertyCategory" displayLabel="PropertyCategory" modifier="Sealed">
172
+ <ECCustomAttributes>
173
+ <ClassMap xmlns="ECDbMap.02.00.00">
174
+ <MapStrategy>ExistingTable</MapStrategy>
175
+ <TableName>ec_PropertyCategory</TableName>
176
+ </ClassMap>
177
+ </ECCustomAttributes>
178
+ <ECNavigationProperty propertyName="Schema" relationshipName="SchemaOwnsPropertyCategories" direction="backward"/>
179
+ <ECProperty propertyName="Name" typeName="string"/>
180
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
181
+ <ECProperty propertyName="Description" typeName="string"/>
182
+ <ECProperty propertyName="Priority" typeName="int"/>
183
+ </ECEntityClass>
184
+ <ECEntityClass typeName="ECPropertyDef" description="ECProperty" displayLabel="ECProperty" modifier="Sealed">
185
+ <ECCustomAttributes>
186
+ <ClassMap xmlns="ECDbMap.02.00.00">
187
+ <MapStrategy>ExistingTable</MapStrategy>
188
+ <TableName>ec_Property</TableName>
189
+ </ClassMap>
190
+ </ECCustomAttributes>
191
+ <ECNavigationProperty propertyName="Class" relationshipName="ClassOwnsLocalProperties" direction="backward"/>
192
+ <ECProperty propertyName="Name" typeName="string"/>
193
+ <ECProperty propertyName="DisplayLabel" typeName="string"/>
194
+ <ECProperty propertyName="Description" typeName="string"/>
195
+ <ECProperty propertyName="IsReadonly" typeName="boolean"/>
196
+ <ECProperty propertyName="Priority" typeName="int"/>
197
+ <ECProperty propertyName="Ordinal" typeName="int" description="Position of the ECProperty in its ECClass"/>
198
+ <ECProperty propertyName="Kind" typeName="ECPropertyKind"/>
199
+ <ECProperty propertyName="PrimitiveType" typeName="PrimitiveType" description="ECPropertyKind::Primitive: data type. ECPropertyKind::PrimitiveArray: data type of array elements."/>
200
+ <ECProperty propertyName="PrimitiveTypeMinLength" typeName="int" description="Minimum length of strings or blobs."/>
201
+ <ECProperty propertyName="PrimitiveTypeMaxLength" typeName="int" description="Maximum length of strings or blobs."/>
202
+ <ECProperty propertyName="PrimitiveTypeMinValue" typeName="double" description="Minimum value of numeric primitives."/>
203
+ <ECProperty propertyName="PrimitiveTypeMaxValue" typeName="double" description="Maximum value of numeric primitives."/>
204
+ <ECNavigationProperty propertyName="Enumeration" description="ECPropertyKind::Primitive: Id of this property's ECEnumerationDef." relationshipName="PropertyHasEnumeration" direction="forward"/>
205
+ <ECProperty propertyName="ExtendedTypeName" typeName="string" description="ECPropertyKind::Primitive or ECPropertyKind::PrimitiveArray: Extended type name further describing PrimitiveType."/>
206
+ <ECNavigationProperty propertyName="StructClass" description="ECPropertyKind::Struct: ECClassId of property's struct type. ECPropertyKind::StructArray: ECClassId of array element struct type." relationshipName="PropertyHasStructType" direction="forward"/>
207
+ <ECNavigationProperty propertyName="KindOfQuantity" description="ECPropertyKind::Primitive or ECPropertyKind::PrimitiveArray: Id of this property's KindOfQuantityDef." relationshipName="PropertyHasKindOfQuantity" direction="forward"/>
208
+ <ECNavigationProperty propertyName="Category" description="Id of this property's PropertyCategoryDef." relationshipName="PropertyHasCategory" direction="forward"/>
209
+ <ECProperty propertyName="ArrayMinOccurs" typeName="int" description="ECPropertyKind::PrimitiveArray or ECPropertyKind::StructArray"/>
210
+ <ECProperty propertyName="ArrayMaxOccurs" typeName="int" description="ECPropertyKind::PrimitiveArray or ECPropertyKind::StructArray"/>
211
+ <ECNavigationProperty propertyName="NavigationRelationshipClass" description="ECPropertyKind::Navigation: ECClassId of property's relationship class." relationshipName="PropertyHasNavigationRelationshipClassId" direction="forward"/>
212
+ <ECProperty propertyName="NavigationDirection" typeName="ECRelationshipDirection" description="ECPropertyKind::Navigation: Direction to follow the relationship defined in NonPrimitiveTypeClassId."/>
213
+ </ECEntityClass>
214
+ <ECEntityClass typeName="ECRelationshipConstraintDef" modifier="Sealed">
215
+ <ECCustomAttributes>
216
+ <ClassMap xmlns="ECDbMap.02.00.00">
217
+ <MapStrategy>ExistingTable</MapStrategy>
218
+ <TableName>ec_RelationshipConstraint</TableName>
219
+ </ClassMap>
220
+ </ECCustomAttributes>
221
+ <ECNavigationProperty propertyName="RelationshipClass" relationshipName="RelationshipHasConstraints" direction="backward"/>
222
+ <ECProperty propertyName="RelationshipEnd" typeName="ECRelationshipEnd"/>
223
+ <ECProperty propertyName="MultiplicityLowerLimit" typeName="int"/>
224
+ <ECProperty propertyName="MultiplicityUpperLimit" typeName="int"/>
225
+ <ECProperty propertyName="IsPolymorphic" typeName="boolean"/>
226
+ <ECProperty propertyName="RoleLabel" typeName="string"/>
227
+ <ECNavigationProperty propertyName="AbstractConstraintClass" description="ECClassId of base class for constraint classes of this constraint" relationshipName="RelationshipConstraintHasAbstractConstraintClass" direction="forward"/>
228
+ </ECEntityClass>
229
+ <ECRelationshipClass typeName="SchemaOwnsClasses" modifier="Sealed" strength="embedding">
230
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
231
+ <Class class="ECSchemaDef"/>
232
+ </Source>
233
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
234
+ <Class class="ECClassDef"/>
235
+ </Target>
236
+ </ECRelationshipClass>
237
+ <ECRelationshipClass typeName="SchemaHasSchemaReferences" modifier="Sealed" strength="referencing">
238
+ <ECCustomAttributes>
239
+ <ClassMap xmlns="ECDbMap.02.00.00">
240
+ <MapStrategy>ExistingTable</MapStrategy>
241
+ <TableName>ec_SchemaReference</TableName>
242
+ </ClassMap>
243
+ <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
244
+ <SourceECInstanceIdColumn>SchemaId</SourceECInstanceIdColumn>
245
+ <TargetECInstanceIdColumn>ReferencedSchemaId</TargetECInstanceIdColumn>
246
+ </LinkTableRelationshipMap>
247
+ </ECCustomAttributes>
248
+ <Source multiplicity="(0..*)" roleLabel="references" polymorphic="false">
249
+ <Class class="ECSchemaDef"/>
250
+ </Source>
251
+ <Target multiplicity="(0..*)" roleLabel="is referenced by" polymorphic="false">
252
+ <Class class="ECSchemaDef"/>
253
+ </Target>
254
+ </ECRelationshipClass>
255
+ <ECRelationshipClass typeName="ClassOwnsLocalProperties" modifier="Sealed" strength="embedding">
256
+ <Source multiplicity="(1..1)" roleLabel="locally defines" polymorphic="false">
257
+ <Class class="ECClassDef"/>
258
+ </Source>
259
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
260
+ <Class class="ECPropertyDef"/>
261
+ </Target>
262
+ </ECRelationshipClass>
263
+ <ECRelationshipClass typeName="ClassHasBaseClasses" modifier="Sealed" strength="referencing">
264
+ <ECCustomAttributes>
265
+ <ClassMap xmlns="ECDbMap.02.00.00">
266
+ <MapStrategy>ExistingTable</MapStrategy>
267
+ <TableName>ec_ClassHasBaseClasses</TableName>
268
+ </ClassMap>
269
+ <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
270
+ <SourceECInstanceIdColumn>ClassId</SourceECInstanceIdColumn>
271
+ <TargetECInstanceIdColumn>BaseClassId</TargetECInstanceIdColumn>
272
+ </LinkTableRelationshipMap>
273
+ </ECCustomAttributes>
274
+ <ECProperty propertyName="Ordinal" typeName="int"/>
275
+ <Source multiplicity="(0..*)" roleLabel="is subclass of" polymorphic="false">
276
+ <Class class="ECClassDef"/>
277
+ </Source>
278
+ <Target multiplicity="(0..*)" roleLabel="is base class of" polymorphic="false">
279
+ <Class class="ECClassDef"/>
280
+ </Target>
281
+ </ECRelationshipClass>
282
+ <ECRelationshipClass typeName="ClassHasAllBaseClasses" strength="referencing" modifier="Sealed" description="Relates a given ECClassId (Source) to all its base classes (recursively) (Target). For optimization reasons this ECRelationshipClass also holds a row for each ECClass that points to itself. Base class id order: class itself, then base classes in breadth first manner.">
283
+ <ECCustomAttributes>
284
+ <ClassMap xmlns="ECDbMap.02.00.00">
285
+ <MapStrategy>ExistingTable</MapStrategy>
286
+ <TableName>ec_cache_ClassHierarchy</TableName>
287
+ </ClassMap>
288
+ <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
289
+ <SourceECInstanceIdColumn>ClassId</SourceECInstanceIdColumn>
290
+ <TargetECInstanceIdColumn>BaseClassId</TargetECInstanceIdColumn>
291
+ </LinkTableRelationshipMap>
292
+ </ECCustomAttributes>
293
+ <Source multiplicity="(0..*)" roleLabel="is a" polymorphic="false">
294
+ <Class class="ECClassDef"/>
295
+ </Source>
296
+ <Target multiplicity="(0..*)" roleLabel="is ancestor of" polymorphic="false">
297
+ <Class class="ECClassDef"/>
298
+ </Target>
299
+ </ECRelationshipClass>
300
+ <ECRelationshipClass typeName="SchemaOwnsEnumerations" modifier="Sealed" strength="embedding">
301
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
302
+ <Class class="ECSchemaDef"/>
303
+ </Source>
304
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
305
+ <Class class="ECEnumerationDef"/>
306
+ </Target>
307
+ </ECRelationshipClass>
308
+ <ECRelationshipClass typeName="SchemaOwnsKindOfQuantities" modifier="Sealed" strength="embedding">
309
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
310
+ <Class class="ECSchemaDef"/>
311
+ </Source>
312
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
313
+ <Class class="KindOfQuantityDef"/>
314
+ </Target>
315
+ </ECRelationshipClass>
316
+ <ECRelationshipClass typeName="SchemaOwnsUnitSystems" modifier="Sealed" strength="embedding">
317
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
318
+ <Class class="ECSchemaDef"/>
319
+ </Source>
320
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
321
+ <Class class="UnitSystemDef"/>
322
+ </Target>
323
+ </ECRelationshipClass>
324
+ <ECRelationshipClass typeName="SchemaOwnsPhenomena" modifier="Sealed" strength="embedding">
325
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
326
+ <Class class="ECSchemaDef"/>
327
+ </Source>
328
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
329
+ <Class class="PhenomenonDef"/>
330
+ </Target>
331
+ </ECRelationshipClass>
332
+ <ECRelationshipClass typeName="SchemaOwnsUnits" modifier="Sealed" strength="embedding">
333
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
334
+ <Class class="ECSchemaDef"/>
335
+ </Source>
336
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
337
+ <Class class="UnitDef"/>
338
+ </Target>
339
+ </ECRelationshipClass>
340
+ <ECRelationshipClass typeName="SchemaOwnsFormats" modifier="Sealed" strength="embedding">
341
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
342
+ <Class class="ECSchemaDef"/>
343
+ </Source>
344
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
345
+ <Class class="FormatDef"/>
346
+ </Target>
347
+ </ECRelationshipClass>
348
+ <ECRelationshipClass typeName="FormatOwnsCompositeUnits" modifier="Sealed" strength="embedding">
349
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
350
+ <Class class="FormatDef"/>
351
+ </Source>
352
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
353
+ <Class class="FormatCompositeUnitDef"/>
354
+ </Target>
355
+ </ECRelationshipClass>
356
+ <ECRelationshipClass typeName="CompositeUnitRefersToUnit" modifier="Sealed" strength="referencing">
357
+ <Source multiplicity="(0..*)" roleLabel="refers to" polymorphic="false">
358
+ <Class class="FormatCompositeUnitDef"/>
359
+ </Source>
360
+ <Target multiplicity="(0..1)" roleLabel="is referred to by" polymorphic="false">
361
+ <Class class="UnitDef"/>
362
+ </Target>
363
+ </ECRelationshipClass>
364
+ <ECRelationshipClass typeName="SchemaOwnsPropertyCategories" modifier="Sealed" strength="embedding">
365
+ <Source multiplicity="(1..1)" roleLabel="contains" polymorphic="false">
366
+ <Class class="ECSchemaDef"/>
367
+ </Source>
368
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
369
+ <Class class="PropertyCategoryDef"/>
370
+ </Target>
371
+ </ECRelationshipClass>
372
+ <ECRelationshipClass typeName="PhenomenonOwnsUnits" modifier="Sealed" strength="embedding">
373
+ <Source multiplicity="(1..1)" roleLabel="has" polymorphic="false">
374
+ <Class class="PhenomenonDef"/>
375
+ </Source>
376
+ <Target multiplicity="(0..*)" roleLabel="is of" polymorphic="false">
377
+ <Class class="UnitDef"/>
378
+ </Target>
379
+ </ECRelationshipClass>
380
+ <ECRelationshipClass typeName="UnitSystemHasUnits" modifier="Sealed" strength="referencing">
381
+ <Source multiplicity="(0..1)" roleLabel="has" polymorphic="false">
382
+ <Class class="UnitSystemDef"/>
383
+ </Source>
384
+ <Target multiplicity="(0..*)" roleLabel="is defined in" polymorphic="false">
385
+ <Class class="UnitDef"/>
386
+ </Target>
387
+ </ECRelationshipClass>
388
+ <ECRelationshipClass typeName="UnitHasInvertedUnit" modifier="Sealed" strength="referencing">
389
+ <Source multiplicity="(0..1)" roleLabel="is inverted by" polymorphic="false">
390
+ <Class class="UnitDef"/>
391
+ </Source>
392
+ <Target multiplicity="(0..1)" roleLabel="inverts" polymorphic="false">
393
+ <Class class="UnitDef"/>
394
+ </Target>
395
+ </ECRelationshipClass>
396
+ <ECRelationshipClass typeName="PropertyHasEnumeration" description="ECPropertyKind::Enumeration: relates the property to its ECEnumeration." modifier="Sealed" strength="referencing">
397
+ <Source multiplicity="(0..*)" roleLabel="is of type" polymorphic="false">
398
+ <Class class="ECPropertyDef"/>
399
+ </Source>
400
+ <Target multiplicity="(0..1)" roleLabel="is type of" polymorphic="false">
401
+ <Class class="ECEnumerationDef"/>
402
+ </Target>
403
+ </ECRelationshipClass>
404
+ <ECRelationshipClass typeName="PropertyHasStructType" description="ECPropertyKind::Struct: relates the struct property to its struct ECClass. ECPropertyKind::StructArray: relates the struct array property to its array element type." modifier="Sealed" strength="referencing">
405
+ <Source multiplicity="(0..*)" roleLabel="is of type" polymorphic="false">
406
+ <Class class="ECPropertyDef"/>
407
+ </Source>
408
+ <Target multiplicity="(0..1)" roleLabel="is type of" polymorphic="false">
409
+ <Class class="ECClassDef"/>
410
+ </Target>
411
+ </ECRelationshipClass>
412
+ <ECRelationshipClass typeName="PropertyHasNavigationRelationshipClassId" description="ECPropertyKind::Navigation: relates the navigation property to its backing RelationshipECClass." modifier="Sealed" strength="referencing">
413
+ <Source multiplicity="(0..*)" roleLabel="is backed by" polymorphic="false">
414
+ <Class class="ECPropertyDef"/>
415
+ </Source>
416
+ <Target multiplicity="(0..1)" roleLabel="is ECRelationshipClass of" polymorphic="false">
417
+ <Class class="ECClassDef"/>
418
+ </Target>
419
+ </ECRelationshipClass>
420
+ <ECRelationshipClass typeName="PropertyHasKindOfQuantity" description="ECPropertyKind::Primitive or ECPropertyKind::PrimitiveArray: relates the property to its KindOfQuantity." modifier="Sealed" strength="referencing">
421
+ <Source multiplicity="(0..*)" roleLabel="has" polymorphic="false">
422
+ <Class class="ECPropertyDef"/>
423
+ </Source>
424
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="false">
425
+ <Class class="KindOfQuantityDef"/>
426
+ </Target>
427
+ </ECRelationshipClass>
428
+ <ECRelationshipClass typeName="PropertyHasCategory" description="Relates the property to its PropertyCategory." modifier="Sealed" strength="referencing">
429
+ <Source multiplicity="(0..*)" roleLabel="is in" polymorphic="false">
430
+ <Class class="ECPropertyDef"/>
431
+ </Source>
432
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="false">
433
+ <Class class="PropertyCategoryDef"/>
434
+ </Target>
435
+ </ECRelationshipClass>
436
+ <ECRelationshipClass typeName="RelationshipHasConstraints" modifier="Sealed" strength="referencing">
437
+ <Source multiplicity="(1..1)" roleLabel="defines" polymorphic="false">
438
+ <Class class="ECClassDef"/>
439
+ </Source>
440
+ <Target multiplicity="(2..2)" roleLabel="is defined by" polymorphic="false">
441
+ <Class class="ECRelationshipConstraintDef"/>
442
+ </Target>
443
+ </ECRelationshipClass>
444
+ <ECRelationshipClass typeName="RelationshipConstraintHasAbstractConstraintClass" modifier="Sealed" strength="referencing">
445
+ <Source multiplicity="(0..*)" roleLabel="defines" polymorphic="false">
446
+ <Class class="ECRelationshipConstraintDef"/>
447
+ </Source>
448
+ <Target multiplicity="(0..1)" roleLabel="is abstract constraint class of" polymorphic="false">
449
+ <Class class="ECClassDef"/>
450
+ </Target>
451
+ </ECRelationshipClass>
452
+ <ECRelationshipClass typeName="RelationshipConstraintHasClasses" modifier="Sealed" strength="referencing">
453
+ <ECCustomAttributes>
454
+ <ClassMap xmlns="ECDbMap.02.00.00">
455
+ <MapStrategy>ExistingTable</MapStrategy>
456
+ <TableName>ec_RelationshipConstraintClass</TableName>
457
+ </ClassMap>
458
+ <LinkTableRelationshipMap xmlns="ECDbMap.02.00.00">
459
+ <SourceECInstanceIdColumn>ConstraintId</SourceECInstanceIdColumn>
460
+ <TargetECInstanceIdColumn>ClassId</TargetECInstanceIdColumn>
461
+ </LinkTableRelationshipMap>
462
+ </ECCustomAttributes>
463
+ <Source multiplicity="(0..*)" roleLabel="contains" polymorphic="false">
464
+ <Class class="ECRelationshipConstraintDef"/>
465
+ </Source>
466
+ <Target multiplicity="(0..*)" roleLabel="is constraint class of" polymorphic="false">
467
+ <Class class="ECClassDef"/>
468
+ </Target>
469
+ </ECRelationshipClass>
470
+ <!-- ECCustomAttributeContainerType can be OR'ed together. That cannot be expressed in the ECEnumerations
471
+ directly though. -->
472
+ <ECEnumeration typeName="ECCustomAttributeContainerType" backingTypeName="int" isStrict="true">
473
+ <ECEnumerator name="Schema" value="1" displayLabel="Schema" />
474
+ <ECEnumerator name="EntityClass" value="2" displayLabel="EntityClass"/>
475
+ <ECEnumerator name="CustomAttributeClass" value="4" displayLabel="CustomAttributeClass"/>
476
+ <ECEnumerator name="StructClass" value="8" displayLabel="StructClass"/>
477
+ <ECEnumerator name="RelationshipClass" value="16" displayLabel="RelationshipClass"/>
478
+ <ECEnumerator name="AnyClass" value="30" displayLabel="AnyClass"/>
479
+ <ECEnumerator name="PrimitiveProperty" value="32" displayLabel="PrimitiveProperty"/>
480
+ <ECEnumerator name="StructProperty" value="64" displayLabel="StructProperty"/>
481
+ <ECEnumerator name="PrimitiveArrayProperty" value="128" displayLabel="PrimitiveArrayProperty"/>
482
+ <ECEnumerator name="StructArrayProperty" value="256" displayLabel="StructArrayProperty"/>
483
+ <ECEnumerator name="NavigationProperty" value="512" displayLabel="NavigationProperty"/>
484
+ <ECEnumerator name="AnyProperty" value="992" displayLabel="AnyProperty"/>
485
+ <ECEnumerator name="SourceRelationshipConstraint" value="1024" displayLabel="SourceRelationshipConstraint"/>
486
+ <ECEnumerator name="TargetRelationshipConstraint" value="2048" displayLabel="TargetRelationshipConstraint"/>
487
+ <ECEnumerator name="AnyRelationshipConstraint" value="3072" displayLabel="AnyRelationshipConstraint"/>
488
+ <ECEnumerator name="Any" value="4095" displayLabel="Any"/>
489
+ </ECEnumeration>
490
+ <ECEnumeration typeName="ECClassModifier" backingTypeName="int" isStrict="true">
491
+ <ECEnumerator name="None" value="0" displayLabel="None" />
492
+ <ECEnumerator name="Abstract" value="1" displayLabel="Abstract" />
493
+ <ECEnumerator name="Sealed" value="2" displayLabel="Sealed" />
494
+ </ECEnumeration>
495
+ <ECEnumeration typeName="ECRelationshipEnd" backingTypeName="int" isStrict="true">
496
+ <ECEnumerator name="Source" value="0" displayLabel="Source" />
497
+ <ECEnumerator name="Target" value="1" displayLabel="Target" />
498
+ </ECEnumeration>
499
+ <ECEnumeration typeName="ECClassType" backingTypeName="int" isStrict="true">
500
+ <ECEnumerator name="Entity" value="0" displayLabel="Entity" />
501
+ <ECEnumerator name="Relationship" value="1" displayLabel="Relationship" />
502
+ <ECEnumerator name="Struct" value="2" displayLabel="Struct" />
503
+ <ECEnumerator name="CustomAttribute" value="3" displayLabel="CustomAttribute" />
504
+ </ECEnumeration>
505
+ <ECEnumeration typeName="ECPropertyKind" backingTypeName="int" isStrict="true">
506
+ <ECEnumerator name="Primitive" value="0" displayLabel="Primitive" />
507
+ <ECEnumerator name="Struct" value="1" displayLabel="Struct" />
508
+ <ECEnumerator name="PrimitiveArray" value="2" displayLabel="PrimitiveArray" />
509
+ <ECEnumerator name="StructArray" value="3" displayLabel="StructArray" />
510
+ <ECEnumerator name="Navigation" value="4" displayLabel="Navigation" />
511
+ </ECEnumeration>
512
+ <ECEnumeration typeName="ECRelationshipDirection" backingTypeName="int" isStrict="true">
513
+ <ECEnumerator name="Forward" value="1" displayLabel="Forward" />
514
+ <ECEnumerator name="Backward" value="2" displayLabel="Backward" />
515
+ </ECEnumeration>
516
+ <ECEnumeration typeName="ECRelationshipStrength" backingTypeName="int" isStrict="true">
517
+ <ECEnumerator name="Referencing" value="0" displayLabel="Referencing" />
518
+ <ECEnumerator name="Holding" value="1" displayLabel="Holding" />
519
+ <ECEnumerator name="Embedding" value="2" displayLabel="Embedding" />
520
+ </ECEnumeration>
521
+ <ECEnumeration typeName="PrimitiveType" backingTypeName="int" isStrict="true">
522
+ <ECEnumerator name="Binary" value="257" displayLabel="Binary" />
523
+ <ECEnumerator name="Boolean" value="513" displayLabel="Boolean" />
524
+ <ECEnumerator name="DateTime" value="769" displayLabel="DateTime" />
525
+ <ECEnumerator name="Double" value="1025" displayLabel="Double" />
526
+ <ECEnumerator name="Integer" value="1281" displayLabel="Integer" />
527
+ <ECEnumerator name="Long" value="1537" displayLabel="Long" />
528
+ <ECEnumerator name="Point2d" value="1793" displayLabel="Point2d" />
529
+ <ECEnumerator name="Point3d" value="2049" displayLabel="Point3d" />
530
+ <ECEnumerator name="String" value="2305" displayLabel="String" />
531
+ <ECEnumerator name="IGeometry" value="2561" displayLabel="IGeometry" />
532
+ </ECEnumeration>
533
+ </ECSchema>