Repository navigation
Expand file tree
/
Copy pathtype-system.json
More file actions
317 lines (317 loc) · 17.5 KB
/
Copy pathtype-system.json
File metadata and controls
317 lines (317 loc) · 17.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
{
"0.FDO/Type": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefAttrRef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_type" },
{ "0.FDO/Description": "The FDO type gives a hint to a machine how the identified resource may be processed. It points to the attribute that further specifies the FDO type." },
{ "0.FDO/Cardinality": "1..n" }
],
"0.FDO/Data": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefUnion" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_data" },
{ "0.FDO/Description": "The 0.FDO/Data attribute is the entry point to find the data associated with an FDO. If the identified resource is physical or conceptual, the string \"self\" is used. If the resource it digital, 0.FDO/Data points to the Attribute that references the digital resource." },
{ "0.FDO/Cardinality": "1..n" },
{ "0.FDO/AllowedAttribute": "0.FDO/DataAsSelf" },
{ "0.FDO/AllowedAttribute": "0.FDO/DataAsAttrRef" }
],
"0.FDO/DataAsSelf": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_data_as_self" },
{ "0.FDO/Description": "If identified resource is physical or conceptual, the string \"self\" is used as the value of 0.FDO/Data." },
{ "0.FDO/Cardinality": "0..1" },
{ "0.FDO/PrimitiveDataType": "string" },
{ "0.FDO/Whitelist": "self" }
],
"0.FDO/DataAsAttrRef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefAttrRef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_data_as_attr" },
{ "0.FDO/Description": "If the identified resource it digital, 0.FDO/Data points to the attribute that references the digital resource." },
{ "0.FDO/Cardinality": "0..n" }
],
"0.FDO/Profile": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefProfileRef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_profile" },
{ "0.FDO/Description": "This attribute points to a FDO profile. The FDO profile is a template for any FDO record instantiating this profile." },
{ "0.FDO/Cardinality": "1..n" },
{ "0.FDO/AllowedProfile": "0.FDO/ProfileDef" }
],
"0.FDO/Name": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_resource_name" },
{ "0.FDO/Description": "A localized human-readable name for the identified resource" },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/PrimitiveDataType": "string" }
],
"0.FDO/Description": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_resource_description" },
{ "0.FDO/Description": "A localized human-readable description for the identified resource" },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/PrimitiveDataType": "string" }
],
"0.FDO/Cardinality": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_cardinality" },
{ "0.FDO/Description": "Obligation and repeatability of the given attribute in an FDO record that uses this attribute." },
{ "0.FDO/Cardinality": "0..1" },
{ "0.FDO/PrimitiveDataType": "string" },
{ "0.FDO/Regex": "^(\\d+)(\\.\\.(\\d+|\\*))?$" }
],
"0.FDO/PrimitiveDataType": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_primitive_data_type" },
{ "0.FDO/Description": "A basic classification of which type of value an attribute is allowed to take on." },
{ "0.FDO/Cardinality": "0..1" },
{ "0.FDO/PrimitiveDataType": "string" },
{ "0.FDO/Whitelist": "string" },
{ "0.FDO/Whitelist": "number" },
{ "0.FDO/Whitelist": "integer" },
{ "0.FDO/Whitelist": "boolean" }
],
"0.FDO/Regex": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_regular_expression" },
{ "0.FDO/Description": "A string defining a regular expression" },
{ "0.FDO/Cardinality": "0..1" },
{ "0.FDO/PrimitiveDataType": "string" }
],
"0.FDO/NumericInterval": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_numeric_interval" },
{ "0.FDO/Description": "A numeric interval of the form (a,b) (a,b] [a,b) or [a,b]. A square bracket means including the boundary, round bracket means excluding the boundary. a and b are decimal numbers." },
{ "0.FDO/Cardinality": "0..1" },
{ "0.FDO/PrimitiveDataType": "string" },
{ "0.FDO/Regex": "^\\s*(?:\\[\\s*(-?\\d+(?:\\.\\d+)?)\\s*,\\s*(-?\\d+(?:\\.\\d+)?)\\s*\\]|\\(\\s*(-?\\d+(?:\\.\\d+)?)\\s*,\\s*(-?\\d+(?:\\.\\d+)?)\\s*\\)|\\[\\s*(-?\\d+(?:\\.\\d+)?)\\s*,\\s*(-?\\d+(?:\\.\\d+)?)\\s*\\)|\\(\\s*(-?\\d+(?:\\.\\d+)?)\\s*,\\s*(-?\\d+(?:\\.\\d+)?)\\s*\\])\\s*$" }
],
"0.FDO/Whitelist": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_whitelist" },
{ "0.FDO/Description": "An exhaustive enumeration of values (strings) to accept. Other values are rejected." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/PrimitiveDataType": "string" }
],
"0.FDO/Blacklist": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_blacklist" },
{ "0.FDO/Description": "A non-exhaustive enumeration of values (strings) to reject." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/PrimitiveDataType": "string" }
],
"0.FDO/AllowedAttributeInAttrRef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefProfileRef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_allowed_attribute_in_attr" },
{ "0.FDO/Description": "An attribute definition PID that is allowed as the value of an attribute that uses attribute referencing." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/AllowedProfileInProfileRef": "0.FDO/AttributeDef" }
],
"0.FDO/AllowedPlainNameInAttrRef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_allowed_plain_name_in_attr_ref" },
{ "0.FDO/Description": "A plain name that is allowed as the value of an attribute that uses attribute referencing." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/PrimitiveDataType": "string" }
],
"0.FDO/AllowedProfileInProfileRef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefProfileRef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_allowed_profile_in_profile" },
{ "0.FDO/Description": "PID of a profile that is allowed as the value of an attribute that uses profile referencing." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/AllowedProfileInProfileRef": "0.FDO/ProfileDef" }
],
"0.FDO/AllowedAttributeInCombination": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefUnion" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_allowed_attribute_in_combination" },
{ "0.FDO/Description": "An attribute that is part of an inline combination. The value is either a reference to an attribute, or a combination of an attribute and a localized cardinality." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/AllowedAttributeInUnion": "0.FDO/BasicAttribute" },
{ "0.FDO/AllowedAttributeInUnion": "0.FDO/RefinedAttribute" }
],
"0.FDO/AllowedAttributeInUnion": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefUnion" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_allowed_attribute_in_union" },
{ "0.FDO/Description": "An attribute that is part of a union. The value is either a reference to an attribute, or a combination of an attribute and a localized cardinality." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/AllowedAttributeInUnion": "0.FDO/RefinedAttribute" },
{ "0.FDO/AllowedAttributeInUnion": "0.FDO/BasicAttribute" }
],
"0.FDO/BasicAttribute": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefProfileRef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_basic_attribute" },
{ "0.FDO/Description": "A reference (PID) to an FDO attribute. Used in profiles, unions and inline combinations to specify which attributes must be in FDOs." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/AllowedProfileInProfileRef": "0.FDO/AttributeDef" }
],
"0.FDO/RefinedAttribute": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefComb" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_refined_attribute" },
{ "0.FDO/Description": "An attribute that is refined in a new context. The value is a combination of an attribute and a localized cardinality adapted to the new context." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/Attribute": "0.FDO/Cardinality" },
{ "0.FDO/Attribute": "0.FDO/BasicAttribute" }
],
"0.FDO/DenyAdditionalAttributes": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_prohibition_of_additional_ attributes" },
{ "0.FDO/Description": "If this attribute is not set or has a false value, additional attributes are allowed (recommended value)" },
{ "0.FDO/Cardinality": "0..1" },
{ "0.FDO/PrimitiveDataType": "boolean" }
],
"0.FDO/Extends": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefProfileRef" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_extends_profile" },
{ "0.FDO/Description": "Reference to another profile that is extended by this profile." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/PrimitiveDataType": "string" },
{ "0.FDO/AllowedProfileInProfileRef": "0.FDO/ProfileDef" }
],
"0.FDO/Attribute": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefUnion" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_attribute" },
{ "0.FDO/Description": "The attributes that are required by this profile. One can either use an attribute as it is, or refine it to adapt it to the given context by providing a localized cardinality." },
{ "0.FDO/Cardinality": "0..*" },
{ "0.FDO/AllowedAttributeInUnion": "0.FDO/RefinedAttribute" },
{ "0.FDO/AllowedAttributeInUnion": "0.FDO/BasicAttribute" }
],
"0.FDO/Root": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_root_profile" },
{ "0.FDO/Description": "This FDO defines the root profile. Any FDO must be valid against the root profile. The root profile requires three attributes: 0.FDO/Type, 0.FDO/Profile, 0.FDO/Data.These three attributes must be used in any FDO. The root profile can and should be extended by other profiles." },
{ "0.FDO/Attribute": "0.FDO/Type" },
{ "0.FDO/Attribute": "0.FDO/Data" },
{ "0.FDO/Attribute": "0.FDO/Profile" }
],
"0.FDO/ProfileDef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_profile_definition" },
{ "0.FDO/Description": "This FDO defines the profile definition profile. It is the profile that validates any other profile, including itself. It is the template for defining new FDO profiles. Any FDO profile must be valid against this profile." },
{ "0.FDO/Attribute": "0.FDO/Description" },
{ "0.FDO/Attribute": "0.FDO/Name" },
{ "0.FDO/Attribute": "0.FDO/DenyAdditionalAttributes" },
{ "0.FDO/Attribute": "0.FDO/Extends" },
{ "0.FDO/Attribute": "0.FDO/Attribute" },
{ "0.FDO/Extends": "0.FDO/Root" }
],
"0.FDO/AttributeDefSyntax": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_attribute_definition_profile_" },
{ "0.FDO/Description": "This profile is the template to define new basic attributes (i.e., attributes that are based on syntactically validatable expressions)." },
{ "0.FDO/Extends": "0.FDO/AttributeDef" },
{ "0.FDO/Attribute": "0.FDO/Regex" },
{ "0.FDO/Attribute": "0.FDO/NumericInterval" },
{ "0.FDO/Attribute": "0.FDO/Whitelist" },
{ "0.FDO/Attribute": "0.FDO/Blacklist" },
{ "0.FDO/Attribute": "0.FDO/PrimitiveDataType" }
],
"0.FDO/AttributeDefProfileRef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_attribute_definition_profile_for_profile_referencing" },
{ "0.FDO/Description": "This profile is the template to define a new attribute that uses the profile referencing mechanism.\u00a0" },
{ "0.FDO/Attribute": "0.FDO/AllowedProfilesInProfileRef" },
{ "0.FDO/Extends": "0.FDO/AttributeDef" }
],
"0.FDO/AttributeDefAttrRef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_attribute_definition_profile_" },
{ "0.FDO/Description": "This profile is the template to define a new attribute that uses the attribute referencing mechanism.\u00a0" },
{ "0.FDO/Extends": "0.FDO/AttributeDef" },
{ "0.FDO/Attribute": "0.FDO/AllowedAttributesInAttrRef" },
{ "0.FDO/Attribute": "0.FDO/AllowedPlainNamesInAttrRef" }
],
"0.FDO/AttributeDefComb": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_attribute_definition_profile_for_inline_combination" },
{ "0.FDO/Description": "This profile is the template to define a new attribute that is an inline combination of existing attributes.\u00a0" },
{ "0.FDO/Attribute": "0.FDO/AllowedAttributeIn" },
{ "0.FDO/Extends": "0.FDO/AttributeDef" }
],
"0.FDO/AttributeDefUnion": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_attribute_definition_profile_for_union" },
{ "0.FDO/Description": "This profile is the template to define a new attribute that is a union of existing attributes.\u00a0" },
{ "0.FDO/Extends": "0.FDO/AttributeDef" },
{ "0.FDO/Attribute": "0.FDO/AllowedAttributeInUnion" }
],
"0.FDO/AttributeDef": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/ProfileDef" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_attribute_definition_profile" },
{ "0.FDO/Description": "This FDO profile is the base template to define new attributes. It is extended by five different templates:\u00a0 0.FDO/AttributeDefSyntax, 0.FDO/AttributeDefComb, 0.FDO/AttributeDefUnion, 0.FDO/AttributeDefProfileRef, and 0.FDO/AttributeDefAttrRef. Each of those templates can be instantiated to define new attributes based on certain validation rules. An attribute that only instantiates 0.FDO/AttributeDef (and none of the extending templates) is validated to be a string." },
{ "0.FDO/Extends": "0.FDO/Root" },
{ "0.FDO/Attribute": "0.FDO/Name" },
{ "0.FDO/Attribute": "0.FDO/Description" },
{ "0.FDO/Attribute": "0.FDO/Cardinality" },
{ "0.FDO/Attribute": "0.FDO/ValidationStrategyForCombination" }
],
"0.FDO/ValidationStrategyForCombination": [
{ "0.FDO/Type": "0.FDO/Profile" },
{ "0.FDO/Profile": "0.FDO/AttributeDefSyntax" },
{ "0.FDO/Data": "self" },
{ "0.FDO/Name": "FDO_validation_strategy_for_combination" },
{ "0.FDO/Description": "An attribute can use several validation mechanisms simultaneously. Which validation mechanism applies depends on the profile(s) used by the attribute definition: 0.FDO/AttributeDefSyntax, 0.FDO/AttributeDefComb, 0.FDO/AttributeDefUnion, 0.FDO/AttributeDefProfileRef, and 0.FDO/AttributeDefAttrRef. If several of these profiles are used by one attribute definition, 0.FDO/ValidationStrategyForCombination determines whether at least one validation mechanism must apply (anyof), or all of them (allof). The default is allof, in which case the attribute can be omitted." },
{ "0.FDO/Cardinality": "0..1" },
{ "0.FDO/PrimitiveDataType": "string" },
{ "0.FDO/Whitelist": "anyof" },
{ "0.FDO/Whitelist": "allof" }
]
}