# ::id SSC-03-01
# ::snt Of the objects that orbit the Sun indirectly—the natural satellites—two are larger than the smallest planet, Mercury, and one more almost equals it in size.

@base <https://tetras-libre.fr/mars/ssc> .

@prefix : <https://tetras-libre.fr/mars/ssc#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .


# ::predefined-property :has-part :part-of :manner

:part-of a owl:ObjectProperty .

:has-part
	a owl:ObjectProperty ;
	owl:inverseOf :part-of .

:manner a owl:DatatypeProperty .


# ::comment "Of the objects that orbit the Sun indirectly ..."

:object a rdfs:Class .

:orbit a owl:ObjectProperty .

:sun a owl:individual .

:object-orbit-sun a rdfs:Class ;
	rdfs:subClassOf :object ;
	rdfs:subClassOf [
		a owl:Restriction ;
		owl:onProperty :orbit ;
		owl:hasValue :sun
	] .

:object-orbit-sun-not-directly a rdfs:Class ;
	rdfs:subClassOf :celestial-object-orbit-sun ;
	rdfs:subClassOf [
		a owl:Restriction ;
		owl:onProperty :not-direct-orbit ;
		owl:hasValue :sun
	] .

:direct-orbit a owl:ObjectProperty ;
	rdfs:subPropertyOf :orbit ;
	:manner "direct" .

:not-direct-orbit a owl:ObjectProperty ;
	owl:inverseOf :direct-orbit .


# ::comment "... —the natural satellites— ..."

:satellite a rdfs:Class .

:natural-satellite
	a rdfs:Class ;
	rdfs:subClassOf :satellite .

:mean a owl:ObjectProperty .

:object-orbit-sun-not-directly
	rdfs:subClassOf [
		a owl:Restriction ;
		owl:onProperty :mean ;
		owl:hasValue :natural-satellite
	] .


# ::comment "... the smallest planet, Mercury ..."

:planet a rdfs:Class .

:most-small-planet
	a rdfs:Class ;
	rdfs:subClassOf :planet .

:Mercury
	a owl:individual ;
	a :most-small-planet .

# ::comment "one, two objects ..."

:object-x
	a owl:individual ;
	a object-orbit-sun-not-directly .

:object-y
	a owl:individual ;
	a object-orbit-sun-not-directly .

:object-z
	a owl:individual ;
	a object-orbit-sun-not-directly .


# ::comment "two are larger than the smallest planet ..."

:large a owl:objectProperty .

:more-large
	a owl:ObjectProperty ;
	rdfs:subPropertyOf :equal .

:object-x :more-large :Mercury.

:object-y :more-large :Mercury.


# ::comment "one more almost equals it in size ..."

:equal a owl:objectProperty .

:almost-more-equal
	a owl:ObjectProperty ;
	rdfs:subPropertyOf :equal .

:object-z :almost-more-equal :Mercury.