Topological aspects
2 mutually separated objects aspect

@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:2-SeparateAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:SomeValuesFrom(_:exp1, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:SomeValuesFrom(_:exp2, ?TopoSpaceRelation, ?Object2Class),
o-owl-ax:DisjointClasses((_:exp1, _:exp2))
} .
Coming soon.
n mutually separated objects aspect
The generalization of the 2 mutually separated objects aspect.
@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
:n-SeparateAspect [ ! NEList<owl:Class> ?ObjectClasses, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
cross | o-rdf:Type(++?ObjectClasses, owl:Class),
cross | o-owl-ax:SubClassOf(++?ObjectClasses, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:ObjectIntersectionOf(_:intersection, ?ObjectClasses),
o-owl-re:SomeValuesFrom(_:restriction, ?TopoSpaceRelation, _:intersection),
o-owl-ax:SubClassOf(_:restriction, owl:Nothing)
} .
Coming soon.
2 objects touching wihtout overlap aspect

@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:2-TouchingAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:AllValuesFrom(_:interior1, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:AllValuesFrom(_:interior2, ?TopoSpaceRelation, ?Object2Class),
o-owl-ax:DisjointClasses((_:interior1, _:interior2)),
o-owl-re:SomeValuesFrom(_:interior_border1, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:SomeValuesFrom(_:interior_border2, ?TopoSpaceRelation, ?Object2Class),
o-owl-re:ObjectIntersectionOf(_:border_intersection, (_:interior_border1, _:interior_border2)),
o-rdf:Type(_:intersectionInstance , _:border_intersection)
} .
Coming soon.
object inclusion aspect

@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix swrl: <http://www.w3.org/2003/11/swrl#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:2-InclusionAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:AllValuesFrom(_:exp1, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:AllValuesFrom(_:exp2, ?TopoSpaceRelation, ?Object2Class),
o-owl-ax:SubClassOf(_:exp2, _:exp1)
} .
Coming soon.
proper object inclusion aspect
Similar to the object inclusion aspect but with proper inclusion.
@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:2-ProperInclusionAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:AllValuesFrom(_:exp1, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:AllValuesFrom(_:exp2, ?TopoSpaceRelation, ?Object2Class),
o-owl-ax:SubClassOf(_:exp2, _:exp1),
ottr:Triple(_:not_exp2, owl:complementOf, _:exp2),
o-owl-re:ObjectIntersectionOf(_:difference, (_:exp1, _:not_exp2)),
o-rdf:Type(_:differenceInstance , _:differnce)
} .
Coming soon.
2 overlapping objects aspect
@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix util: <http://odp.aspectowl.xyz/util/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix swrl: <http://www.w3.org/2003/11/swrl#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:2-OverlapAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:AllValuesFrom(_:exp1, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:AllValuesFrom(_:exp2, ?TopoSpaceRelation, ?Object2Class)
} .
Coming soon.
pairwise overlapping objects aspect
Instanitations of this template represent three pairwise overlapping objects.
It may be extended to accomodate more than three objects.

@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix util: <http://odp.aspectowl.xyz/util/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix swrl: <http://www.w3.org/2003/11/swrl#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:3-PairwiseOverlapAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:Class ?Object3Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-rdf:Type(?Object3Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object3Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:SomeValuesFrom(_:exp1_some, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:SomeValuesFrom(_:exp2_some, ?TopoSpaceRelation, ?Object2Class),
o-owl-re:SomeValuesFrom(_:exp3_some, ?TopoSpaceRelation, ?Object3Class),
o-owl-re:ObjectIntersectionOf(_:intersection_all, (_:exp1_some, _:exp2_some, _:exp3_some)),
o-owl-ax:SubClassOf(_:intersection_all, owl:Nothing),
o-owl-re:AllValuesFrom(_:exp1_all, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:AllValuesFrom(_:exp2_all, ?TopoSpaceRelation, ?Object2Class),
o-owl-re:AllValuesFrom(_:exp3_all, ?TopoSpaceRelation, ?Object3Class),
o-owl-re:ObjectIntersectionOf(_:intersection_12, (_:exp1_all, _:exp2_all)),
o-owl-re:ObjectIntersectionOf(_:intersection_23, (_:exp2_all, _:exp3_all)),
o-owl-re:ObjectIntersectionOf(_:intersection_13, (_:exp1_all, _:exp3_all)),
o-rdf:Type(_:intersection_12_instance , _:intersection_12),
o-rdf:Type(_:intersection_23_instance , _:intersection_23),
o-rdf:Type(_:intersection_13_instance , _:intersection_13)
} .
Coming soon.
mutually overlapping objects aspect
Instanitations of this template represent three mutually overlapping objects.
It may be extended to accomodate more than three objects.

@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix util: <http://odp.aspectowl.xyz/util/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix swrl: <http://www.w3.org/2003/11/swrl#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:3-MutualOverlapAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:Class ?Object3Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-rdf:Type(?Object3Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object3Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:SomeValuesFrom(_:exp1_some, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:SomeValuesFrom(_:exp2_some, ?TopoSpaceRelation, ?Object2Class),
o-owl-re:SomeValuesFrom(_:exp3_some, ?TopoSpaceRelation, ?Object3Class),
o-owl-re:ObjectIntersectionOf(_:intersection_all, (_:exp1_some, _:exp2_some, _:exp3_some)),
o-rdf:Type(_:intersection_all_instance, _:intersection_all)
} .
Coming soon.
pairwise and mutually overlapping objects aspect
Instanitations of this template represent three pairwise and mutually overlapping objects.
It may be extended to accomodate more than three objects.

@prefix : <http://odp.aspectowl.xyz/aspect/topological/0.1#> .
@prefix util: <http://odp.aspectowl.xyz/util/0.1#> .
@prefix aspect-owl: <http://ontology.aspectowl.xyz/0.6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix swrl: <http://www.w3.org/2003/11/swrl#> .
@prefix ottr: <http://ns.ottr.xyz/0.4/> .
@prefix o-owl-re: <http://tpl.ottr.xyz/owl/restriction/0.1/> .
@prefix o-owl-ax: <http://tpl.ottr.xyz/owl/axiom/0.1/> .
@prefix o-rdf: <http://tpl.ottr.xyz/rdf/0.1/> .
:3-PairwiseMutualOverlapAspect [ ! owl:Class ?Object1Class, ! owl:Class ?Object2Class, ! owl:Class ?Object3Class, ! owl:ObjectProperty ?TopoSpaceRelation ] :: {
o-rdf:Type(?Object1Class, owl:Class),
o-rdf:Type(?Object2Class, owl:Class),
o-rdf:Type(?Object3Class, owl:Class),
o-owl-ax:SubClassOf(?Object1Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object2Class, aspect-owl:TopologicalAspect),
o-owl-ax:SubClassOf(?Object3Class, aspect-owl:TopologicalAspect),
o-rdf:Type(?TopoSpaceRelation , owl:ObjectProperty),
o-owl-re:AllValuesFrom(_:exp1, ?TopoSpaceRelation, ?Object1Class),
o-owl-re:AllValuesFrom(_:exp2, ?TopoSpaceRelation, ?Object2Class)
} .
Coming soon.