w3c-lbd-cg / bot

Building Topology Ontology
https://w3id.org/bot
53 stars 15 forks source link

Simple property to link an element/zone to its geometry? #37

Closed maximelefrancois86 closed 6 years ago

maximelefrancois86 commented 6 years ago

We could define a simple Datatype Property to link a bot:Zone or bot:Element to its geometry

bot:hasSimpleGeometry a owl:DatatypeProperty ;
  rdfs:domainIncludes bot:Zone , bot:Element .

that datatype property could link any bot:Zone or bot:Element to a literal that encodes its geometry. This could be left open and be defined as:

simpleGeometry as a geo:wktLiteral

<site> a bot:Site ;
  bot:hasSimpleGeometry """POLYGON((-77.050125 38.892086, -77.039482 38.892036, -77.039482 38.895393,
-77.033669 38.895508, -77.033585 38.892052, -77.031906 38.892086, -77.031883 38.887474, -
77.050232 38.887142, -77.050125 38.892086 ))"""^^geo:wktLiteral.

simpleGeometry as a Virtual Reality Markup Language

<element> a bot:Element ;
  bot:hasSimpleGeometry """#VRML V2.0 utf8
Shape {
  appearance Appearance {
    material Material {
      diffuseColor  .8 0 .2
      shininess .7
    }
  }
  geometry Cylinder {
    radius 1
    height 8
    side FALSE
    top TRUE
    bottom FALSE
  }
}"""^^<https://www.iana.org/assignments/media-types/model/vrml>
pipauwel commented 6 years ago

LDAC2018: we can add the following properties to BOT:

bot:hasZeroPoint a owl:DatatypeProperty ; schema:domainIncludes bot:Site .

bot:hasSimpleGeometry a owl:DatatypeProperty ; schema:domainIncludes bot:Zone , bot:Element .

bot:hasComplexGeometry a owl:ObjectProperty ; schema:domainIncludes bot:Zone , bot:Element .

maximelefrancois86 commented 6 years ago

What about using transformation matrices:

bot:CoordinateSystemPositioning a owl:Class

bot:baseCoordinateSystem a owl:ObjectProperty ;
  rdfs:domain bot:CoordinateSystemPositioning ;
  schema:rangeIncludes bot:Zone, bot:Element .

bot:relativeCoordinateSystem a owl:ObjectProperty ;
  rdfs:domain bot:CoordinateSystemPositioning ;
  schema:rangeIncludes bot:Zone, bot:Element .

bot:transformationMatrix a owl:DatatypeProperty; 
domain bot:CoordinateSystemPositioning ;
range cdt:4dmatrix .
GeorgFerdinandSchneider commented 6 years ago

I like the idea but would like to stress the fact that BOT should be kept minimal.

Why not follow a modular paradigm such as SEAS, SAREF etc.?

geom4bot:hasSimpleGeometry a owl:DatatypeProperty ;
  rdfs:domainIncludes bot:Zone , bot:Element .
pipauwel commented 6 years ago

LDAC2018: let's keep the minimal approach for now (hasSimpleGeometry added), and keep the transformation matrices and coordinatesystems out for now (to be handled in the group that works on geometry, outside of this community group).