-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathomg.jsonld
435 lines (435 loc) · 19.7 KB
/
omg.jsonld
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
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
{
"@graph" : [ {
"@id" : "_:b1",
"@type" : "foaf:Person",
"name" : "Pieter Pauwels"
}, {
"@id" : "_:b2",
"@type" : "foaf:Person",
"name" : "Mathias Bonduel"
}, {
"@id" : "_:b7",
"@type" : "foaf:Person",
"name" : "Anna Wagner"
}, {
"@id" : "schema:domainIncludes",
"@type" : "owl:AnnotationProperty"
}, {
"@id" : "prov:wasDerivedFrom",
"@type" : "owl:ObjectProperty"
}, {
"@id" : "foaf:Person",
"@type" : "owl:Class"
}, {
"@id" : "foaf:name",
"@type" : "owl:AnnotationProperty"
}, {
"@id" : "https://w3id.org/omg",
"@type" : "owl:Ontology",
"creator" : [ "https://www.researchgate.net/profile/Pieter_Pauwels", "https://www.researchgate.net/profile/Anna_Wagner13", "https://www.researchgate.net/profile/Mathias_Bonduel" ],
"description" : {
"@language" : "en",
"@value" : "The Ontology for Managing Geometry (OMG) is an ontology for describing geometry descriptions of objects. It provides means to support the application of multiple geometry descriptions of the same object as well as the description of the geometry evolution over time. The OMG is based the concepts introduced in the Ontology for Property Management (OPM) ontology. \r\n\r\nThis ontology was created within the research project SCOPE, funded by the German Federal Ministry for Economic Affairs and Energy (BMWi).\r\n\r\nThe initial version of the ontology (v0.1) is documented in:\r\nWagner, Anna, Bonduel, Mathias, Pauwels, Pieter & Rüppel, Uwe(2019). Relating Geometry Descriptions to its Derivatives on the Web. In Proceedings of the European Conference on Computing in Construction (EC3 2019). Chania, Greece. DOI: 10.35490/EC3.2019.146"
},
"issued" : "2018-11-28",
"title" : {
"@language" : "en",
"@value" : "OMG: Ontology for Managing Geometry"
},
"preferredNamespacePrefix" : "omg",
"preferredNamespaceUri" : "https://w3id.org/omg",
"priorVersion" : "https://w3id.org/omg/0-2",
"versionIRI" : "https://w3id.org/omg/0-3",
"versionInfo" : "0.3"
}, {
"@id" : "omg:CurrentGeometryState",
"@type" : "owl:Class",
"comment" : {
"@language" : "en",
"@value" : "A current geometry state classifies the most current - and thereby valid - geometry state. Which state is most current will be defined by the added timestamp using the prov:generatedAtTime relation."
},
"label" : [ {
"@language" : "en",
"@value" : "Current geometry state"
}, {
"@language" : "de",
"@value" : "Aktueller Geometrie Status"
} ],
"subClassOf" : "omg:GeometryState"
}, {
"@id" : "omg:Geometry",
"@type" : "owl:Class",
"comment" : {
"@language" : "en",
"@value" : "Abstract node for geometry that should not contain geometry descriptions (neither RDF-based or text-based). This node can be used to attach additional information to the information as author, time of creation, geometry context or dependencies with other geometry descriptions as transformations, complementations or derivations. By creating subclasses of this class for specific types of geometry descriptions (e.g. OBJ, GEOM, glTF), more informational value can be added and used in querying for specific geometry description formats."
},
"label" : [ {
"@language" : "en",
"@value" : "Geometry"
}, {
"@language" : "de",
"@value" : "Geometrie"
} ],
"subClassOf" : "owl:Thing",
"disjointWith" : [ "seas:Property", "omg:GeometryState", "omg:GeometryContext" ]
}, {
"@id" : "omg:GeometryContext",
"@type" : "owl:Class",
"comment" : {
"@language" : "en",
"@value" : "Context of one (or multiple) geometry descriptions. A context can help extracting relevant geometry descriptions by connecting those to a specific shared context. Geometric contexts can be views of planners, planning stages (versions), or individually created contexts."
},
"label" : [ {
"@language" : "en",
"@value" : "Geometry context"
}, {
"@language" : "de",
"@value" : "Geometriekontext"
} ],
"subClassOf" : "owl:Thing",
"disjointWith" : "omg:GeometryState"
}, {
"@id" : "omg:GeometryState",
"@type" : "owl:Class",
"comment" : {
"@language" : "en",
"@value" : "A geometry state is an evaluation holding the geometry description and metadata about a geometry that was true for the given time. \r\nIn case of geometry states, changing geometric properties does not cause the need for a new geometry state as long as the property was changed using the OPM concepts. If this is not the case, a copy of the now valid graph must be created and attached to a new geometry state. If an object within the geometry graph is changed (e.g. changing the primitive \"Box\" into a primitive \"Sphere\"), the old primitive (\"Box\") should be classified as opm:Deleted and the new primitive (\"Sphere\") should be added to the geometry graph in the correct place. The new geometry state should then be connected to any object of the geometry graph that is not opm:Deleted using the omg:containsGeometryObject relation.\r\nMetadata of a geometry state must as a minimum be the time of generation stated by prov:generatedAtTime, but preferably also a prov:wasAttributedTo reference to the agent who created the state. In case properties are changed using the OPM concepts, the most current time of generation and agent who created the state will be determined using the omg:containsPropertyState relation.\r\nDerived geometry descriptions are also stored as states as these change when the base geometry changes."
},
"label" : [ {
"@language" : "en",
"@value" : "Geometry state"
}, {
"@language" : "de",
"@value" : "Geometriestatus"
} ],
"seeAlso" : "opm:PropertyState",
"subClassOf" : "owl:Thing",
"disjointWith" : "opm:PropertyState"
}, {
"@id" : "omg:complementsGeometry",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between one geometry and another that is composed by the first. E.g. a point cloud of a columns laser scan in a high geometric detail complementing a simplified CSG geometry of the same column. Both geometry descriptions are closely related, but not directly derived from each other. The complementing geometry description may also just depict a small part of the entire geometry (e.g. the column header)."
},
"domain" : "omg:Geometry",
"label" : {
"@language" : "en",
"@value" : "complements geometry"
},
"range" : "omg:Geometry"
}, {
"@id" : "omg:containsGeometryObject",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between a geometry state and any object (node) of the related RDF-based geometry description that is relevant for this specific geometry state (not including deleted objects)."
},
"domain" : "omg:GeometryState",
"label" : {
"@language" : "en",
"@value" : "contains geometry object"
}
}, {
"@id" : "omg:containsPropertyState",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between a geometry state and a relevant property state. Any property that belongs to the geometry state's related geometry objects (using the omg:containsGeometryObject relation) can be a host for relevant property states. \r\nThis relation can be inferred, as long as the connection to the geometry object (omg:containsGeometryObject), its properties (seas:hasProperty) and the considered property state (opm:hasPropertyState) are modelled correctly."
},
"domain" : "omg:GeometryState",
"label" : {
"@language" : "en",
"@value" : "contains property state"
},
"range" : "opm:PropertyState",
"propertyChainAxiom" : {
"@list" : [ "omg:containsGeometryObject", "https://w3id.org/seas/hasProperty", "opm:hasPropertyState" ]
}
}, {
"@id" : "omg:hasComplexGeometryDescription",
"@type" : "owl:ObjectProperty",
"domainIncludes" : [ "omg:GeometryState", "omg:Geometry" ],
"comment" : {
"@language" : "en",
"@value" : "Relation between an object, a geometry, or a geometry state and its RDF-based geometry description. If more than one geometry description should be added to an object, the relation omg:hasGeometry to a new individual of the type omg:Geometry should be used for each geometry description. This step is necessary to allow interconnections between the geometry descriptions regarding their derivation or complementation for easier upkeep of data integrity. The introduction of subproperties of this property for specific geometry descriptions (e.g. OntoBREP, GEOM, OntoSTEP) may ease querying for wanted geometry description formats."
},
"label" : {
"@language" : "en",
"@value" : "has complex geometry description"
}
}, {
"@id" : "omg:hasGeometry",
"@type" : [ "owl:ObjectProperty", "owl:InverseFunctionalProperty" ],
"comment" : {
"@language" : "en",
"@value" : "Relation between any object and its geometric representation. An object may have multiple geometric representations, while one geometric represenation may always just be connected to one object (inverse functional)."
},
"label" : {
"@language" : "en",
"@value" : "has geometry"
},
"range" : "omg:Geometry"
}, {
"@id" : "omg:hasGeometryContext",
"@type" : "owl:ObjectProperty",
"domainIncludes" : [ "omg:GeometryState", "omg:Geometry" ],
"comment" : {
"@language" : "en",
"@value" : "Relation between a geometry or geometry state and its geometric context. A singular geometry may have multiple contexts, just as one context can be used for different geometries (of different objects)"
},
"label" : {
"@language" : "en",
"@value" : "has geometry context"
},
"range" : "omg:GeometryContext"
}, {
"@id" : "omg:hasGeometryState",
"@type" : [ "owl:ObjectProperty", "owl:InverseFunctionalProperty" ],
"comment" : {
"@language" : "en",
"@value" : "Relation between a geometry and one of its geometry states. For each revision in an RDF-based geometry descriptions where changes were made to the graph nodes and not the properties, a new state must be defined to capture the new graph. This property is inverse functional as one geometry state can only belong to one geometry."
},
"domain" : "omg:Geometry",
"label" : {
"@language" : "en",
"@value" : "has geometry state"
},
"range" : "omg:GeometryState",
"seeAlso" : "opm:hasPropertyState"
}, {
"@id" : "omg:hasInferredPropertyState",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between a property and its property state that has been inferred from the omg:isExplicitlyDerivedFrom relation. This relation will be inferred by the a chain axiom for every property that is derived from another (geometric) property (using omg:isExplicitlyDerivedFrom) which in turn has its own property state connected with the opm:hasPropertyState relation."
},
"label" : {
"@language" : "en",
"@value" : "has inferred property state"
},
"seeAlso" : "opm:hasPropertyState",
"subPropertyOf" : "opm:hasPropertyState",
"propertyChainAxiom" : {
"@list" : [ "omg:isExplicitlyDerivedFrom", "opm:hasPropertyState" ]
}
}, {
"@id" : "omg:hasReferencedGeometryId",
"@type" : "owl:DatatypeProperty",
"comment" : {
"@language" : "en",
"@value" : "Property to add an identifier to a referencing geometry that can be used to identify the referencing geometry in its origin's complete geometry descritpion."
},
"domain" : "omg:Geometry",
"label" : {
"@language" : "en",
"@value" : "has referenced geometry identifier"
}
}, {
"@id" : "omg:hasSimpleGeometryDescription",
"@type" : "owl:DatatypeProperty",
"domainIncludes" : [ "omg:GeometryState", "omg:Geometry" ],
"comment" : {
"@language" : "en",
"@value" : "Datatype property to connect a simple (non RDF-based), text-based or file-based geometry description to an object, geometry or geometry state. In case the geometry description is text-based or in a binary file format, it can be directly added to this property, if it is a file-based geometry description, the URI linking to the file should be added to this property. Should multiple geometries be added to the object, the omg:Geometry class with its relation (omg:hasGeometry) or even geometry states (omg:GeometryState and omg:hasGeometryState) should be introduced for each geometry resp. geometry version."
},
"label" : {
"@language" : "en",
"@value" : "has simple geometry description"
}
}, {
"@id" : "omg:isDerivedFromGeometry",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between two geometry descriptions where the first geometry can be derived from the second. It is possible for a geometry to be derived from multiple sources, as well as to model a bi-directional derivation between two geometries by using this relation."
},
"domain" : "omg:Geometry",
"label" : {
"@language" : "en",
"@value" : "is derived from geometry"
},
"range" : "omg:Geometry",
"subPropertyOf" : "prov:wasDerivedFrom"
}, {
"@id" : "omg:isDerivedFromGeometryState",
"@type" : [ "owl:ObjectProperty", "owl:FunctionalProperty" ],
"comment" : {
"@language" : "en",
"@value" : "Relation between two geometry states where the first (domain) has been converted from the second (range). A geometry state can only be converted from one other geometry state."
},
"domain" : "omg:GeometryState",
"label" : {
"@language" : "en",
"@value" : "is derived from geometry state"
},
"range" : "omg:GeometryState",
"subPropertyOf" : "prov:wasDerivedFrom"
}, {
"@id" : "omg:isExplicitlyDerivedFrom",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between two properties, where the first property is explicitly derived from the other. This means that the first property will always have the same value as the second. Cases where this relation can be used are if an object's geometry is modelled RDF-based and contains a property defining e.g. the height of the object. Then the non-geometric property for height should be explicitly derived from the geometric property to ensure data integrity."
},
"domain" : "seas:Property",
"label" : {
"@language" : "en",
"@value" : "is explicitly derived from"
},
"range" : "seas:Property",
"subPropertyOf" : "prov:wasDerivedFrom"
}, {
"@id" : "omg:isImplicitlyDerivedFrom",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between a property and a geometry, where the property is implicitly derived from the geometry (e.g. properties for volumes or areas). This relation can be used to find inconsistencies, e.g. if the property has been changed while the geometry has not and vice versa."
},
"domain" : "seas:Property",
"label" : {
"@language" : "en",
"@value" : "is implicitly derived from"
},
"range" : "omg:Geometry",
"subPropertyOf" : "prov:wasDerivedFrom"
}, {
"@id" : "omg:isPartOfGeometry",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between a referencing geometry and its origin geometry. The origin geometry contains a large geometry description, including the reference geometry's description. The reference geometry contains only its identifier within its origin geometry description."
},
"domain" : "omg:Geometry",
"label" : {
"@language" : "en",
"@value" : "is part of geometry "
},
"range" : "omg:Geometry",
"subPropertyOf" : "prov:wasDerivedFrom"
}, {
"@id" : "omg:transformsGeometry",
"@type" : "owl:ObjectProperty",
"comment" : {
"@language" : "en",
"@value" : "Relation between one geometry and another one, where the first is a transformation of the second. This might be used when placing multiple objects of the same type and geometry within the same graph (e.g. multiple chairs into a building model). The first geometry will only consist of a transformation or tanslation matrix."
},
"domain" : "omg:Geometry",
"label" : {
"@language" : "en",
"@value" : "transforms geometry"
},
"range" : "omg:Geometry",
"subPropertyOf" : "prov:wasDerivedFrom"
}, {
"@id" : "opm:PropertyState",
"@type" : "owl:Class"
}, {
"@id" : "opm:hasPropertyState",
"@type" : "owl:ObjectProperty"
}, {
"@id" : "seas:Property",
"@type" : "owl:Class"
}, {
"@id" : "https://w3id.org/seas/hasProperty",
"@type" : "owl:ObjectProperty"
} ],
"@context" : {
"rest" : {
"@id" : "http://www.w3.org/1999/02/22-rdf-syntax-ns#rest",
"@type" : "@id"
},
"first" : {
"@id" : "http://www.w3.org/1999/02/22-rdf-syntax-ns#first",
"@type" : "@id"
},
"label" : {
"@id" : "http://www.w3.org/2000/01/rdf-schema#label"
},
"comment" : {
"@id" : "http://www.w3.org/2000/01/rdf-schema#comment"
},
"domainIncludes" : {
"@id" : "http://schema.org/domainIncludes",
"@type" : "@id"
},
"versionInfo" : {
"@id" : "http://www.w3.org/2002/07/owl#versionInfo"
},
"title" : {
"@id" : "http://purl.org/dc/terms/title"
},
"versionIRI" : {
"@id" : "http://www.w3.org/2002/07/owl#versionIRI",
"@type" : "@id"
},
"creator" : {
"@id" : "http://purl.org/dc/terms/creator",
"@type" : "@id"
},
"description" : {
"@id" : "http://purl.org/dc/terms/description"
},
"preferredNamespacePrefix" : {
"@id" : "http://purl.org/vocab/vann/preferredNamespacePrefix"
},
"preferredNamespaceUri" : {
"@id" : "http://purl.org/vocab/vann/preferredNamespaceUri",
"@type" : "@id"
},
"priorVersion" : {
"@id" : "http://www.w3.org/2002/07/owl#priorVersion",
"@type" : "@id"
},
"issued" : {
"@id" : "http://purl.org/dc/terms/issued",
"@type" : "http://www.w3.org/2001/XMLSchema#date"
},
"subClassOf" : {
"@id" : "http://www.w3.org/2000/01/rdf-schema#subClassOf",
"@type" : "@id"
},
"subPropertyOf" : {
"@id" : "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
"@type" : "@id"
},
"range" : {
"@id" : "http://www.w3.org/2000/01/rdf-schema#range",
"@type" : "@id"
},
"domain" : {
"@id" : "http://www.w3.org/2000/01/rdf-schema#domain",
"@type" : "@id"
},
"name" : {
"@id" : "http://xmlns.com/foaf/0.1/name"
},
"disjointWith" : {
"@id" : "http://www.w3.org/2002/07/owl#disjointWith",
"@type" : "@id"
},
"seeAlso" : {
"@id" : "http://www.w3.org/2000/01/rdf-schema#seeAlso",
"@type" : "@id"
},
"propertyChainAxiom" : {
"@id" : "http://www.w3.org/2002/07/owl#propertyChainAxiom",
"@type" : "@id"
},
"schema" : "http://schema.org/",
"owl" : "http://www.w3.org/2002/07/owl#",
"bot" : "https://w3id.org/bot#",
"xsd" : "http://www.w3.org/2001/XMLSchema#",
"omg" : "https://w3id.org/omg#",
"rdfs" : "http://www.w3.org/2000/01/rdf-schema#",
"opm" : "https://w3id.org/opm#",
"seas" : "https://w3id.org/seas/#",
"rdf" : "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"xml" : "http://www.w3.org/XML/1998/namespace",
"spin" : "http://spinrdf.org/spin#",
"dcterms" : "http://purl.org/dc/terms/",
"vann" : "http://purl.org/vocab/vann/",
"prov" : "http://www.w3.org/ns/prov#",
"foaf" : "http://xmlns.com/foaf/0.1/"
}
}