bcl 0.5.7.pre → 0.7.0
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.
- checksums.yaml +5 -5
- data/.gitignore +21 -0
- data/.rubocop.yml +8 -0
- data/CHANGELOG.md +75 -0
- data/Gemfile +11 -0
- data/License.txt +65 -0
- data/README.md +40 -0
- data/Rakefile +312 -0
- data/bcl.gemspec +39 -0
- data/lib/bcl.rb +23 -5
- data/lib/bcl/base_xml.rb +12 -4
- data/lib/bcl/component.rb +7 -7
- data/lib/bcl/component_from_spreadsheet.rb +19 -18
- data/lib/bcl/component_methods.rb +135 -441
- data/lib/bcl/core_ext.rb +17 -16
- data/lib/bcl/tar_ball.rb +1 -1
- data/lib/bcl/version.rb +2 -2
- data/lib/files/Components.xls +0 -0
- data/schemas/v2/component_2012_11_08.xsd +291 -0
- data/schemas/v2/measure_2013_3_26.xsd +153 -0
- data/schemas/v3/common_bcl_v3.xsd +422 -0
- data/schemas/v3/component_v3.xsd +445 -0
- data/schemas/v3/measure_v3.xsd +496 -0
- metadata +73 -76
- data/lib/bcl/component_spreadsheet.rb +0 -290
- data/lib/bcl/master_taxonomy.rb +0 -530
@@ -0,0 +1,496 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<!-- edited with XMLSpy v2016 (x64) (http://www.altova.com) by kflemin (NREL) -->
|
3
|
+
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
4
|
+
<xs:annotation>
|
5
|
+
<xs:documentation>Measure.xsd describes the measures that are in the building component library or NREL analysis platform library.</xs:documentation>
|
6
|
+
</xs:annotation>
|
7
|
+
<xs:element name="schema_version" fixed="3.0">
|
8
|
+
<xs:annotation>
|
9
|
+
<xs:documentation>schema version</xs:documentation>
|
10
|
+
</xs:annotation>
|
11
|
+
<xs:simpleType>
|
12
|
+
<xs:restriction base="xs:string"/>
|
13
|
+
</xs:simpleType>
|
14
|
+
</xs:element>
|
15
|
+
<xs:element name="uid" type="xs:string">
|
16
|
+
<xs:annotation>
|
17
|
+
<xs:documentation>universally unique identifier which does not chage</xs:documentation>
|
18
|
+
</xs:annotation>
|
19
|
+
</xs:element>
|
20
|
+
<xs:element name="version_id" type="xs:string">
|
21
|
+
<xs:annotation>
|
22
|
+
<xs:documentation>identifier which changes each time a new version is created</xs:documentation>
|
23
|
+
</xs:annotation>
|
24
|
+
</xs:element>
|
25
|
+
<xs:element name="version_modified" type="xs:dateTime">
|
26
|
+
<xs:annotation>
|
27
|
+
<xs:documentation>timestamp at which the current version_id was created</xs:documentation>
|
28
|
+
</xs:annotation>
|
29
|
+
</xs:element>
|
30
|
+
<xs:element name="xml_checksum" type="xs:string">
|
31
|
+
<xs:annotation>
|
32
|
+
<xs:documentation>checksum of selected xml elements and attributes, used to detect changes to the xml</xs:documentation>
|
33
|
+
</xs:annotation>
|
34
|
+
</xs:element>
|
35
|
+
<xs:element name="error">
|
36
|
+
<xs:annotation>
|
37
|
+
<xs:documentation>record an error with this component or measure</xs:documentation>
|
38
|
+
</xs:annotation>
|
39
|
+
</xs:element>
|
40
|
+
<xs:element name="name" type="xs:string">
|
41
|
+
<xs:annotation>
|
42
|
+
<xs:documentation>snake cased machine readable name</xs:documentation>
|
43
|
+
</xs:annotation>
|
44
|
+
</xs:element>
|
45
|
+
<xs:element name="display_name" type="xs:string">
|
46
|
+
<xs:annotation>
|
47
|
+
<xs:documentation>user facing name</xs:documentation>
|
48
|
+
</xs:annotation>
|
49
|
+
</xs:element>
|
50
|
+
<xs:element name="description" type="xs:string">
|
51
|
+
<xs:annotation>
|
52
|
+
<xs:documentation>user facing description</xs:documentation>
|
53
|
+
</xs:annotation>
|
54
|
+
</xs:element>
|
55
|
+
<xs:element name="modeler_description" type="xs:string">
|
56
|
+
<xs:annotation>
|
57
|
+
<xs:documentation>technical description of implementation details</xs:documentation>
|
58
|
+
</xs:annotation>
|
59
|
+
</xs:element>
|
60
|
+
<xs:element name="class_name" type="xs:string">
|
61
|
+
<xs:annotation>
|
62
|
+
<xs:documentation>for measures only. name of the Ruby class implementing a measure</xs:documentation>
|
63
|
+
</xs:annotation>
|
64
|
+
</xs:element>
|
65
|
+
<xs:element name="arguments">
|
66
|
+
<xs:annotation>
|
67
|
+
<xs:documentation>for measures only. arguments are computed based on a particular model and passed to the measure at run time. actual values passed to the measure at run time are not captured here, only properties of the arguments </xs:documentation>
|
68
|
+
</xs:annotation>
|
69
|
+
<xs:complexType>
|
70
|
+
<xs:sequence>
|
71
|
+
<xs:element name="argument" minOccurs="0" maxOccurs="unbounded">
|
72
|
+
<xs:complexType>
|
73
|
+
<xs:sequence>
|
74
|
+
<xs:element ref="name"/>
|
75
|
+
<xs:element ref="display_name"/>
|
76
|
+
<xs:element name="short_name" minOccurs="0"/>
|
77
|
+
<xs:element ref="description" minOccurs="0"/>
|
78
|
+
<xs:element name="type">
|
79
|
+
<xs:annotation>
|
80
|
+
<xs:documentation>type of the argument</xs:documentation>
|
81
|
+
</xs:annotation>
|
82
|
+
<xs:simpleType>
|
83
|
+
<xs:restriction base="xs:string">
|
84
|
+
<xs:enumeration value="Boolean"/>
|
85
|
+
<xs:enumeration value="Double"/>
|
86
|
+
<xs:enumeration value="Integer"/>
|
87
|
+
<xs:enumeration value="String"/>
|
88
|
+
<xs:enumeration value="Choice"/>
|
89
|
+
<xs:enumeration value="Path"/>
|
90
|
+
</xs:restriction>
|
91
|
+
</xs:simpleType>
|
92
|
+
</xs:element>
|
93
|
+
<xs:element name="units" type="xs:string" minOccurs="0">
|
94
|
+
<xs:annotation>
|
95
|
+
<xs:documentation>units of the argument value in format parsable by OpenStudio::convert</xs:documentation>
|
96
|
+
</xs:annotation>
|
97
|
+
</xs:element>
|
98
|
+
<xs:element name="required" type="xs:boolean">
|
99
|
+
<xs:annotation>
|
100
|
+
<xs:documentation>true if the argument is required in order for the measure to run</xs:documentation>
|
101
|
+
</xs:annotation>
|
102
|
+
</xs:element>
|
103
|
+
<xs:element name="model_dependent" type="xs:boolean" default="false">
|
104
|
+
<xs:annotation>
|
105
|
+
<xs:documentation>true if any of this argument's properties depend on the specific model used. default_value, choice_values, min_value, and max_value will not be populated for dynamic arguments</xs:documentation>
|
106
|
+
</xs:annotation>
|
107
|
+
</xs:element>
|
108
|
+
<xs:element name="default_value" type="xs:anySimpleType" minOccurs="0">
|
109
|
+
<xs:annotation>
|
110
|
+
<xs:documentation>default value for the argument</xs:documentation>
|
111
|
+
</xs:annotation>
|
112
|
+
</xs:element>
|
113
|
+
<xs:element name="choices" minOccurs="0">
|
114
|
+
<xs:annotation>
|
115
|
+
<xs:documentation>list of allowable values</xs:documentation>
|
116
|
+
</xs:annotation>
|
117
|
+
<xs:complexType>
|
118
|
+
<xs:sequence>
|
119
|
+
<xs:element name="choice" maxOccurs="unbounded">
|
120
|
+
<xs:complexType>
|
121
|
+
<xs:sequence>
|
122
|
+
<xs:element name="value" type="xs:anySimpleType">
|
123
|
+
<xs:annotation>
|
124
|
+
<xs:documentation>allowable value</xs:documentation>
|
125
|
+
</xs:annotation>
|
126
|
+
</xs:element>
|
127
|
+
<xs:element name="display_name" type="xs:string">
|
128
|
+
<xs:annotation>
|
129
|
+
<xs:documentation>user facing name for value</xs:documentation>
|
130
|
+
</xs:annotation>
|
131
|
+
</xs:element>
|
132
|
+
</xs:sequence>
|
133
|
+
</xs:complexType>
|
134
|
+
</xs:element>
|
135
|
+
</xs:sequence>
|
136
|
+
</xs:complexType>
|
137
|
+
</xs:element>
|
138
|
+
<xs:element name="min_value" type="xs:anySimpleType" minOccurs="0">
|
139
|
+
<xs:annotation>
|
140
|
+
<xs:documentation>minimum value</xs:documentation>
|
141
|
+
</xs:annotation>
|
142
|
+
</xs:element>
|
143
|
+
<xs:element name="max_value" type="xs:anySimpleType" minOccurs="0">
|
144
|
+
<xs:annotation>
|
145
|
+
<xs:documentation>maximum value</xs:documentation>
|
146
|
+
</xs:annotation>
|
147
|
+
</xs:element>
|
148
|
+
<xs:element name="model_dependent" type="xs:boolean" default="false">
|
149
|
+
<xs:annotation>
|
150
|
+
<xs:documentation>true if any of this argument's properties depend on the specific model used. default_value, choice_values, min_value, and max_value will not be populated for dynamic arguments</xs:documentation>
|
151
|
+
</xs:annotation>
|
152
|
+
</xs:element>
|
153
|
+
</xs:sequence>
|
154
|
+
</xs:complexType>
|
155
|
+
</xs:element>
|
156
|
+
</xs:sequence>
|
157
|
+
</xs:complexType>
|
158
|
+
</xs:element>
|
159
|
+
<xs:element name="masterguide_csi_values">
|
160
|
+
<xs:annotation>
|
161
|
+
<xs:documentation>for components only. values from the MASTERSPEC</xs:documentation>
|
162
|
+
</xs:annotation>
|
163
|
+
<xs:complexType>
|
164
|
+
<xs:sequence>
|
165
|
+
<xs:element name="masterguide_csi_value" maxOccurs="unbounded"/>
|
166
|
+
</xs:sequence>
|
167
|
+
</xs:complexType>
|
168
|
+
</xs:element>
|
169
|
+
<xs:element name="source">
|
170
|
+
<xs:annotation>
|
171
|
+
<xs:documentation>for components only. source of the data (the origin of the component information)</xs:documentation>
|
172
|
+
</xs:annotation>
|
173
|
+
<xs:complexType>
|
174
|
+
<xs:sequence minOccurs="0">
|
175
|
+
<xs:element name="manufacturer" type="xs:string" minOccurs="0"/>
|
176
|
+
<xs:element name="model" minOccurs="0"/>
|
177
|
+
<xs:element name="serial_no" minOccurs="0"/>
|
178
|
+
<xs:element name="year" minOccurs="0"/>
|
179
|
+
<xs:element name="url" minOccurs="0"/>
|
180
|
+
</xs:sequence>
|
181
|
+
</xs:complexType>
|
182
|
+
</xs:element>
|
183
|
+
<xs:element name="provenances">
|
184
|
+
<xs:annotation>
|
185
|
+
<xs:documentation>provenance is used to enter author information. </xs:documentation>
|
186
|
+
</xs:annotation>
|
187
|
+
<xs:complexType>
|
188
|
+
<xs:sequence>
|
189
|
+
<xs:element name="provenance" minOccurs="0" maxOccurs="unbounded">
|
190
|
+
<xs:complexType>
|
191
|
+
<xs:sequence>
|
192
|
+
<xs:element name="author" type="xs:string">
|
193
|
+
<xs:annotation>
|
194
|
+
<xs:documentation>author who uploaded the content, will be equal to the user account on the bcl site</xs:documentation>
|
195
|
+
</xs:annotation>
|
196
|
+
</xs:element>
|
197
|
+
<xs:element name="datetime" type="xs:dateTime">
|
198
|
+
<xs:annotation>
|
199
|
+
<xs:documentation>date content was uploaded</xs:documentation>
|
200
|
+
</xs:annotation>
|
201
|
+
</xs:element>
|
202
|
+
<xs:element name="comment" type="xs:string" minOccurs="0">
|
203
|
+
<xs:annotation>
|
204
|
+
<xs:documentation>general comment</xs:documentation>
|
205
|
+
</xs:annotation>
|
206
|
+
</xs:element>
|
207
|
+
</xs:sequence>
|
208
|
+
</xs:complexType>
|
209
|
+
</xs:element>
|
210
|
+
</xs:sequence>
|
211
|
+
</xs:complexType>
|
212
|
+
</xs:element>
|
213
|
+
<xs:element name="tags">
|
214
|
+
<xs:annotation>
|
215
|
+
<xs:documentation>tags are used to classify the content using the appropriate taxonomy. currently only one tag per piece of content is supported.</xs:documentation>
|
216
|
+
</xs:annotation>
|
217
|
+
<xs:complexType>
|
218
|
+
<xs:sequence>
|
219
|
+
<xs:element name="tag" type="xs:string" maxOccurs="unbounded"/>
|
220
|
+
</xs:sequence>
|
221
|
+
</xs:complexType>
|
222
|
+
</xs:element>
|
223
|
+
<xs:element name="attributes">
|
224
|
+
<xs:annotation>
|
225
|
+
<xs:documentation>attributes are descriptors of the content. attributes should be found in the corresponding taxonomy</xs:documentation>
|
226
|
+
</xs:annotation>
|
227
|
+
<xs:complexType>
|
228
|
+
<xs:sequence>
|
229
|
+
<xs:element name="attribute" minOccurs="0" maxOccurs="unbounded">
|
230
|
+
<xs:complexType>
|
231
|
+
<xs:sequence>
|
232
|
+
<xs:element name="name" type="xs:string">
|
233
|
+
<xs:annotation>
|
234
|
+
<xs:documentation>user facing attribute name (should be found in appropriate taxonomy)</xs:documentation>
|
235
|
+
</xs:annotation>
|
236
|
+
</xs:element>
|
237
|
+
<xs:element name="value" type="xs:anySimpleType"/>
|
238
|
+
<xs:element name="datatype">
|
239
|
+
<xs:simpleType>
|
240
|
+
<xs:restriction base="xs:string">
|
241
|
+
<xs:enumeration value="float"/>
|
242
|
+
<xs:enumeration value="integer"/>
|
243
|
+
<xs:enumeration value="string"/>
|
244
|
+
<xs:enumeration value="boolean"/>
|
245
|
+
</xs:restriction>
|
246
|
+
</xs:simpleType>
|
247
|
+
</xs:element>
|
248
|
+
<xs:element name="units" type="xs:string" minOccurs="0"/>
|
249
|
+
</xs:sequence>
|
250
|
+
</xs:complexType>
|
251
|
+
</xs:element>
|
252
|
+
</xs:sequence>
|
253
|
+
</xs:complexType>
|
254
|
+
</xs:element>
|
255
|
+
<xs:element name="files">
|
256
|
+
<xs:annotation>
|
257
|
+
<xs:documentation>files lists details on all of the files associated with this piece content</xs:documentation>
|
258
|
+
</xs:annotation>
|
259
|
+
<xs:complexType>
|
260
|
+
<xs:sequence>
|
261
|
+
<xs:element name="file" minOccurs="0" maxOccurs="unbounded">
|
262
|
+
<xs:complexType>
|
263
|
+
<xs:sequence>
|
264
|
+
<xs:element name="version" minOccurs="0">
|
265
|
+
<xs:complexType>
|
266
|
+
<xs:sequence>
|
267
|
+
<xs:element name="software_program" type="xs:string">
|
268
|
+
<xs:annotation>
|
269
|
+
<xs:documentation>software program the file is associated with</xs:documentation>
|
270
|
+
</xs:annotation>
|
271
|
+
</xs:element>
|
272
|
+
<xs:element name="identifier" type="xs:string">
|
273
|
+
<xs:annotation>
|
274
|
+
<xs:documentation>version of software program that this file is associated with</xs:documentation>
|
275
|
+
</xs:annotation>
|
276
|
+
</xs:element>
|
277
|
+
<xs:element name="min_compatible" minOccurs="0">
|
278
|
+
<xs:annotation>
|
279
|
+
<xs:documentation>minimum version of the software this file is compatible with, if not specified assumed to be the version identifier</xs:documentation>
|
280
|
+
</xs:annotation>
|
281
|
+
</xs:element>
|
282
|
+
<xs:element name="max_compatible" minOccurs="0">
|
283
|
+
<xs:annotation>
|
284
|
+
<xs:documentation>maximum version of the software this file is compatible with, if not specified assumed to be any version min_compatible or higher</xs:documentation>
|
285
|
+
</xs:annotation>
|
286
|
+
</xs:element>
|
287
|
+
</xs:sequence>
|
288
|
+
</xs:complexType>
|
289
|
+
</xs:element>
|
290
|
+
<xs:element name="filename" type="xs:string">
|
291
|
+
<xs:annotation>
|
292
|
+
<xs:documentation>name of the file</xs:documentation>
|
293
|
+
</xs:annotation>
|
294
|
+
</xs:element>
|
295
|
+
<xs:element name="filetype" type="xs:string">
|
296
|
+
<xs:annotation>
|
297
|
+
<xs:documentation>ies, idf, </xs:documentation>
|
298
|
+
</xs:annotation>
|
299
|
+
</xs:element>
|
300
|
+
<xs:element name="usage_type">
|
301
|
+
<xs:annotation>
|
302
|
+
<xs:documentation>identifies the directory to search for the file in </xs:documentation>
|
303
|
+
</xs:annotation>
|
304
|
+
<xs:simpleType>
|
305
|
+
<xs:restriction base="xs:string">
|
306
|
+
<xs:enumeration value="script"/>
|
307
|
+
<xs:enumeration value="test"/>
|
308
|
+
<xs:enumeration value="resource"/>
|
309
|
+
<xs:enumeration value="doc"/>
|
310
|
+
<xs:enumeration value="license"/>
|
311
|
+
<xs:enumeration value="readme"/>
|
312
|
+
<xs:enumeration value="readmeerb"/>
|
313
|
+
</xs:restriction>
|
314
|
+
</xs:simpleType>
|
315
|
+
</xs:element>
|
316
|
+
<xs:element name="checksum" type="xs:string">
|
317
|
+
<xs:annotation>
|
318
|
+
<xs:documentation>checksum of the file as computed by OpenStudio::checksum</xs:documentation>
|
319
|
+
</xs:annotation>
|
320
|
+
</xs:element>
|
321
|
+
</xs:sequence>
|
322
|
+
</xs:complexType>
|
323
|
+
</xs:element>
|
324
|
+
</xs:sequence>
|
325
|
+
</xs:complexType>
|
326
|
+
</xs:element>
|
327
|
+
<xs:element name="costs">
|
328
|
+
<xs:complexType>
|
329
|
+
<xs:sequence>
|
330
|
+
<xs:element name="cost" minOccurs="0" maxOccurs="unbounded">
|
331
|
+
<xs:complexType>
|
332
|
+
<xs:sequence>
|
333
|
+
<xs:element name="instance_name" type="xs:string">
|
334
|
+
<xs:annotation>
|
335
|
+
<xs:documentation>name of cost for reference</xs:documentation>
|
336
|
+
</xs:annotation>
|
337
|
+
</xs:element>
|
338
|
+
<xs:element name="cost_type">
|
339
|
+
<xs:annotation>
|
340
|
+
<xs:documentation>type of cost, includes low, high, average, estimate, etc</xs:documentation>
|
341
|
+
</xs:annotation>
|
342
|
+
<xs:simpleType>
|
343
|
+
<xs:restriction base="xs:string">
|
344
|
+
<xs:enumeration value="low"/>
|
345
|
+
<xs:enumeration value="high"/>
|
346
|
+
<xs:enumeration value="average"/>
|
347
|
+
<xs:enumeration value="estimate"/>
|
348
|
+
</xs:restriction>
|
349
|
+
</xs:simpleType>
|
350
|
+
</xs:element>
|
351
|
+
<xs:element name="category">
|
352
|
+
<xs:annotation>
|
353
|
+
<xs:documentation>ex: operations and maintenance cost, salvage cost, materials cost, installation cost, upgrade cost, etc.</xs:documentation>
|
354
|
+
</xs:annotation>
|
355
|
+
</xs:element>
|
356
|
+
<xs:element name="value" type="xs:float">
|
357
|
+
<xs:annotation>
|
358
|
+
<xs:documentation>cost value based on the supplemntal fields</xs:documentation>
|
359
|
+
</xs:annotation>
|
360
|
+
</xs:element>
|
361
|
+
<xs:element name="units" minOccurs="0">
|
362
|
+
<xs:annotation>
|
363
|
+
<xs:documentation>cost unit. If blank, absolute cost is assumed. ex: $/ft2, $/person, etc.</xs:documentation>
|
364
|
+
</xs:annotation>
|
365
|
+
</xs:element>
|
366
|
+
<xs:element name="interval" minOccurs="0">
|
367
|
+
<xs:annotation>
|
368
|
+
<xs:documentation>number describing the interval on which this cost is incurred. ex: 1, 6, 12. Use 0 for onetime costs</xs:documentation>
|
369
|
+
</xs:annotation>
|
370
|
+
</xs:element>
|
371
|
+
<xs:element name="interval_units" minOccurs="0">
|
372
|
+
<xs:annotation>
|
373
|
+
<xs:documentation>interval units. ex: day, month, year, etc.</xs:documentation>
|
374
|
+
</xs:annotation>
|
375
|
+
<xs:simpleType>
|
376
|
+
<xs:restriction base="xs:string">
|
377
|
+
<xs:enumeration value="year(s)"/>
|
378
|
+
<xs:enumeration value="month(s)"/>
|
379
|
+
<xs:enumeration value="day(s)"/>
|
380
|
+
</xs:restriction>
|
381
|
+
</xs:simpleType>
|
382
|
+
</xs:element>
|
383
|
+
<xs:element name="year" type="xs:int" minOccurs="0">
|
384
|
+
<xs:annotation>
|
385
|
+
<xs:documentation>source year of the costs</xs:documentation>
|
386
|
+
</xs:annotation>
|
387
|
+
</xs:element>
|
388
|
+
<xs:element name="start_year" minOccurs="0">
|
389
|
+
<xs:annotation>
|
390
|
+
<xs:documentation>define when this cost will start to incur. Useful when you may not want maintenance costs to start until n years after construction</xs:documentation>
|
391
|
+
</xs:annotation>
|
392
|
+
</xs:element>
|
393
|
+
<xs:element name="end_year" minOccurs="0">
|
394
|
+
<xs:annotation>
|
395
|
+
<xs:documentation>define whne this cost will stop incurring.</xs:documentation>
|
396
|
+
</xs:annotation>
|
397
|
+
</xs:element>
|
398
|
+
<xs:element name="location" minOccurs="0">
|
399
|
+
<xs:annotation>
|
400
|
+
<xs:documentation>the geographic location where the component was costed (i.e. national, colorado, denver, etc). By default all values should be national averages.</xs:documentation>
|
401
|
+
</xs:annotation>
|
402
|
+
</xs:element>
|
403
|
+
<xs:element name="currency" minOccurs="0">
|
404
|
+
<xs:annotation>
|
405
|
+
<xs:documentation>the currency of the cost. If blank, USD is assumed.</xs:documentation>
|
406
|
+
</xs:annotation>
|
407
|
+
</xs:element>
|
408
|
+
<xs:element name="source" type="xs:string" minOccurs="0">
|
409
|
+
<xs:annotation>
|
410
|
+
<xs:documentation>origin from which the cost data came</xs:documentation>
|
411
|
+
</xs:annotation>
|
412
|
+
</xs:element>
|
413
|
+
<xs:element name="reference_component_name" minOccurs="0">
|
414
|
+
<xs:annotation>
|
415
|
+
<xs:documentation>display name of reference component prior to retrofit (for marginal costs)</xs:documentation>
|
416
|
+
</xs:annotation>
|
417
|
+
</xs:element>
|
418
|
+
<xs:element name="reference_component_id" minOccurs="0">
|
419
|
+
<xs:annotation>
|
420
|
+
<xs:documentation>ID of reference component prior to retrofit (for marginal costs)</xs:documentation>
|
421
|
+
</xs:annotation>
|
422
|
+
</xs:element>
|
423
|
+
</xs:sequence>
|
424
|
+
</xs:complexType>
|
425
|
+
</xs:element>
|
426
|
+
</xs:sequence>
|
427
|
+
</xs:complexType>
|
428
|
+
</xs:element>
|
429
|
+
<xs:element name="measure">
|
430
|
+
<xs:annotation>
|
431
|
+
<xs:documentation>root element defining a measure</xs:documentation>
|
432
|
+
</xs:annotation>
|
433
|
+
<xs:complexType>
|
434
|
+
<xs:sequence>
|
435
|
+
<xs:element ref="schema_version"/>
|
436
|
+
<xs:element ref="error" minOccurs="0"/>
|
437
|
+
<xs:element ref="name"/>
|
438
|
+
<xs:element ref="uid"/>
|
439
|
+
<xs:element ref="version_id"/>
|
440
|
+
<xs:element ref="version_modified" minOccurs="0"/>
|
441
|
+
<xs:element ref="xml_checksum"/>
|
442
|
+
<xs:element ref="class_name"/>
|
443
|
+
<xs:element ref="display_name"/>
|
444
|
+
<xs:element ref="description"/>
|
445
|
+
<xs:element ref="modeler_description"/>
|
446
|
+
<xs:element ref="arguments"/>
|
447
|
+
<xs:element ref="provenances"/>
|
448
|
+
<xs:element ref="tags"/>
|
449
|
+
<xs:element ref="attributes"/>
|
450
|
+
<xs:element ref="files"/>
|
451
|
+
<xs:element ref="outputs"/>
|
452
|
+
</xs:sequence>
|
453
|
+
</xs:complexType>
|
454
|
+
</xs:element>
|
455
|
+
<xs:element name="outputs">
|
456
|
+
<xs:annotation>
|
457
|
+
<xs:documentation>for measures ony. Outputs represent the output values to include in analysis results</xs:documentation>
|
458
|
+
</xs:annotation>
|
459
|
+
<xs:complexType>
|
460
|
+
<xs:sequence>
|
461
|
+
<xs:element name="output" minOccurs="0" maxOccurs="unbounded">
|
462
|
+
<xs:complexType>
|
463
|
+
<xs:sequence>
|
464
|
+
<xs:element ref="name"/>
|
465
|
+
<xs:element ref="display_name"/>
|
466
|
+
<xs:element name="short_name" type="xs:string" minOccurs="0"/>
|
467
|
+
<xs:element ref="description" minOccurs="0"/>
|
468
|
+
<xs:element name="type">
|
469
|
+
<xs:simpleType>
|
470
|
+
<xs:restriction base="xs:string">
|
471
|
+
<xs:enumeration value="Boolean"/>
|
472
|
+
<xs:enumeration value="Double"/>
|
473
|
+
<xs:enumeration value="Integer"/>
|
474
|
+
<xs:enumeration value="String"/>
|
475
|
+
<xs:enumeration value="Choice"/>
|
476
|
+
<xs:enumeration value="Path"/>
|
477
|
+
</xs:restriction>
|
478
|
+
</xs:simpleType>
|
479
|
+
</xs:element>
|
480
|
+
<xs:element name="units" type="xs:string" minOccurs="0">
|
481
|
+
<xs:annotation>
|
482
|
+
<xs:documentation>units of the output value in format parsable by OpenStudio::convert</xs:documentation>
|
483
|
+
</xs:annotation>
|
484
|
+
</xs:element>
|
485
|
+
<xs:element name="model_dependent" type="xs:boolean" default="false">
|
486
|
+
<xs:annotation>
|
487
|
+
<xs:documentation>true if any of this output's properties depend on the specific model used.</xs:documentation>
|
488
|
+
</xs:annotation>
|
489
|
+
</xs:element>
|
490
|
+
</xs:sequence>
|
491
|
+
</xs:complexType>
|
492
|
+
</xs:element>
|
493
|
+
</xs:sequence>
|
494
|
+
</xs:complexType>
|
495
|
+
</xs:element>
|
496
|
+
</xs:schema>
|