@prefix gist: <https://ontologies.semanticarts.com/gist/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://ontologies.semanticarts.com/o/gistCore>
	a owl:Ontology ;
	rdfs:label "gistCore"^^xsd:string ;
	rdfs:comment "Gist is a minimalist upper ontology created by Semantic Arts"^^xsd:string ;
	owl:versionIRI <https://ontologies.semanticarts.com/o/gistCoreX.x.x> ;
	gist:license "https://creativecommons.org/licenses/by-sa/3.0/"^^xsd:string ;
	.

gist:Account
	a owl:Class ;
	rdfs:label "Account"^^xsd:string ;
	rdfs:comment "An agreement having a balance, as in a bank account, or credit card account, or Accounts Receivable account."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Agreement
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMagnitude ;
				owl:someValuesFrom gist:Balance ;
			]
		) ;
	] ;
	.

gist:Actuator
	a owl:Class ;
	rdfs:subClassOf gist:Equipment ;
	rdfs:label "Actuator"^^xsd:string ;
	rdfs:comment "A device that can affect the real world via a message interface"^^xsd:string ;
	.

gist:Address
	a owl:Class ;
	rdfs:subClassOf gist:Content ;
	rdfs:label "Address"^^xsd:string ;
	rdfs:comment "A reference to a place (real or virtual) that can be located by some routing algorithm, and where messages or things can be sent to or retrieved from. E.g. PO Box or URL to a PDF file."^^xsd:string ;
	.

gist:Agreement
	a owl:Class ;
	rdfs:label "Agreement"^^xsd:string ;
	rdfs:comment "Something which two or more People or Organizations mutually commit to do."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Commitment
			[
				a owl:Restriction ;
				owl:onProperty gist:hasParty ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Organization
						gist:Person
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasDirectPart ;
				owl:onClass gist:Obligation ;
				owl:minQualifiedCardinality "2"^^xsd:nonNegativeInteger ;
			]
		) ;
	] ;
	.

gist:Area
	a owl:Class ;
	rdfs:label "Area"^^xsd:string ;
	rdfs:comment "A measurement of two-dimensional space."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:AreaUnit ;
			]
		) ;
	] ;
	.

gist:AreaUnit
	a owl:Class ;
	rdfs:label "Area Unit"^^xsd:string ;
	rdfs:comment "A unit of two-dimensional area, such as square inches or hectares."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ProductUnit
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplicand ;
				owl:onClass gist:DistanceUnit ;
				owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplier ;
				owl:onClass gist:DistanceUnit ;
				owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			]
		) ;
	] ;
	.

gist:Artifact
	a owl:Class ;
	rdfs:subClassOf [
		a owl:Restriction ;
		owl:onProperty gist:hasGoal ;
		owl:someValuesFrom gist:Function ;
	] ;
	rdfs:label "Artifact"^^xsd:string ;
	rdfs:comment "An intentional, person-made thing, which could be physical or content"^^xsd:string ;
	.

gist:Aspect
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Aspect"^^xsd:string ;
	rdfs:comment "A very general term for the characteristic of something that is being measured.  E.g., property (height) or a process (cycle time) or a behavior (loyalty)."^^xsd:string ;
	.

gist:Balance
	a owl:Class ;
	rdfs:label "Balance"^^xsd:string ;
	rdfs:comment "An amount decremented or incremented by a series of transactions."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:affectedBy ;
				owl:someValuesFrom gist:Transaction ;
			]
		) ;
	] ;
	.

gist:BaseUnit
	a owl:Class ;
	rdfs:subClassOf gist:SimpleUnitOfMeasure ;
	rdfs:label "Base Unit"^^xsd:string ;
	rdfs:comment "A primitive unit that cannot be decomposed into other units. It can be converted from one measurement system to another.  The base units in gist are the seven primitive units from the System Internationale (SI): (meter, second, kilogram, ampere, kelvin, mole, candela), plus three convenience ones: each. bit and usDollar."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:oneOf (
			gist:_USDollar
			gist:_ampere
			gist:_bit
			gist:_candela
			gist:_each
			gist:_kelvin
			gist:_kilogram
			gist:_meter
			gist:_mole
			gist:_second
		) ;
	] ;
	.

gist:Behavior
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Behavior"^^xsd:string ;
	rdfs:comment "A way of categorizing events.  E.g., differentiating drilling versus cutting."^^xsd:string ;
	.

gist:Building
	a owl:Class ;
	rdfs:subClassOf
		gist:Artifact ,
		gist:Landmark
		;
	rdfs:label "Building"^^xsd:string ;
	rdfs:comment "A man-made structure for dwelling or working."^^xsd:string ;
	.

gist:BuildingAddress
	a owl:Class ;
	rdfs:subClassOf
		gist:Address ,
		[
			a owl:Restriction ;
			owl:onProperty gist:streetAddressOf ;
			owl:someValuesFrom gist:Building ;
		]
		;
	rdfs:label "Building Address"^^xsd:string ;
	rdfs:comment "An address to which you can send mail, or that you could find in the physical world."^^xsd:string ;
	.

gist:BundledCatalogItem
	a owl:Class ;
	rdfs:label "Bundled Catalog Item"^^xsd:string ;
	rdfs:comment "Any combination of descriptions of things offered together.  Could be a kit (several parts offered together), but could also be a product plus a warranty."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:CatalogItem
			[
				a owl:Restriction ;
				owl:onProperty gist:hasDirectPart ;
				owl:someValuesFrom gist:CatalogItem ;
			]
		) ;
	] ;
	.

gist:CatalogItem
	a owl:Class ;
	rdfs:subClassOf gist:Specification ;
	rdfs:label "Catalog Item"^^xsd:string ;
	rdfs:comment
		"A description of a product or service to be delivered, given in a sufficient level of detail that a receiver could determine whether delivery constituted discharge of the obligation to deliver."^^xsd:string ,
		"NOTE: In short, an unambiguous characterization of what it is that a potential buyer is paying for."^^xsd:string
		;
	.

gist:Category
	a owl:Class ;
	rdfs:subClassOf [
		a owl:Restriction ;
		owl:onProperty gist:allocatedBy ;
		owl:someValuesFrom [
			a owl:Class ;
			owl:unionOf (
				gist:IntellectualProperty
				gist:Organization
				gist:Person
			) ;
		] ;
	] ;
	rdfs:label "Category"^^xsd:string ;
	rdfs:comment
		"A concept or label used to categorize other instances informally. Things that can be thought of as types are usually Categories."^^xsd:string ,
		"EXAMPLE: Tags used in folksonomies; formal definitions from other systems."^^xsd:string ,
		"NOTE: Often a 'bucket' can be modeled either as an owl:Class or as a gist:Category. Use the latter if you don't care much about the formal structure of the different types, or if there is a whole hierarchy of types that are going to be managed by a group separate from the ontology developers. The formal structure may be defined elsewhere and linked to, if necessary."^^xsd:string
		;
	.

gist:CoherentProductUnit
	a owl:Class ;
	rdfs:label "Coherent Product Unit"^^xsd:string ;
	rdfs:comment "A ratio unit whose numerator and denominator reduce to 1"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ProductUnit
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplicand ;
				owl:allValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:BaseUnit
						gist:CoherentProductUnit
						gist:CoherentRatioUnit
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplier ;
				owl:allValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:BaseUnit
						gist:CoherentProductUnit
						gist:CoherentRatioUnit
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:CoherentRatioUnit
	a owl:Class ;
	rdfs:label "Coherent Ratio Unit"^^xsd:string ;
	rdfs:comment "A ratio unit whose numerator and denominator reduce to 1"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:RatioUnit
			[
				a owl:Restriction ;
				owl:onProperty gist:denominator ;
				owl:allValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:BaseUnit
						gist:CoherentProductUnit
						gist:CoherentRatioUnit
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:numerator ;
				owl:allValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:BaseUnit
						gist:CoherentProductUnit
						gist:CoherentRatioUnit
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:CoherentUnit
	a owl:Class ;
	rdfs:label "Coherent Unit"^^xsd:string ;
	rdfs:comment
		"A unit that is expressed in units that have no conversions.  It may be a simple unit.  It may also be a product or ratio unit that bottoms out in simple units."^^xsd:string ,
		"Example:  a simple unit: kilogram"^^xsd:string ,
		"Example: the standard unit for acceleration is meters per square second (feet per square second  requires a conversion)"^^xsd:string ,
		"NOTE: coherent unit is the physics term for this, informally you might think of it as the standard unit for a given dimension."^^xsd:string ,
		"NOTE: in principle, the CoherentUnit for a ProductUnit or RatioUnit can be inferred by recursively decomposing the products and ratios into their respective CoherentUnits, bottoming out in SimpleUnits"^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:unionOf (
			gist:BaseUnit
			gist:CoherentProductUnit
			gist:CoherentRatioUnit
		) ;
	] ;
	.

gist:Collection
	a owl:Class ;
	rdfs:subClassOf [
		a owl:Restriction ;
		owl:onProperty gist:hasMember ;
		owl:someValuesFrom owl:Thing ;
	] ;
	rdfs:label "Collection"^^xsd:string ;
	rdfs:comment
		"Any identifiable grouping of instances.  For instance, a jury is a collection of people."^^xsd:string ,
		"EXAMPLES: A jury is a group of people,   a financial ledger is a collection of transaction entries; a route is an (ordered) collection of segments."^^xsd:string
		;
	.

gist:Commitment
	a owl:Class ;
	rdfs:label "Commitment"^^xsd:string ;
	rdfs:comment "An obligation (possibly unilateral)."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Class ;
				owl:unionOf (
					gist:Requirement
					gist:Restriction
				) ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:categorizedBy ;
				owl:someValuesFrom gist:DegreeOfCommitment ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:giver ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Organization
						gist:Person
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:Component
	a owl:Class ;
	rdfs:label "Component"^^xsd:string ;
	rdfs:comment "A component is an artifact that contributes to a system.  Could be a simple mechanical component, such as the float contributing to the toilet tank maintaining a constant level, or much more complex as in the internet of things."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Artifact
			[
				a owl:Restriction ;
				owl:onProperty gist:contributesTo ;
				owl:someValuesFrom gist:System ;
			]
		) ;
	] ;
	.

gist:ContemporaneousEvent
	a owl:Class ;
	rdfs:label "Contemporaneous Event"^^xsd:string ;
	rdfs:comment
		"An event that actually started after the present time.  When we record an end time it ceases to be contemporaneous"^^xsd:string ,
		"NOTE: All contemporaneous events eventually end and, due to the nature of the open world, we can never be sure that a contemporaneous event hasn't ended. As a result, this is really a contemporaneous and historical event."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Event
			[
				a owl:Restriction ;
				owl:onProperty gist:actualStart ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:actualEnd ;
				owl:onClass gist:TimeInstant ;
				owl:maxQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
			]
		) ;
	] ;
	.

gist:Content
	a owl:Class ;
	rdfs:subClassOf gist:Artifact ;
	rdfs:label "Content"^^xsd:string ;
	rdfs:comment "A document, program, image, etc.  (Categories are not content until they are written down.)"^^xsd:string ;
	owl:disjointWith
		gist:GeoPoint ,
		gist:GeoRegion ,
		gist:Organization ,
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:ContentExpression
	a owl:Class ;
	rdfs:subClassOf
		gist:Content ,
		[
			a owl:Restriction ;
			owl:onProperty gist:categorizedBy ;
			owl:someValuesFrom gist:GeneralMediaType ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:expressedIn ;
			owl:someValuesFrom gist:Language ;
		]
		;
	rdfs:label "Content Expression"^^xsd:string ;
	rdfs:comment "Intellectual Property reduced to text, audio etc.  If it contains text (written or spoken), it may be in a language."^^xsd:string ;
	.

gist:ContingentEvent
	a owl:Class ;
	rdfs:label "Contingent Event"^^xsd:string ;
	rdfs:comment "An event with a probability of happening in the future, and usually dependent upon some other event or condition."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Event
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMagnitude ;
				owl:someValuesFrom gist:Percentage ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:plannedEnd ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:plannedStart ;
				owl:someValuesFrom gist:TimeInstant ;
			]
		) ;
	] ;
	.

gist:ContingentObligation
	a owl:Class ;
	rdfs:label "Contingent Obligation"^^xsd:string ;
	rdfs:comment
		"An obligation that is not yet firm.  There is some contingent event, the occurrence of which will cause the obligation to become firm."^^xsd:string ,
		"NOTE: A contingent obligation might have a getter counterparty (as in the case of insurance); but it might not (as in the case of an offer)."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Commitment
			[
				a owl:Restriction ;
				owl:onProperty gist:giver ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Organization
						gist:Person
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:triggeredBy ;
				owl:someValuesFrom gist:Event ;
			]
		) ;
	] ;
	.

gist:Contract
	a owl:Class ;
	rdfs:label "Contract"^^xsd:string ;
	rdfs:comment "an Agreement which can be enforced by law"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Agreement
			[
				a owl:Restriction ;
				owl:onProperty gist:hasJurisdiction ;
				owl:someValuesFrom gist:GovernmentOrganization ;
			]
		) ;
	] ;
	.

gist:ContractTerm
	a owl:Class ;
	rdfs:subClassOf gist:Specification ;
	rdfs:label "Contract Term"^^xsd:string ;
	rdfs:comment "A specification of some aspect of a contract."^^xsd:string ;
	.

gist:ControlledVocabulary
	a owl:Class ;
	rdfs:label "Controlled Vocabulary"^^xsd:string ;
	rdfs:comment "A collection of terms approved and managed by some organization or person."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Collection
			[
				a owl:Restriction ;
				owl:onProperty gist:governedBy ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Organization
						gist:Person
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMember ;
				owl:someValuesFrom gist:Category ;
			]
		) ;
	] ;
	.

gist:Controller
	a owl:Class ;
	rdfs:label "Controller"^^xsd:string ;
	rdfs:comment "A device that takes messages or signals from a sensor and decides through algorithms whether and which actuator to fire via messages"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Equipment
			[
				a owl:Restriction ;
				owl:onProperty gist:categorizedBy ;
				owl:someValuesFrom gist:ControllerType ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:directs ;
				owl:someValuesFrom gist:Actuator ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:respondsTo ;
				owl:someValuesFrom gist:Sensor ;
			]
		) ;
	] ;
	.

gist:ControllerType
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Controller type"^^xsd:string ;
	.

gist:Count
	a owl:Class ;
	rdfs:label "Count"^^xsd:string ;
	rdfs:comment
		"A measure that involves countable amounts (?eaches? as well as cases, etc.). Can be decimal."^^xsd:string ,
		"NOTE: Count is not disjoint with all the other magnitudes, as there are some magnitudes that could conceivably be counted."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:CountingUnit ;
			]
		) ;
	] ;
	.

gist:CountingUnit
	a owl:Class ;
	rdfs:label "Counting Unit"^^xsd:string ;
	rdfs:comment "A unit of counting, especially ?each?, but also units such as dozens."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_each ;
			]
		) ;
	] ;
	.

gist:CountryGovernment
	a owl:Class ;
	rdfs:label "Country Government"^^xsd:string ;
	rdfs:comment "The geopolitical body that governs a geopolitical region recognized as a country."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:GovernmentOrganization
			[
				a owl:Restriction ;
				owl:onProperty gist:governs ;
				owl:someValuesFrom gist:GeoRegion ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:recognizedBy ;
				owl:someValuesFrom gist:Organization ;
			]
		) ;
	] ;
	.

gist:CurrencyUnit
	a owl:Class ;
	rdfs:label "Currency Unit"^^xsd:string ;
	rdfs:comment "A unit of money. Note: this is the only unit whose conversion factors include time (i.e., the conversion rates change on a daily basis)."^^xsd:string ;
	owl:disjointWith
		gist:DataSizeUnit ,
		gist:DistanceUnit ,
		gist:DurationUnit ,
		gist:ElectricalCurrentUnit ,
		gist:LuminousIntensityUnit ,
		gist:MassUnit ,
		gist:MoleUnit ,
		gist:TemperatureUnit
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_USDollar ;
			]
		) ;
	] ;
	.

gist:DataSizeUnit
	a owl:Class ;
	rdfs:label "Data Size Unit"^^xsd:string ;
	rdfs:comment "A unit to measure amounts of digital information."^^xsd:string ;
	owl:disjointWith
		gist:DistanceUnit ,
		gist:DurationUnit ,
		gist:ElectricalCurrentUnit ,
		gist:LuminousIntensityUnit ,
		gist:MassUnit ,
		gist:MoleUnit ,
		gist:TemperatureUnit
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_bit ;
			]
		) ;
	] ;
	.

gist:DateInstant
	a owl:Class ;
	rdfs:label "Date Instant"^^xsd:string ;
	rdfs:comment "A point in time known only to the accuracy of one day.  Say the signing of the declaration of independence on 7/4/1776"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:TimeInstant
			[
				a owl:Restriction ;
				owl:onProperty gist:hasPrecision ;
				owl:hasValue gist:_one_day ;
			]
		) ;
	] ;
	.

gist:DegreeOfCommitment
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Degree Of Commitment"^^xsd:string ;
	rdfs:comment
		"EXAMPLE:  A car rental typically has a lower degree of commitment than an airfare reservation."^^xsd:string ,
		"The difficulty of reversing a commitment."^^xsd:string
		;
	.

gist:DistanceUnit
	a owl:Class ;
	rdfs:label "Distance Unit"^^xsd:string ;
	rdfs:comment "A unit to measure linear distance, such as feet or kilometers."^^xsd:string ;
	owl:disjointWith
		gist:DurationUnit ,
		gist:ElectricalCurrentUnit ,
		gist:LuminousIntensityUnit ,
		gist:MassUnit ,
		gist:MoleUnit ,
		gist:TemperatureUnit
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_meter ;
			]
		) ;
	] ;
	.

gist:Duration
	a owl:Class ;
	rdfs:label "Duration"^^xsd:string ;
	rdfs:comment
		"EXAMPLE: One week (or seven days), but not Jan 1, 2008 to Jan 7, 2008 (which is an interval). Intervals have durations, but are not themselves durations."^^xsd:string ,
		"Time, but not on a timeline."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:DurationUnit ;
			]
		) ;
	] ;
	.

gist:DurationUnit
	a owl:Class ;
	rdfs:label "Duration Unit"^^xsd:string ;
	rdfs:comment "A unit to measure passage of time: hours, days, years."^^xsd:string ;
	owl:disjointWith
		gist:ElectricalCurrentUnit ,
		gist:LuminousIntensityUnit ,
		gist:MassUnit ,
		gist:MoleUnit ,
		gist:TemperatureUnit
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_second ;
			]
		) ;
	] ;
	.

gist:ElectricCurrent
	a owl:Class ;
	rdfs:label "Electric Current"^^xsd:string ;
	rdfs:comment "A flow of electric charge."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:ElectricalCurrentUnit ;
			]
		) ;
	] ;
	.

gist:ElectricalCurrentUnit
	a owl:Class ;
	rdfs:label "Electrical Current Unit"^^xsd:string ;
	rdfs:comment "Unit of electrical current, which is charge per unit time.  The SI unit is the ampere.  (Note that electrical current is a composed unit.)"^^xsd:string ;
	owl:disjointWith
		gist:LuminousIntensityUnit ,
		gist:MassUnit ,
		gist:MoleUnit ,
		gist:TemperatureUnit
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_ampere ;
			]
		) ;
	] ;
	.

gist:ElectronicMessageAddress
	a owl:Class ;
	rdfs:subClassOf gist:Address ;
	rdfs:label "Electronic Message Address"^^xsd:string ;
	rdfs:comment "Any place an electronic message (email, fax, etc.) can be sent."^^xsd:string ;
	.

gist:EmailAddress
	a owl:Class ;
	rdfs:subClassOf gist:ElectronicMessageAddress ;
	rdfs:label "Email Address"^^xsd:string ;
	rdfs:comment "An email address is a unique identifier for an email account. It is used to both send and receive email messages over the Internet."^^xsd:string ;
	.

gist:Equipment
	a owl:Class ;
	rdfs:label "Equipment"^^xsd:string ;
	rdfs:comment "Tangible property other than land or buildings.  Any kind of equipment, could be machine, router, car etc."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Artifact
			gist:PhysicalIdentifiableItem
			[
				a owl:Restriction ;
				owl:onProperty gist:categorizedBy ;
				owl:someValuesFrom gist:EquipmentType ;
			]
		) ;
	] ;
	.

gist:EquipmentType
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Equipment Type"^^xsd:string ;
	rdfs:comment "Categories of equipment"^^xsd:string ;
	.

gist:Event
	a owl:Class ;
	rdfs:label "Event"^^xsd:string ;
	rdfs:comment "Something happening over some period of time, often characterized as some kind of activity being carried out by some person, organization, or software application."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:characterizedAs ;
				owl:someValuesFrom gist:Behavior ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:end ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:start ;
				owl:someValuesFrom gist:TimeInstant ;
			]
		) ;
	] ;
	.

gist:Extent
	a owl:Class ;
	rdfs:label "Extent"^^xsd:string ;
	rdfs:comment "A measure of distance, which could be distances over the Earth, and could also be height, width, length, depth, girth, etc."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:DistanceUnit ;
			]
		) ;
	] ;
	.

gist:FormattedContent
	a owl:Class ;
	rdfs:label "Formatted Content"^^xsd:string ;
	rdfs:comment "Content which is in a particular format. (E.g., HTML, PDF, JPG.)"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ContentExpression
			[
				a owl:Restriction ;
				owl:onProperty gist:expressedIn ;
				owl:someValuesFrom gist:MimeType ;
			]
		) ;
	] ;
	.

gist:Function
	a owl:Class ;
	rdfs:subClassOf gist:Intention ;
	rdfs:label "Function"^^xsd:string ;
	rdfs:comment "A function is what a specific made item is intended to do.  For instance: transmit electricity, provide ballast, control ambient temperature."^^xsd:string ;
	.

gist:GeneralMediaType
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "General Media Type"^^xsd:string ;
	rdfs:comment
		"EXAMPLE: audio, still image, video, textual, physical (e.g., a statue), or performance (i.e. a play).  Or it could be oil or pastel for a painting."^^xsd:string ,
		"The real-world media type for content."^^xsd:string
		;
	.

gist:GeoPoint
	a owl:Class ;
	rdfs:subClassOf gist:Place ;
	rdfs:label "Geo Point"^^xsd:string ;
	rdfs:comment
		"An individual point on the Earth's surface, identified by latitude, longitude and altitude. If altitude is missing, it is assumed to be at the Earth's surface.  However, altitude is measured from sea level.  these points are to the WGS-84 coordinate system using the GPS decimal lat/long"^^xsd:string ,
		"NOTE: Assume coordinate system used by Google (WGS 84 Web Mercator)."^^xsd:string
		;
	owl:disjointWith
		gist:IntellectualProperty ,
		gist:Intention ,
		gist:Language ,
		gist:Magnitude ,
		gist:Organization ,
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:hasAltitude ;
				owl:someValuesFrom gist:Extent ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:latitude ;
				owl:someValuesFrom xsd:double ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:longitude ;
				owl:someValuesFrom xsd:double ;
			]
		) ;
	] ;
	.

gist:GeoPoliticalRegion
	a owl:Class ;
	rdfs:label "GeoPolitical Region"^^xsd:string ;
	rdfs:comment "A collection of GeoRegions that are being administered by a Government Organization"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Collection
			[
				a owl:Restriction ;
				owl:onProperty gist:governedBy ;
				owl:someValuesFrom gist:GovernmentOrganization ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMember ;
				owl:someValuesFrom gist:GeoRegion ;
			]
		) ;
	] ;
	.

gist:GeoRegion
	a owl:Class ;
	rdfs:subClassOf gist:Place ;
	rdfs:label "Geo Region"^^xsd:string ;
	rdfs:comment
		"A bounded region (or set of regions) on the surface of the Earth."^^xsd:string ,
		"EXAMPLES: The bounded shape that defines the region occupied by Crater Lake; the bounded area known as the contiguous USA."^^xsd:string ,
		"NOTE: A GeoRegion could be non-contiguous; e.g. the region governed by the USA is the region governed by the lower 48 states plus that of Alaska and Hawaii.  Child classes in lower ontologies can make this distinction."^^xsd:string ,
		"NOTE: A GeoRegion has an area, but it is not itself an instance of the Area class.  (Area in gist is a magnitude)."^^xsd:string
		;
	owl:disjointWith
		gist:IntellectualProperty ,
		gist:Intention ,
		gist:Language ,
		gist:Magnitude ,
		gist:Organization ,
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:Template ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMagnitude ;
				owl:someValuesFrom gist:Area ;
			]
		) ;
	] ;
	.

gist:GeoRoute
	a owl:Class ;
	rdfs:label "Geo Route"^^xsd:string ;
	rdfs:comment "An ordered set of GeoPoints that defines a path from starting point to ending point."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:OrderedCollection
			gist:Place
			[
				a owl:Restriction ;
				owl:onProperty gist:hasDirectPart ;
				owl:someValuesFrom gist:GeoSegment ;
			]
		) ;
	] ;
	.

gist:GeoSegment
	a owl:Class ;
	rdfs:subClassOf gist:Place ;
	rdfs:label "Geo Segment"^^xsd:string ;
	rdfs:comment "A single portion of a GeoRegion which has been divided (i.e., segmented)."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:fromPlace ;
				owl:onClass gist:GeoPoint ;
				owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:toPlace ;
				owl:onClass gist:GeoPoint ;
				owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			]
		) ;
	] ;
	.

gist:GeoVolume
	a owl:Class ;
	rdfs:subClassOf gist:Place ;
	rdfs:label "Geo Volume"^^xsd:string ;
	rdfs:comment "A three-dimensional space on or near the surface of the Earth, such as an oil reservoir, the body of a lake, or an airspace."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:geoDirectlyContains ;
				owl:someValuesFrom gist:GeoPoint ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMagnitude ;
				owl:someValuesFrom gist:Volume ;
			]
		) ;
	] ;
	.

gist:Goal
	a owl:Class ;
	rdfs:subClassOf gist:Intention ;
	rdfs:label "Goal"^^xsd:string ;
	rdfs:comment "A specific intentional endpoint.  One can tell whether it has been achieved, as opposed to an intention, which may not have an evaluation function."^^xsd:string ;
	.

gist:GovernmentOrganization
	a owl:Class ;
	rdfs:label "Government Organization"^^xsd:string ;
	rdfs:comment
		"An organization established either by fiat (as a conquering army overtakes a land and declares a government) or by delegation from a fiat government, such as a state or local government or a specific agency. Differs from a corporation in that it cannot be owned."^^xsd:string ,
		"EXAMPLES: The State of Washington Office of Financial Management; the Food and Drug Administration; the Scottish Parliament."^^xsd:string ,
		"NOTE: Establishment by a CountryGovernment may be indirect via local, regional, or national GovernmentOrganization(s) that ultimately are recognized by a CountryGovernment."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Organization
			[
				a owl:Restriction ;
				owl:onProperty gist:recognizedBy ;
				owl:someValuesFrom gist:CountryGovernment ;
			]
		) ;
	] ;
	.

gist:GreenwichInstant
	a owl:Class ;
	rdfs:label "Greenwich instant"^^xsd:string ;
	rdfs:comment "By default time instants are expressed in Greenwich, if you need to be explicit (to calculate offset for instance)"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:TimeInstant
			[
				a owl:Restriction ;
				owl:onProperty gist:timeZoneStandardUsed ;
				owl:hasValue gist:_greenwichTimeZone ;
			]
		) ;
	] ;
	.

gist:Group
	a owl:Class ;
	rdfs:label "Group"^^xsd:string ;
	rdfs:comment "A collection of People. The group may or may not be an Organization.  Many organizations consist of groups of people, but that is not a defining characteristic."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Collection
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMember ;
				owl:someValuesFrom gist:Person ;
			]
		) ;
	] ;
	.

gist:HistoricalEvent
	a owl:Class ;
	rdfs:label "Historical Event"^^xsd:string ;
	rdfs:comment "An event which occurred in time, with an actual end earlier than the present moment."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Event
			[
				a owl:Restriction ;
				owl:onProperty gist:actualEnd ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:actualStart ;
				owl:someValuesFrom gist:TimeInstant ;
			]
		) ;
	] ;
	.

gist:HumanInstant
	a owl:Class ;
	rdfs:label "Human Instant"^^xsd:string ;
	rdfs:comment "A point in time known only to the accuracy of one minute.  For things like calendar appointments and time reporting"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:TimeInstant
			[
				a owl:Restriction ;
				owl:onProperty gist:hasPrecision ;
				owl:hasValue gist:_one_minute ;
			]
		) ;
	] ;
	.

gist:ID
	a owl:Class ;
	rdfs:label "ID"^^xsd:string ;
	rdfs:comment
		"EXAMPLE: e.g. SSN for a person, serial number for a product, employee id"^^xsd:string ,
		"EXAMPLES: SSN for a person; serial number for a product; employee ID."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Content
			[
				a owl:Restriction ;
				owl:onProperty gist:allocatedBy ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:IntellectualProperty
						gist:Organization
						gist:Person
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:uniqueText ;
				owl:someValuesFrom xsd:string ;
			]
		) ;
	] ;
	.

gist:InformationQuantity
	a owl:Class ;
	rdfs:label "Information Quantity"^^xsd:string ;
	rdfs:comment "An amount of data, such as 6 petabytes, or 640KB."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:DataSizeUnit ;
			]
		) ;
	] ;
	.

gist:IntellectualProperty
	a owl:Class ;
	rdfs:subClassOf gist:Artifact ;
	rdfs:label "Intellectual Property"^^xsd:string ;
	rdfs:comment
		"A work, invention or concept, independent of its being expressed in text, audio, video, image, or live performance.  IP can also be tacit knowledge, know-how, or skill. Also includes Brands."^^xsd:string ,
		"EXAMPLES: ?The Old Man and The Sea?; the Page Rank algorithm; Coca Cola"^^xsd:string ,
		"NOTE:  For literature this could be called the ?Work?, except that ?work? is a highly overloaded term (expenditure of energy, resource consumption, art).  Often the first expression precedes our recognition of the IP, but subsequent expressions are known to be derivatives of the IP, even if they are expression-to-expression translations (or copies)."^^xsd:string
		;
	owl:disjointWith
		gist:Intention ,
		gist:Magnitude ,
		gist:Organization ,
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:Intention
	a owl:Class ;
	rdfs:label "Intention"^^xsd:string ;
	rdfs:comment 'Goal, desire, aspiration. This is the "teleologic" aspect of the system that indicates things are done with a purpose.'^^xsd:string ;
	owl:disjointWith
		gist:Magnitude ,
		gist:Organization ,
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:Landmark
	a owl:Class ;
	rdfs:subClassOf gist:Place ;
	rdfs:label "Landmark"^^xsd:string ;
	rdfs:comment "Something permanently attached to the Earth."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:PhysicalIdentifiableItem
			[
				a owl:Restriction ;
				owl:onProperty gist:permanentGeoOccupies ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:GeoRegion
						gist:GeoVolume
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:Language
	a owl:Class ;
	rdfs:label "Language"^^xsd:string ;
	rdfs:comment
		"A recognized, organized set of symbols and grammar."^^xsd:string ,
		"EXAMPLES: Natural languages such as English and Spanish; computer languages such as OWL, Python, and XML."^^xsd:string
		;
	owl:disjointWith
		gist:Magnitude ,
		gist:Organization ,
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:LivingThing
	a owl:Class ;
	rdfs:label "Living Thing"^^xsd:string ;
	rdfs:comment
		"EXAMPLES: A cat, a mushroom, a tree."^^xsd:string ,
		"NEGATIVE EXAMPLES: fictional life forms such as Unicorns or Mickey Mouse."^^xsd:string ,
		"NOTE: In the open world, you must assume that it might have since died."^^xsd:string ,
		"Something that is now, or at some point in time was, alive and growing."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:PhysicalIdentifiableItem
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBirthDate ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:offspringOf ;
				owl:someValuesFrom gist:LivingThing ;
			]
		) ;
	] ;
	.

gist:LocalInstant
	a owl:Class ;
	rdfs:label "Local Instant"^^xsd:string ;
	rdfs:comment "A point in time expressed relative to a local time zone. Can be converted to Universal Time using the time zone offset. The precision is used to state how precise this instant is.  Typical values would be day, hour, minute or second."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:TimeInstant
			[
				a owl:Restriction ;
				owl:onProperty gist:sameTimeAs ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:timeZoneStandardUsed ;
				owl:someValuesFrom gist:TimeZoneStandard ;
			]
		) ;
	] ;
	.

gist:LuminousIntensity
	a owl:Class ;
	rdfs:label "Luminous Intensity"^^xsd:string ;
	rdfs:comment "A measure of the wavelength-weighted power emitted by a light source in a particular direction per unit solid angle.  This is based on the luminosity function, a standardized model of the sensitivity of the human eye."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:LuminousIntensityUnit ;
			]
		) ;
	] ;
	.

gist:LuminousIntensityUnit
	a owl:Class ;
	rdfs:label "Luminous Intensity Unit"^^xsd:string ;
	rdfs:comment "The measure of brightness. The SI unit is the candela."^^xsd:string ;
	owl:disjointWith
		gist:MassUnit ,
		gist:MoleUnit ,
		gist:TemperatureUnit
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_candela ;
			]
		) ;
	] ;
	.

gist:Magnitude
	a owl:Class ;
	rdfs:label "Magnitude"^^xsd:string ;
	rdfs:comment
		"Base class for units which can be converted.  The primitive units can be converted from one measurement system to another; the complex units (ratio or product) have to decompose to their primitives."^^xsd:string ,
		"NOTE:  Magnitudes of the same dimensional type (i.e., duration or electric current) can be compared with a greater-than or less-than operator, but can still differ in their relationToTheWorld type.  (I.e., you can compare actuals to estimates or references, so long as the dimension is the same.)"^^xsd:string ,
		"NOTE: Note the precision should be in the same type of unit as the magnitude."^^xsd:string
		;
	owl:disjointWith
		gist:Organization ,
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:hasPrecision ;
				owl:someValuesFrom gist:Magnitude ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:UnitOfMeasure ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:decimalValue ;
				owl:someValuesFrom xsd:double ;
			]
		) ;
	] ;
	.

gist:Mass
	a owl:Class ;
	rdfs:label "Mass"^^xsd:string ;
	rdfs:comment "Magnitude of mass."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:MassUnit ;
			]
		) ;
	] ;
	.

gist:MassUnit
	a owl:Class ;
	rdfs:label "Mass Unit"^^xsd:string ;
	rdfs:comment "A unit representing the amount of matter in a particle or object.  The SI unit of mass is the kilogram."^^xsd:string ;
	owl:disjointWith
		gist:MoleUnit ,
		gist:TemperatureUnit
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_kilogram ;
			]
		) ;
	] ;
	.

gist:Medium
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Medium"^^xsd:string ;
	rdfs:comment "A physicality on which a work could be implemented or exposed. E.g., paper, clay, or a computer monitor."^^xsd:string ;
	.

gist:Message
	a owl:Class ;
	rdfs:label "Message"^^xsd:string ;
	rdfs:comment
		"A specific instance of content sent from an Organization, Person, or Application to at least one other Organization, Person, or Application."^^xsd:string ,
		"EXAMPLES: An email message, a phone call, a voice message, or a Web Service message."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ContentExpression
			[
				a owl:Restriction ;
				owl:onProperty gist:fromAgent ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Address
						gist:Organization
						gist:Person
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:toAgent ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Address
						gist:Organization
						gist:Person
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:MessageDefinition
	a owl:Class ;
	rdfs:subClassOf gist:SchemaMetaData ;
	rdfs:label "Message Definition"^^xsd:string ;
	rdfs:comment "Each pulse from a Sensor is reflected in a message, as well as each instruction to an Actuator"^^xsd:string ;
	.

gist:MimeType
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "MIME Type"^^xsd:string ;
	rdfs:comment "A digitized type that computer applications can recognize."^^xsd:string ;
	.

gist:MolarQuantity
	a owl:Class ;
	rdfs:label "Molar Quantity"^^xsd:string ;
	rdfs:comment "Amount of a substance, as counted molecules."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:MoleUnit ;
			]
		) ;
	] ;
	.

gist:MoleUnit
	a owl:Class ;
	rdfs:label "Mole Unit"^^xsd:string ;
	rdfs:comment "Amount of chemical material.  Measured in Avogadro units (moles) of 6.02 x 10^23 molecules."^^xsd:string ;
	owl:disjointWith gist:TemperatureUnit ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_mole ;
			]
		) ;
	] ;
	.

gist:Monetary
	a owl:Class ;
	rdfs:label "Monetary"^^xsd:string ;
	rdfs:comment "A special type of magnitude, due to the way rounding is handled in math and the temporal aspect of conversion."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:CurrencyUnit ;
			]
		) ;
	] ;
	.

gist:Network
	a owl:Class ;
	rdfs:label "Network"^^xsd:string ;
	rdfs:comment "A network is a connected set of links and nodes"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Artifact
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMember ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:NetworkLink
						gist:NetworkNode
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:NetworkLink
	a owl:Class ;
	rdfs:label "Network Link"^^xsd:string ;
	rdfs:comment "a link in a network.  This is the abstraction of the network.  The physical instantiation couple be pipes, or wire  but may also be non physical such as wireless networks or organization structures"^^xsd:string ;
	.

gist:NetworkNode
	a owl:Class ;
	rdfs:label "Network Node"^^xsd:string ;
	rdfs:comment "a node in a network.  Note the network is the abstract representation of the network.  It is physically instantiated with equipment, or in some cases People."^^xsd:string ;
	.

gist:Obligation
	a owl:Class ;
	rdfs:label "Obligation"^^xsd:string ;
	rdfs:comment
		"A future commitment from one organization or person to another. Contracts are sets of obligations to do or forbear, or to indemnify or warrant."^^xsd:string ,
		"NOTE: Obligations will often be governed by some Agreement or Offer."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Commitment
			[
				a owl:Restriction ;
				owl:onProperty gist:getter ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Organization
						gist:Person
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:giver ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Organization
						gist:Person
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:Offer
	a owl:Class ;
	rdfs:label "Offer"^^xsd:string ;
	rdfs:comment "A commitment to buy or sell a described or identified part or service."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ContingentObligation
			[
				a owl:Restriction ;
				owl:onProperty gist:giver ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:unionOf (
						gist:Organization
						gist:Person
					) ;
				] ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasDirectPart ;
				owl:someValuesFrom gist:CatalogItem ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMagnitude ;
				owl:someValuesFrom gist:Monetary ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:plannedEnd ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:start ;
				owl:someValuesFrom gist:TimeInstant ;
			]
		) ;
	] ;
	.

gist:OrderedCollection
	a owl:Class ;
	rdfs:subClassOf gist:Collection ;
	rdfs:label "Ordered Collection"^^xsd:string ;
	rdfs:comment "A collection where the members are in a fixed sequence."^^xsd:string ;
	.

gist:OrdinalCollection
	a owl:Class ;
	rdfs:subClassOf
		gist:OrderedCollection ,
		[
			a owl:Restriction ;
			owl:onProperty gist:hasOrderedMember ;
			owl:allValuesFrom gist:OrdinalMember ;
		]
		;
	rdfs:label "Ordinal Collection"^^xsd:string ;
	rdfs:comment "An Ordered Collection where no item can be of the same rank as any other item.  In mathematical terms, this is a ?strict total order?."^^xsd:string ;
	.

gist:OrdinalMember
	a owl:Class ;
	rdfs:subClassOf
		gist:Category ,
		[
			a owl:Class ;
			owl:unionOf (
				[
					a owl:Restriction ;
					owl:onProperty gist:directlyPrecededBy ;
					owl:someValuesFrom gist:OrdinalMember ;
				]
				[
					a owl:Restriction ;
					owl:onProperty gist:directlyPrecedes ;
					owl:someValuesFrom gist:OrdinalMember ;
				]
			) ;
		]
		;
	rdfs:label "Ordinal Member"^^xsd:string ;
	rdfs:comment "A member of an Ordinal Collection.  It necessarily precedes or is preceded by another Ordinal Member in the same collection. (This last condition cannot be formally stated in OWL)."^^xsd:string ;
	owl:equivalentClass [
		a owl:Restriction ;
		owl:onProperty gist:orderedMemberOf ;
		owl:someValuesFrom gist:OrdinalCollection ;
	] ;
	.

gist:Organization
	a owl:Class ;
	rdfs:label "Organization"^^xsd:string ;
	rdfs:comment
		"A generic organization that can be formal or informal, legal or non-legal. It can have members, or not."^^xsd:string ,
		"EXAMPLES: Legal entities like companies; non-legal entities like clubs, committees, or departments."^^xsd:string ,
		"NOTE: There are a plethora of different kinds of organizations that differ along many facets, including members, structure, purpose, legal vs. non-legal, etc."^^xsd:string
		;
	owl:disjointWith
		gist:PhysicalIdentifiableItem ,
		gist:PhysicalSubstance ,
		gist:SchemaMetaData ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:Percentage
	a owl:Class ;
	rdfs:subClassOf gist:RatioMagnitude ;
	rdfs:label "Percentage"^^xsd:string ;
	rdfs:comment
		"A ratio where the numerator and denominator are of the same unit of measure."^^xsd:string ,
		"NOTE: there are various ways to represent percentage: 50/100 could be represented as ?50? or ?0.5?.  gist uses the latter, as it involves fewer conversions for subsequent use."^^xsd:string
		;
	.

gist:Permission
	a owl:Class ;
	rdfs:label "Permission"^^xsd:string ;
	rdfs:comment "A description of things one is permitted to do. This could be broad, such as free speech, but more often is very specific, such as the right of egress through a particular property."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Intention
			[
				a owl:Restriction ;
				owl:onProperty gist:allows ;
				owl:someValuesFrom gist:Behavior ;
			]
		) ;
	] ;
	.

gist:Person
	a owl:Class ;
	rdfs:label "Person"^^xsd:string ;
	rdfs:comment "NEGATIVE EXAMPLE: fictional characters."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:LivingThing
			[
				a owl:Restriction ;
				owl:onProperty gist:offspringOf ;
				owl:someValuesFrom gist:Person ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:name ;
				owl:someValuesFrom xsd:string ;
			]
		) ;
	] ;
	.

gist:PhenomenaType
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Phenomena Type"^^xsd:string ;
	rdfs:comment "The things that a sensor can sense, such as light, heat, current, moisture, etc."^^xsd:string ;
	.

gist:PhysicalActionType
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Physical Action Type"^^xsd:string ;
	rdfs:comment "The effects to be realized in the real world, such as lifting a garage door, turning off a valve, dropping cadmium rods, etc."^^xsd:string ;
	.

gist:PhysicalEvent
	a owl:Class ;
	rdfs:label "Physical Event"^^xsd:string ;
	rdfs:comment
		"An event that can be said to have occurred at some place in space."^^xsd:string ,
		"EXAMPLES:  A meeting, a car accident."^^xsd:string ,
		"NEGATIVE EXAMPLES:  Excludes events that have no meaningful location, such as financial events or project milestones."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Event
			[
				a owl:Restriction ;
				owl:onProperty gist:occursAt ;
				owl:someValuesFrom gist:Place ;
			]
		) ;
	] ;
	.

gist:PhysicalIdentifiableItem
	a owl:Class ;
	rdfs:subClassOf
		[
			a owl:Restriction ;
			owl:onProperty gist:hasMagnitude ;
			owl:someValuesFrom gist:Mass ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:hasMagnitude ;
			owl:someValuesFrom gist:Volume ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:identifiedBy ;
			owl:someValuesFrom gist:ID ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:madeUpOf ;
			owl:someValuesFrom gist:PhysicalSubstance ;
		]
		;
	rdfs:label "Physical Identifiable Item"^^xsd:string ;
	rdfs:comment
		"EXAMPLES: a computer, a book."^^xsd:string ,
		"NEGATIVE EXAMPLE:  A discontinuous thing like a manufacturing line cannot reasonably have an RFID attached to it, even though its parts are not the same kind of thing as the whole."^^xsd:string ,
		"NOTE:  You could, at least in principle, put an RFID tag on members of this class. Physical things are made of something.  E.g., statues are made of bronze."^^xsd:string ,
		"NOTE: In practice, this always means that the parts are not the same kind of thing as the whole."^^xsd:string
		;
	owl:disjointWith
		gist:SchemaMetaData ,
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:PhysicalSubstance
	a owl:Class ;
	rdfs:subClassOf [
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMagnitude ;
				owl:someValuesFrom gist:Mass ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMagnitude ;
				owl:someValuesFrom gist:Volume ;
			]
		) ;
	] ;
	rdfs:label "Physical Substance"^^xsd:string ;
	rdfs:comment
		"EXAMPLES: An amount of water, of penicillin, of sand, of gold."^^xsd:string ,
		"NOTE: An instance of this class must be a physical thing, and not just a categorical description.  Example: an actual piece of gold, not ?gold? as a concept."^^xsd:string ,
		"NOTE: Some things are substances at a macro level, but ultimately end up as not being divisible into the same kind of thing.  E.g. sand vs. grains of sand., bacteria vs. an individual bacterium."^^xsd:string
		;
	owl:disjointWith
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:Place
	a owl:Class ;
	rdfs:label "Place"^^xsd:string ;
	rdfs:comment "Union of all the geo classes"^^xsd:string ;
	.

gist:PlannedEvent
	a owl:Class ;
	rdfs:label "Planned Event"^^xsd:string ;
	rdfs:comment "An event which, at the time it is created, is to occur in the future."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Event
			[
				a owl:Restriction ;
				owl:onProperty gist:plannedEnd ;
				owl:someValuesFrom gist:TimeInstant ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:plannedStart ;
				owl:someValuesFrom gist:TimeInstant ;
			]
		) ;
	] ;
	.

gist:PostalAddress
	a owl:Class ;
	rdfs:subClassOf gist:Address ;
	rdfs:label "Postal Address"^^xsd:string ;
	rdfs:comment
		"A set of codes the postal authorities can use to deliver physical mail."^^xsd:string ,
		"EXAMPLES: a street address, a PO Box, an FPO code, or the route codes."^^xsd:string
		;
	.

gist:ProductCategory
	a owl:Class ;
	rdfs:subClassOf gist:Category ;
	rdfs:label "Product Category"^^xsd:string ;
	rdfs:comment "Any of many ways of categorizing products, including models, NATO product codes, and the like."^^xsd:string ;
	.

gist:ProductMagnitude
	a owl:Class ;
	rdfs:label "Product Magnitude"^^xsd:string ;
	rdfs:comment "A magnitude expressed as a product of primitives.  (E.g., Force = M*A)."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:ProductUnit ;
			]
		) ;
	] ;
	.

gist:ProductSpecification
	a owl:Class ;
	rdfs:label "Product Specification"^^xsd:string ;
	rdfs:comment "Offering something which could be physically warehoused or digitally stored."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:CatalogItem
			[
				a owl:Restriction ;
				owl:onProperty gist:categorizedBy ;
				owl:someValuesFrom gist:ProductCategory ;
			]
		) ;
	] ;
	.

gist:ProductUnit
	a owl:Class ;
	rdfs:label "Product Unit"^^xsd:string ;
	rdfs:comment
		"A unit of measure that is the product of two simpler ones."^^xsd:string ,
		"EXAMPLES:  Area and Volume are the classic cases.  But other, more exotic cases exist, such as Newtons."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:UnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplicand ;
				owl:someValuesFrom gist:UnitOfMeasure ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplier ;
				owl:someValuesFrom gist:UnitOfMeasure ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:convertToBase ;
				owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
				owl:onDataRange xsd:double ;
			]
		) ;
	] ;
	.

gist:Project
	a owl:Class ;
	rdfs:label "Project"^^xsd:string ;
	rdfs:comment "A project is a task (usually a longer duration task) made up of other tasks."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Task
			[
				a owl:Restriction ;
				owl:onProperty gist:hasSubTask ;
				owl:someValuesFrom gist:Task ;
			]
		) ;
	] ;
	.

gist:RatioMagnitude
	a owl:Class ;
	rdfs:label "Ratio Magnitude"^^xsd:string ;
	rdfs:comment
		"EXAMPLE:  Speed.  The ratio magnitude is 60, the unit of measure might be MilesPerHour."^^xsd:string ,
		"NOTE:  A RatioMagnitude just has one decimal value."^^xsd:string ,
		"This is a number whose unit of measure is a ratio."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:RatioUnit ;
			]
		) ;
	] ;
	.

gist:RatioUnit
	a owl:Class ;
	rdfs:label "Ratio Unit"^^xsd:string ;
	rdfs:comment
		"A UnitOfMeasure composed of a numerator unit and a denominator unit."^^xsd:string ,
		"EXAMPLE:  Miles per hour."^^xsd:string ,
		"NOTE: If needed, a conversion factor for a RatioUnit can be (recursively) derived from the conversion factors of the numerator and denominator units.  E.g., the derived conversion factor from km/minute to meters/second is 1000/60 or 16 2/3."^^xsd:string
		;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:UnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:denominator ;
				owl:someValuesFrom gist:UnitOfMeasure ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:numerator ;
				owl:someValuesFrom gist:UnitOfMeasure ;
			]
		) ;
	] ;
	.

gist:ReferenceValue
	a owl:Class ;
	rdfs:subClassOf gist:Magnitude ;
	rdfs:label "Reference Value"^^xsd:string ;
	rdfs:comment "A measure that was neither measured nor estimated but set by fiat. For instance, a goal. There is no Measurement associated with a ReferenceValue."^^xsd:string ;
	.

gist:RenderedContent
	a owl:Class ;
	rdfs:label "Rendered Content"^^xsd:string ;
	rdfs:comment "Content which has been expressed, either to print, or through speakers, or on a monitor."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ContentExpression
			[
				a owl:Restriction ;
				owl:onProperty gist:expressedIn ;
				owl:someValuesFrom gist:MimeType ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:renderedOn ;
				owl:someValuesFrom gist:Medium ;
			]
		) ;
	] ;
	.

gist:Requirement
	a owl:Class ;
	rdfs:subClassOf gist:Intention ;
	rdfs:label "Requirement"^^xsd:string ;
	rdfs:comment "A documented physical or functional need that a particular design, product, or process must be able to perform.  Alternately, the obligation of a person or organization to behave in a certain way (i.e., drive on the right side of the road)."^^xsd:string ;
	.

gist:Restriction
	a owl:Class ;
	rdfs:label "Restriction"^^xsd:string ;
	rdfs:comment "A description of things one is prevented from doing.  Most laws are restrictions."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Intention
			[
				a owl:Restriction ;
				owl:onProperty gist:prevents ;
				owl:someValuesFrom gist:Behavior ;
			]
		) ;
	] ;
	.

gist:Room
	a owl:Class ;
	rdfs:subClassOf gist:Place ;
	rdfs:label "Room"^^xsd:string ;
	rdfs:comment "An enclosed area within a building."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			[
				a owl:Restriction ;
				owl:onProperty gist:directPartOf ;
				owl:someValuesFrom gist:Building ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:identifiedBy ;
				owl:someValuesFrom gist:ID ;
			]
		) ;
	] ;
	.

gist:ScheduledTask
	a owl:Class ;
	rdfs:label "Scheduled Task"^^xsd:string ;
	rdfs:comment "A task planned to occur.  When it was scheduled, it would have been in the future, but now might be in the past."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:PlannedEvent
			gist:Task
		) ;
	] ;
	.

gist:SchemaMetaData
	a owl:Class ;
	rdfs:label "Schema Meta Data"^^xsd:string ;
	rdfs:comment "Superclass for all types of metadata, including owl concepts (such as class) and relational (tables, elements) and tool related (queries, R2RML maps etc etc)"^^xsd:string ;
	owl:disjointWith gist:UnitOfMeasure ;
	.

gist:Sensor
	a owl:Class ;
	rdfs:subClassOf gist:Equipment ;
	rdfs:label "Sensor"^^xsd:string ;
	rdfs:comment "A device that can detect something and report it. Light sensors, temperature sensors,"^^xsd:string ;
	.

gist:ServiceSpecification
	a owl:Class ;
	rdfs:label "Service Specification"^^xsd:string ;
	rdfs:comment "A description of something that can be done for a person or organization (which produces some form of an act)."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:CatalogItem
			[
				a owl:Restriction ;
				owl:onProperty gist:basisFor ;
				owl:someValuesFrom gist:Event ;
			]
		) ;
	] ;
	.

gist:SimpleUnitOfMeasure
	a owl:Class ;
	rdfs:label "Simple Unit Of Measure"^^xsd:string ;
	rdfs:comment "Each simple unit has a base unit and a conversion factor to the base. The bases are from the System International (SI). The conversion factor is the number which one multiplies a Unit by to get to base, or divides by to get from base.  E.g., the convertToBase for inch is 0.0254 to get to the base unit (meter)."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:UnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:onClass gist:BaseUnit ;
				owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:convertToBase ;
				owl:someValuesFrom xsd:double ;
			]
		) ;
	] ;
	.

gist:Specification
	a owl:Class ;
	rdfs:subClassOf gist:Requirement ;
	rdfs:label "Specification"^^xsd:string ;
	rdfs:comment "A set of requirements to be satisfied by a material, design, product, or service."^^xsd:string ;
	.

gist:System
	a owl:Class ;
	rdfs:label "System"^^xsd:string ;
	rdfs:comment "A system is an artifact with component parts where the parts contribute to the goal of the system"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Artifact
			[
				a owl:Restriction ;
				owl:onProperty gist:hasDirectPart ;
				owl:someValuesFrom gist:Component ;
			]
		) ;
	] ;
	.

gist:SystemInstant
	a owl:Class ;
	rdfs:label "System Instant"^^xsd:string ;
	rdfs:comment "A point in time known to the accuracy of a millisecond.  For posting transaction recorded on times"^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:TimeInstant
			[
				a owl:Restriction ;
				owl:onProperty gist:hasPrecision ;
				owl:hasValue gist:_one_millisecond ;
			]
		) ;
	] ;
	.

gist:Tag
	a owl:Class ;
	rdfs:label "Tag"^^xsd:string ;
	rdfs:comment "This is for folksonomy type terms, which can be made up on the fly by users."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Category
			[
				a owl:Restriction ;
				owl:onProperty gist:hasTag ;
				owl:someValuesFrom xsd:string ;
			]
		) ;
	] ;
	.

gist:Task
	a owl:Class ;
	rdfs:label "Task"^^xsd:string ;
	rdfs:comment "A task which has been defined and either scheduled or accomplished, or both."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Event
			[
				a owl:Restriction ;
				owl:onProperty gist:hasGoal ;
				owl:someValuesFrom gist:Intention ;
			]
		) ;
	] ;
	.

gist:TaskTemplate
	a owl:Class ;
	rdfs:label "Template Task"^^xsd:string ;
	rdfs:comment "An outline of task of a particular type, that will, when instantiated, generate an actual (unscheduled) task."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Template
			[
				a owl:Restriction ;
				owl:onProperty gist:hasGoal ;
				owl:someValuesFrom gist:Intention ;
			]
		) ;
	] ;
	.

gist:Taxonomy
	a owl:Class ;
	rdfs:label "Taxonomy"^^xsd:string ;
	rdfs:comment "A controlled vocabulary arranged as a hierarchy of concepts."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ControlledVocabulary
			[
				a owl:Restriction ;
				owl:onProperty gist:hasMember ;
				owl:someValuesFrom [
					a owl:Class ;
					owl:intersectionOf (
						gist:Category
						[
							a owl:Class ;
							owl:unionOf (
								[
									a owl:Restriction ;
									owl:onProperty gist:hasSubCategory ;
									owl:someValuesFrom gist:Category ;
								]
								[
									a owl:Restriction ;
									owl:onProperty gist:hasSuperCategory ;
									owl:someValuesFrom gist:Category ;
								]
							) ;
						]
					) ;
				] ;
			]
		) ;
	] ;
	.

gist:TelephoneNumber
	a owl:Class ;
	rdfs:subClassOf gist:Address ;
	rdfs:label "Telephone Number"^^xsd:string ;
	rdfs:comment
		"A numeric code a telephonic device uses for contacting another telephonic device."^^xsd:string ,
		"EXAMPLES:  Mobile, fax, or landline phone number."^^xsd:string
		;
	.

gist:Temperature
	a owl:Class ;
	rdfs:label "Temperature"^^xsd:string ;
	rdfs:comment "The degree or intensity of heat present in a substance or object, especially as expressed according to a comparative scale."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:TemperatureUnit ;
			]
		) ;
	] ;
	.

gist:TemperatureUnit
	a owl:Class ;
	rdfs:label "Temperature Unit"^^xsd:string ;
	rdfs:comment "Unit of measurement for expressing temperature.  Per SI, the base of temperature is in Kelvin, to allow for all units to be expressed relative to a real (in this case absolute) zero."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:SimpleUnitOfMeasure
			[
				a owl:Restriction ;
				owl:onProperty gist:hasBaseUnit ;
				owl:hasValue gist:_kelvin ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:conversionOffset ;
				owl:someValuesFrom xsd:double ;
			]
		) ;
	] ;
	.

gist:Template
	a owl:Class ;
	rdfs:label "Template"^^xsd:string ;
	rdfs:comment
		"EXAMPLE:  A form. A filled-in form has the structure of the form with data entered into some or all of the fields."^^xsd:string ,
		"NOTE: Use gist:basedOn to link the instantiation of a template back to its Template."^^xsd:string ,
		"Something used to make instances in its own image.  In manufacturing this would be specialized as a die to make stamped parts, cookie cutters are templates for cookies, and forms are templates for data."^^xsd:string
		;
	owl:disjointWith
		gist:TimeInstant ,
		gist:UnitOfMeasure
		;
	.

gist:TemporalRelation
	a owl:Class ;
	rdfs:subClassOf
		[
			a owl:Restriction ;
			owl:onProperty gist:connectedTo ;
			owl:minCardinality "2"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:end ;
			owl:someValuesFrom gist:TimeInstant ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:start ;
			owl:someValuesFrom gist:TimeInstant ;
		]
		;
	rdfs:label "Temporal Relation"^^xsd:string ;
	rdfs:comment
		"A relationship existing for a period of time."^^xsd:string ,
		"EXAMPLES:  employs-Employment, hasStreetAddress-EstablishedLocation. One important context for reifying a property."^^xsd:string ,
		"NOTE: A temporal relation must be gist:connectedTo a minimum of two objects. For example, a temporal relation representing a period of employment is connected both to the person and to the role/position they held."^^xsd:string
		;
	.

gist:Text
	a owl:Class ;
	rdfs:label "Text"^^xsd:string ;
	rdfs:comment "Content expressed as words and numbers (not graphics)."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Content
			[
				a owl:Restriction ;
				owl:onProperty gist:expressedIn ;
				owl:someValuesFrom gist:Language ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:containedText ;
				owl:someValuesFrom xsd:string ;
			]
		) ;
	] ;
	.

gist:TimeInstant
	a owl:Class ;
	rdfs:subClassOf
		[
			a owl:Restriction ;
			owl:onProperty gist:epoch ;
			owl:someValuesFrom xsd:double ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:hasPrecision ;
			owl:someValuesFrom gist:Duration ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:localDate ;
			owl:someValuesFrom xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:localDateTime ;
			owl:someValuesFrom xsd:dateTime ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:localTime ;
			owl:someValuesFrom xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:universalDate ;
			owl:someValuesFrom xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:universalDateTime ;
			owl:someValuesFrom xsd:dateTime ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty gist:universalTime ;
			owl:someValuesFrom xsd:string ;
		]
		;
	rdfs:label "Time Instant"^^xsd:string ;
	rdfs:comment
		"EXAMPLES:  A literal instant (as in 12:01.0001 January 1, 2008), or a broader but still single point in time (January 1, 2008). In the latter case, we are declaring a time instant to be an interval with no duration (or really a duration only equal to its precision)."^^xsd:string ,
		"In gistTop all time instants are Greenwich and the local equal universal.  In gistTime we introduce local time zones"^^xsd:string ,
		"NOTE: Our identity criteria require that something refers to each Time Instant instance."^^xsd:string
		;
	owl:disjointWith gist:UnitOfMeasure ;
	.

gist:TimeZone
	a owl:Class ;
	rdfs:label "Time Zone"^^xsd:string ;
	rdfs:comment "A region that observes a uniform standard time for legal, commercial, and social purposes.  A typical time zone averages 15? of longitude in width and typically observes a clock time one hour earlier than the zone immediately to the east."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:GeoRegion
			[
				a owl:Restriction ;
				owl:onProperty gist:offsetToUniversal ;
				owl:someValuesFrom gist:Duration ;
			]
		) ;
	] ;
	.

gist:TimeZoneStandard
	a owl:Class ;
	rdfs:label "Time Zone Standard"^^xsd:string ;
	rdfs:comment "The algorithm for getting from Greenwich Mean Time to local time, which includes the time zone offset and rules about daylight savings time."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Specification
			[
				a owl:Restriction ;
				owl:onProperty gist:basedOn ;
				owl:someValuesFrom gist:TimeZone ;
			]
		) ;
	] ;
	.

gist:Transaction
	a owl:Class ;
	rdfs:subClassOf gist:Event ;
	rdfs:label "Transaction"^^xsd:string ;
	rdfs:comment "An event which has an effect on at least one accumulator."^^xsd:string ;
	.

gist:UnitOfMeasure
	a owl:Class ;
	rdfs:label "Unit of Measure"^^xsd:string ;
	rdfs:comment "Standard unit by which we measure things"^^xsd:string ;
	.

gist:Volume
	a owl:Class ;
	rdfs:label "Volume"^^xsd:string ;
	rdfs:comment "Three-dimensional space, or equivalent fluid measurement."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:Magnitude
			[
				a owl:Restriction ;
				owl:onProperty gist:hasUoM ;
				owl:someValuesFrom gist:VolumeUnit ;
			]
		) ;
	] ;
	.

gist:VolumeUnit
	a owl:Class ;
	rdfs:label "Volume Unit"^^xsd:string ;
	rdfs:comment "Units of three-dimensional space, expressed here as an area times a distance."^^xsd:string ;
	owl:equivalentClass [
		a owl:Class ;
		owl:intersectionOf (
			gist:ProductUnit
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplicand ;
				owl:onClass gist:AreaUnit ;
				owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			]
			[
				a owl:Restriction ;
				owl:onProperty gist:multiplier ;
				owl:onClass gist:DistanceUnit ;
				owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			]
		) ;
	] ;
	.

gist:_USDollar
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_USDollar ;
	.

gist:_ampere
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_ampere ;
	.

gist:_bit
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	rdfs:comment "A bit (short for binary digit) is the smallest unit of data in a computer. A bit has a single binary value, either 0 or 1."^^xsd:string ;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_bit ;
	.

gist:_candela
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_candela ;
	.

gist:_day
	a
		owl:NamedIndividual ,
		gist:DurationUnit
		;
	gist:convertToBase "86400.0"^^xsd:double ;
	gist:hasBaseUnit gist:_second ;
	.

gist:_each
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_each ;
	.

gist:_greenwichTimeZone
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:TimeZoneStandard
		;
	.

gist:_kelvin
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:conversionOffset "0.0"^^xsd:double ;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_kelvin ;
	.

gist:_kilogram
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_kilogram ;
	.

gist:_meter
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_meter ;
	.

gist:_millisecond
	a
		owl:NamedIndividual ,
		gist:DurationUnit
		;
	gist:convertToBase "0.001"^^xsd:double ;
	gist:hasBaseUnit gist:_second ;
	.

gist:_minute
	a
		owl:NamedIndividual ,
		gist:DurationUnit
		;
	gist:convertToBase "60.0"^^xsd:double ;
	gist:hasBaseUnit gist:_second ;
	.

gist:_mole
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_mole ;
	.

gist:_one_day
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:Duration
		;
	gist:decimalValue "1.0"^^xsd:double ;
	gist:hasUoM gist:_day ;
	.

gist:_one_millisecond
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:Duration
		;
	gist:decimalValue "1.0"^^xsd:double ;
	gist:hasUoM gist:_millisecond ;
	.

gist:_one_minute
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:Duration
		;
	gist:decimalValue "1.0"^^xsd:double ;
	gist:hasUoM gist:_minute ;
	.

gist:_second
	a
		owl:NamedIndividual ,
		owl:Thing ,
		gist:BaseUnit ,
		gist:DurationUnit
		;
	gist:convertToBase "1.0"^^xsd:double ;
	gist:hasBaseUnit gist:_second ;
	.

gist:about
	a owl:ObjectProperty ;
	rdfs:label "About"^^xsd:string ;
	rdfs:comment "Subject matter of a document."^^xsd:string ;
	rdfs:domain gist:Content ;
	owl:inverseOf gist:describedIn ;
	.

gist:accepts
	a owl:ObjectProperty ;
	rdfs:label "Accepts"^^xsd:string ;
	rdfs:comment "The types of input messages that will be allowed"^^xsd:string ;
	.

gist:actual
	a owl:ObjectProperty ;
	rdfs:label "Actual"^^xsd:string ;
	rdfs:comment "When something did occur, therefore noting an historical event."^^xsd:string ;
	rdfs:range gist:TimeInstant ;
	.

gist:actualEnd
	a owl:ObjectProperty ;
	rdfs:subPropertyOf
		gist:actual ,
		gist:end
		;
	rdfs:label "Actual End"^^xsd:string ;
	rdfs:comment "When something did end, therefore noting an historical event."^^xsd:string ;
	.

gist:actualStart
	a owl:ObjectProperty ;
	rdfs:subPropertyOf
		gist:actual ,
		gist:start
		;
	rdfs:label "Actual Start"^^xsd:string ;
	rdfs:comment "When something did start, therefore noting an historical event."^^xsd:string ;
	.

gist:affectedBy
	a owl:ObjectProperty ;
	rdfs:label "Affected By"^^xsd:string ;
	rdfs:comment "Where the effect came from"^^xsd:string ;
	owl:inverseOf gist:affects ;
	.

gist:affects
	a owl:ObjectProperty ;
	rdfs:label "Affects"^^xsd:string ;
	rdfs:comment "the subject has or had or will have an effect on the object"^^xsd:string ;
	.

gist:allocatedBy
	a owl:ObjectProperty ;
	rdfs:label "Allocated By"^^xsd:string ;
	rdfs:comment "Connection between an ID and the thing that minted the ID.  It may be a person or organization, or could be an algorithm (next available or random number generator)"^^xsd:string ;
	rdfs:range [
		a owl:Class ;
		owl:unionOf (
			gist:IntellectualProperty
			gist:Organization
			gist:Person
		) ;
	] ;
	.

gist:allows
	a owl:ObjectProperty ;
	rdfs:label "Allows"^^xsd:string ;
	rdfs:comment "The intention (say a grant) allows a particular kind of activity (for instance egress)"^^xsd:string ;
	rdfs:domain gist:Intention ;
	rdfs:range gist:Behavior ;
	.

gist:aspectOf
	a owl:ObjectProperty ;
	rdfs:label "Aspect Of"^^xsd:string ;
	rdfs:comment "What this aspect is referring to"^^xsd:string ;
	.

gist:basedOn
	a owl:ObjectProperty ;
	rdfs:label "Based On"^^xsd:string ;
	rdfs:comment "pointer to the thing something was derived from"^^xsd:string ;
	owl:inverseOf gist:basisFor ;
	.

gist:basisFor
	a owl:ObjectProperty ;
	rdfs:label "Basis For"^^xsd:string ;
	rdfs:comment "Reason for an event"^^xsd:string ;
	.

gist:categorizedBy
	a owl:ObjectProperty ;
	rdfs:label "Categorized By"^^xsd:string ;
	rdfs:comment "Points to a taxonomy item or other less formally defined class."^^xsd:string ;
	.

gist:characterizedAs
	a owl:ObjectProperty ;
	rdfs:label "Characterized As"^^xsd:string ;
	rdfs:comment "A way to categorize a behavior."^^xsd:string ;
	rdfs:domain gist:Event ;
	rdfs:range gist:Behavior ;
	.

gist:communicationAddressOf
	a owl:ObjectProperty ;
	rdfs:label "Communication Address Of"^^xsd:string ;
	rdfs:comment "Whose address is this"^^xsd:string ;
	owl:inverseOf gist:hasCommunicationAddress ;
	.

gist:conformsTo
	a owl:ObjectProperty ;
	rdfs:label "Conforms To"^^xsd:string ;
	rdfs:comment "The subject conforms to the Object, e.g. meet an obligation, meet terms of an offer, adhere to a specification"^^xsd:string ;
	rdfs:range gist:Intention ;
	.

gist:connectedTo
	a owl:ObjectProperty ;
	rdfs:label "Connected To"^^xsd:string ;
	rdfs:comment "A non-owning, non-causal, non-subordinate (i.e., peer-to-peer) relationship."^^xsd:string ;
	.

gist:containedText
	a owl:DatatypeProperty ;
	rdfs:label "Contained Text"^^xsd:string ;
	rdfs:comment "Links to the string corresponding to Text"^^xsd:string ;
	rdfs:range xsd:string ;
	.

gist:contributesTo
	a owl:ObjectProperty ;
	rdfs:label "Contributes To"^^xsd:string ;
	rdfs:comment "The parts of a system contribute to the goal/ function of the whole system"^^xsd:string ;
	.

gist:conversionOffset
	a owl:DatatypeProperty ;
	rdfs:label "Conversion Offset"^^xsd:string ;
	rdfs:comment "Add this number to get to the zero point.  On the Celsius scale, the conversionOffset is -273.15 degrees C. On the Fahrenheit scale it is -459.67 degrees.  Is equal to 0 when the unit has the same zero point as the base unit. e.g. inch, meter."^^xsd:string ;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range xsd:double ;
	.

gist:convertToBase
	a owl:DatatypeProperty ;
	rdfs:label "ConvertToBase"^^xsd:string ;
	rdfs:comment """The conversion factor used to get to the base unit.  E.g., multiplying by 0.0254 gets you from inches to meters. Divide by this number to go the other way. Used in conjunction with conversionOffset to convert from one unit to another. 
Degrees K =  (Degrees F - conversionOffset) * convertToBase. Or K = (F-(-469.67)) * (5/9).  To go the other way: F = (K * 9/5) -469.67.  Try it on Google."""^^xsd:string ;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range xsd:double ;
	.

gist:convertToStandard
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf gist:convertToBase ;
	rdfs:label "Convert To Standard"^^xsd:string ;
	rdfs:comment "Note this kind of conversion will only work with temperatures if they are in Kelvin or Rankine (with a true 0).  You multiply to get to the base, divide to go from the base. mph to mps is .44704.  The multiple from kph to mps is .277778 .  To convert 60 mph to kph is (60 * .44704 / .277778 or 96.56056 kph"^^xsd:string ;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range xsd:double ;
	.

gist:decimalValue
	a owl:DatatypeProperty ;
	rdfs:label "Decimal Value"^^xsd:string ;
	rdfs:comment "The actual value of a magnitude."^^xsd:string ;
	rdfs:domain gist:Magnitude ;
	rdfs:range xsd:double ;
	.

gist:denominator
	a owl:ObjectProperty ;
	rdfs:label "Denominator"^^xsd:string ;
	rdfs:comment "Relates a RatioUnit such as meters/second to the denominator Unit (e.g. second)."^^xsd:string ;
	rdfs:domain gist:RatioUnit ;
	rdfs:range gist:UnitOfMeasure ;
	.

gist:describedIn
	a owl:ObjectProperty ;
	rdfs:label "Described In"^^xsd:string ;
	rdfs:comment "Document the subject matter appeared in"^^xsd:string ;
	.

gist:directPartOf
	a owl:ObjectProperty ;
	rdfs:label "Direct Part Of"^^xsd:string ;
	rdfs:comment "The relationship between a  part and a whole where the part has independent existence."^^xsd:string ;
	owl:inverseOf gist:hasDirectPart ;
	.

gist:directSubTaskOf
	a owl:ObjectProperty ;
	rdfs:label "Direct Sub Task Of"^^xsd:string ;
	rdfs:comment "Immediate parent task"^^xsd:string ;
	owl:inverseOf gist:hasDirectSubTask ;
	.

gist:directlyPrecededBy
	a owl:ObjectProperty ;
	rdfs:label "Directly Preceded By"^^xsd:string ;
	rdfs:comment "Inverse of directly precedes"^^xsd:string ;
	owl:inverseOf gist:directlyPrecedes ;
	.

gist:directlyPrecedes
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:precedes ;
	rdfs:label "Directly Precedes"^^xsd:string ;
	rdfs:comment "A generic ordering relation indicating that the Subject comes immediately  before the Object."^^xsd:string ;
	.

gist:directlyRecognizedBy
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:recognizedBy ;
	rdfs:label "Directly RecognizedBy"^^xsd:string ;
	rdfs:comment "The party doing the recognition"^^xsd:string ;
	.

gist:directs
	a owl:ObjectProperty ;
	rdfs:label "Directs"^^xsd:string ;
	rdfs:comment "The set of actuators that a controller can affect"^^xsd:string ;
	.

gist:encryptedText
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf gist:containedText ;
	rdfs:label "Encrypted Text"^^xsd:string ;
	rdfs:comment "Links to the string corresponding to EncryptedText"^^xsd:string ;
	rdfs:range xsd:string ;
	.

gist:end
	a owl:ObjectProperty ;
	rdfs:label "End"^^xsd:string ;
	rdfs:comment "Connects the subject to its end time."^^xsd:string ;
	rdfs:range gist:TimeInstant ;
	.

gist:epoch
	a owl:DatatypeProperty ;
	rdfs:label "Epoch"^^xsd:string ;
	rdfs:comment "seconds since 1/1/1970 UTC (unix time )"^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	rdfs:range xsd:double ;
	.

gist:expressedIn
	a owl:ObjectProperty ;
	rdfs:label "Expressed In"^^xsd:string ;
	rdfs:comment "The language something was expressed in"^^xsd:string ;
	.

gist:fromAgent
	a owl:ObjectProperty ;
	rdfs:label "From Agent"^^xsd:string ;
	rdfs:comment "The source of a message or shipment"^^xsd:string ;
	rdfs:range [
		a owl:Class ;
		owl:unionOf (
			gist:Address
			gist:Organization
			gist:Person
		) ;
	] ;
	.

gist:fromPlace
	a owl:ObjectProperty ;
	rdfs:label "From Place"^^xsd:string ;
	rdfs:comment "origin"^^xsd:string ;
	rdfs:range gist:Place ;
	.

gist:geoContainedIn
	a owl:ObjectProperty ;
	rdfs:label "Geo Contained In"^^xsd:string ;
	rdfs:comment "All the transitive places something is located in"^^xsd:string ;
	owl:inverseOf gist:geoContains ;
	.

gist:geoContains
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "Geo Contains"^^xsd:string ;
	rdfs:comment "Transitive version of geoDirectlyContains"^^xsd:string ;
	rdfs:domain gist:Place ;
	rdfs:range gist:Place ;
	.

gist:geoDirectlyContainedIn
	a owl:ObjectProperty ;
	rdfs:label "Geo Directly Contained In"^^xsd:string ;
	rdfs:comment "the neighborhood is in the city"^^xsd:string ;
	owl:inverseOf gist:geoDirectlyContains ;
	.

gist:geoDirectlyContains
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:geoContains ;
	rdfs:label "Geo Directly Contains"^^xsd:string ;
	rdfs:comment "The subject geospatially contains the object.  E.g. the area of a city contains the area of its neighborhoods"^^xsd:string ;
	.

gist:geoOccupiedBy
	a owl:ObjectProperty ;
	rdfs:label "Geo Occupied By"^^xsd:string ;
	rdfs:comment "what is in the location"^^xsd:string ;
	owl:inverseOf gist:geoOccupies ;
	.

gist:geoOccupies
	a owl:ObjectProperty ;
	rdfs:label "Geo Occupies"^^xsd:string ;
	rdfs:comment "A thing occupies are region"^^xsd:string ;
	rdfs:domain [
		a owl:Class ;
		owl:unionOf (
			gist:PhysicalIdentifiableItem
			gist:PhysicalSubstance
		) ;
	] ;
	rdfs:range gist:Place ;
	.

gist:getter
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:hasParty ;
	rdfs:label "Getter"^^xsd:string ;
	rdfs:comment "The recipient"^^xsd:string ;
	owl:propertyDisjointWith gist:giver ;
	.

gist:giver
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:hasParty ;
	rdfs:label "Giver"^^xsd:string ;
	rdfs:comment "The active party, the one with the obligation or the one initiating the transfer"^^xsd:string ;
	.

gist:governedBy
	a owl:ObjectProperty ;
	rdfs:label "Governed By"^^xsd:string ;
	rdfs:comment "A reference from the thing being governed to the governor"^^xsd:string ;
	owl:inverseOf gist:governs ;
	.

gist:governs
	a owl:ObjectProperty ;
	rdfs:label "Governs"^^xsd:string ;
	rdfs:comment "The subject controls or inhibits the object in some way"^^xsd:string ;
	rdfs:domain [
		a owl:Class ;
		owl:unionOf (
			gist:Intention
			gist:Organization
			gist:Person
			gist:Template
		) ;
	] ;
	rdfs:range [
		a owl:Class ;
		owl:unionOf (
			gist:Category
			gist:Content
			gist:GeoRegion
			gist:IntellectualProperty
			gist:Intention
			gist:Organization
			gist:Person
			gist:PhysicalIdentifiableItem
			gist:PhysicalSubstance
		) ;
	] ;
	.

gist:hasAltitude
	a owl:ObjectProperty ;
	rdfs:label "Has Altitude"^^xsd:string ;
	rdfs:comment "Distance above sea level"^^xsd:string ;
	rdfs:domain gist:GeoPoint ;
	rdfs:range gist:Extent ;
	.

gist:hasBaseUnit
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:hasStandardUnit ;
	rdfs:label "Has Base Unit"^^xsd:string ;
	rdfs:comment
		"EXAMPLE: saying that a furlong hasBaseUnit  meter says it is a DistanceUnit."^^xsd:string ,
		"Relates a UnitOfMeasure to its BaseUnit.  This indicates what kind Unit something is, e.g. saying that a furlong hasBaseUnit  meter says it is a DistanceUnit."^^xsd:string
		;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range gist:BaseUnit ;
	.

gist:hasBirthDate
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:actualStart ;
	rdfs:label "Has Birthdate"^^xsd:string ;
	rdfs:comment 'Date a living thing was "born" (or germinated, for plants).'^^xsd:string ;
	rdfs:domain gist:LivingThing ;
	rdfs:range gist:TimeInstant ;
	.

gist:hasCommunicationAddress
	a owl:ObjectProperty ;
	rdfs:label "Has Communication Address"^^xsd:string ;
	rdfs:comment "Points to a general class of places you can send messages including postal addresses, fax numbers, phone numbers, email, web site, etc."^^xsd:string ;
	rdfs:range gist:Address ;
	.

gist:hasDeathDate
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:actualEnd ;
	rdfs:label "Has Death Date"^^xsd:string ;
	rdfs:comment "Date a living thing died"^^xsd:string ;
	rdfs:domain gist:LivingThing ;
	rdfs:range gist:TimeInstant ;
	.

gist:hasDirectPart
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:hasPart ;
	rdfs:label "Has Direct Part"^^xsd:string ;
	rdfs:comment
		"NOTE: No cascading delete."^^xsd:string ,
		"NOTE: Use this property to directly associate parts. hasPart is the transitive version."^^xsd:string ,
		"The relationship between a whole and a part where the part has independent existence."^^xsd:string
		;
	.

gist:hasDirectSubCategory
	a owl:ObjectProperty ;
	rdfs:label "has direct subcategory"^^xsd:string ;
	rdfs:comment
		"Note: Unlike its superproperty gist:hasSubCategory, this property is not transitive. It is essentially the same as the non-transitive skos:narrower, using gist:Category rather than skos:Concept."^^xsd:string ,
		"The subject category is a supercategory of the object category. This property defines the direct links in a category hierarchy; no intermediate categories can exist between the direct links."^^xsd:string
		;
	.

gist:hasDirectSubTask
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:hasSubTask ;
	rdfs:label "Has Direct Sub Task"^^xsd:string ;
	rdfs:comment "Immediate child task"^^xsd:string ;
	rdfs:domain gist:Task ;
	rdfs:range gist:Task ;
	.

gist:hasDirectSuperCategory
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:hasSuperCategory ;
	rdfs:label "has direct supercategory"^^xsd:string ;
	rdfs:comment
		"Note: Unlike its superproperty gist:hasSuperCategory, this property is not transitive. It is essentially the same as the non-transitive skos:broader, using gist:Category rather than skos:Concept."^^xsd:string ,
		"The subject category is a subcategory of the object category. This property defines the direct links in a category hierarchy; no intermediate categories can exist between the direct links."^^xsd:string
		;
	.

gist:hasFromNode
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:networkConnection ;
	rdfs:label "Has From Node"^^xsd:string ;
	rdfs:comment "The connections at the abstract level of a network.  Note this is directed but the parent is the undirected version"^^xsd:string ;
	.

gist:hasGoal
	a owl:ObjectProperty ;
	rdfs:label "Has Goal"^^xsd:string ;
	rdfs:comment "The reason for doing something"^^xsd:string ;
	.

gist:hasIncumbent
	a owl:ObjectProperty ;
	rdfs:label "Has Incumbent"^^xsd:string ;
	rdfs:comment "What equipment or person is currently in this node.  Note to create a temporal view make a TemporalRelation for this property"^^xsd:string ;
	.

gist:hasJurisdiction
	a owl:ObjectProperty ;
	rdfs:label "Has Jurisdiction"^^xsd:string ;
	rdfs:comment "when laws and contracts are meted out"^^xsd:string ;
	.

gist:hasMagnitude
	a owl:ObjectProperty ;
	rdfs:label "Has Magnitude"^^xsd:string ;
	rdfs:comment "To have a comparable numerical value. Each magnitude has a unit."^^xsd:string ;
	rdfs:range gist:Magnitude ;
	.

gist:hasMember
	a owl:ObjectProperty ;
	rdfs:label "Has Member"^^xsd:string ;
	rdfs:comment "Relates a Collection to its member individuals."^^xsd:string ;
	owl:inverseOf gist:memberOf ;
	.

gist:hasNavigationalChild
	a owl:ObjectProperty ;
	rdfs:label "Has Navigational Child"^^xsd:string ;
	rdfs:comment "Used for informal hierarchical taxonomies.  Supports polyhierarchies"^^xsd:string ;
	owl:inverseOf gist:hasNavigationalParent ;
	.

gist:hasNavigationalParent
	a owl:ObjectProperty ;
	rdfs:label "Has Navigational Parent"^^xsd:string ;
	rdfs:comment "Used for informal hierarchical taxonomies.  Supports polyhierarchies"^^xsd:string ;
	.

gist:hasOrderedMember
	a
		owl:InverseFunctionalProperty ,
		owl:ObjectProperty
		;
	rdfs:subPropertyOf gist:hasMember ;
	rdfs:label "Has Ordered Member"^^xsd:string ;
	rdfs:comment "An inverse functional version of hasMember to ensure that no OrderedMember can be in more than one OrderedCollection., which can quickly lead to problems."^^xsd:string ;
	owl:inverseOf gist:orderedMemberOf ;
	.

gist:hasPart
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "Has Part"^^xsd:string ;
	rdfs:comment "The transitive version of hasDirectPart"^^xsd:string ;
	owl:inverseOf gist:partOf ;
	.

gist:hasParty
	a owl:ObjectProperty ;
	rdfs:label "Has Party"^^xsd:string ;
	rdfs:comment "The people or organizations participating in an agreement or obligation"^^xsd:string ;
	rdfs:range [
		a owl:Class ;
		owl:unionOf (
			gist:Organization
			gist:Person
		) ;
	] ;
	.

gist:hasPhysicalLocation
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "Has Physical Location"^^xsd:string ;
	rdfs:comment "Where something is located"^^xsd:string ;
	rdfs:range gist:Place ;
	.

gist:hasPrecision
	a owl:ObjectProperty ;
	rdfs:label "Has Precision"^^xsd:string ;
	rdfs:comment
		"EXAMPLE:  Temperature precise to tenth of a degree C; TimeInstant precise to 24 hours."^^xsd:string ,
		"Links a Magnitude to the degree of accuracy of the numeric value.   This allows for fuzzy numbers.  All magnitudes have a precision.  Usually we don't record them.  When we do this, it will be a value whose extent covers 2 standard deviations around the stated magnitude"^^xsd:string ,
		"NOTE:  Most frequently apples to Magnitude(s) and TimeInstant. Could also apply to a measurement."^^xsd:string
		;
	rdfs:range gist:Magnitude ;
	.

gist:hasStandardUnit
	a owl:ObjectProperty ;
	rdfs:label "Has Standard Unit"^^xsd:string ;
	rdfs:comment "For a complex unit refers to a unit that has all the component parts in SI"^^xsd:string ;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range gist:CoherentUnit ;
	.

gist:hasStreetAddress
	a owl:ObjectProperty ;
	rdfs:label "Has Street Address"^^xsd:string ;
	rdfs:comment "A place that can be found on a map, has geo coordinates; you could live or work there."^^xsd:string ;
	rdfs:range gist:BuildingAddress ;
	owl:inverseOf gist:streetAddressOf ;
	.

gist:hasSubCategory
	a owl:ObjectProperty ;
	rdfs:label "has subcategory"^^xsd:string ;
	rdfs:comment
		"Note: This is essentially the same as skos:narrowerTransitive, using gist:Category instead of skos:Concept."^^xsd:string ,
		"The subject category is inclusive of, or broader than, the object category. Everything categorized by the subcategory can be inferred to be categorized by the supercategory."^^xsd:string
		;
	owl:inverseOf gist:hasSuperCategory ;
	.

gist:hasSubTask
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "Has Sub Task"^^xsd:string ;
	rdfs:comment "A task that is part of a larger task. The time frame of the subtasks may overlap but may not extend beyond the time frame of the parent task. A subtask may be part of more than one parent task."^^xsd:string ;
	rdfs:domain gist:Task ;
	rdfs:range gist:Task ;
	owl:inverseOf gist:subTaskOf ;
	.

gist:hasSuperCategory
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "has supercategory"^^xsd:string ;
	rdfs:comment
		"Note: This is essentially the same as skos:broaderTransitive, using gist:Category instead of skos:Concept."^^xsd:string ,
		"The subject category is included by, or narrower than, the object category. Everything categorized by the subcategory can be inferred to be categorized by the supercategory."^^xsd:string
		;
	.

gist:hasTag
	a owl:DatatypeProperty ;
	rdfs:label "has Tag"^^xsd:string ;
	rdfs:comment "Used for folksonomy style categories (non controlled vocabulary)"^^xsd:string ;
	.

gist:hasToNode
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:networkConnection ;
	rdfs:label "Has To Node"^^xsd:string ;
	rdfs:comment "The connections at the abstract level of a network. Note this is directed but the parent is the undirected version"^^xsd:string ;
	.

gist:hasUniqueNavigationalParent
	a
		owl:FunctionalProperty ,
		owl:ObjectProperty
		;
	rdfs:subPropertyOf gist:hasNavigationalParent ;
	rdfs:label "Has Unique Navigational Parent"^^xsd:string ;
	rdfs:comment "Used for taxos that must have single parents"^^xsd:string ;
	.

gist:hasUniqueSuperCategory
	a
		owl:FunctionalProperty ,
		owl:ObjectProperty
		;
	rdfs:subPropertyOf gist:hasSuperCategory ;
	rdfs:label "Has Unique Super Category"^^xsd:string ;
	rdfs:comment "Used for taxos that must have single parents"^^xsd:string ;
	.

gist:hasUoM
	a owl:ObjectProperty ;
	rdfs:label "Has Unit of Measure"^^xsd:string ;
	rdfs:comment "Which unit of measure you are using. All measures are expressed in some unit of measure, even if we don't know what it is initially."^^xsd:string ;
	rdfs:domain gist:Magnitude ;
	rdfs:range gist:UnitOfMeasure ;
	.

gist:identifiedBy
	a
		owl:InverseFunctionalProperty ,
		owl:ObjectProperty
		;
	rdfs:label "Identified By"^^xsd:string ;
	rdfs:comment "This is like a URI: a thing can have more than one ID, but each of the IDs must refer to a unique thing."^^xsd:string ;
	rdfs:range gist:ID ;
	owl:inverseOf gist:identifies ;
	.

gist:identifies
	a
		owl:InverseFunctionalProperty ,
		owl:ObjectProperty
		;
	rdfs:label "Identifies"^^xsd:string ;
	rdfs:comment "The thing the identifier refers to."^^xsd:string ;
	.

gist:lastModifiedOn
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:actual ;
	rdfs:label "Last Modified On"^^xsd:string ;
	rdfs:comment "Date that something was modified."^^xsd:string ;
	rdfs:range gist:TimeInstant ;
	.

gist:latitude
	a owl:DatatypeProperty ;
	rdfs:label "Latitude"^^xsd:string ;
	rdfs:comment "degrees above or below equator"^^xsd:string ;
	rdfs:domain gist:GeoPoint ;
	rdfs:range xsd:double ;
	.

gist:license
	a owl:AnnotationProperty ;
	rdfs:label "License"^^xsd:string ;
	rdfs:comment "An annotation for providing the licensing on this or derivative ontologies"^^xsd:string ;
	.

gist:localDate
	a owl:DatatypeProperty ;
	rdfs:label "Local Date"^^xsd:string ;
	rdfs:comment "LD"^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	.

gist:localDateTime
	a owl:DatatypeProperty ;
	rdfs:label "Local Date Time"^^xsd:string ;
	rdfs:comment "LDT"^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	rdfs:range xsd:dateTime ;
	.

gist:localTime
	a owl:DatatypeProperty ;
	rdfs:label "Local Time"^^xsd:string ;
	rdfs:comment "LT"^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	.

gist:longitude
	a owl:DatatypeProperty ;
	rdfs:label "Longitude"^^xsd:string ;
	rdfs:comment "degrees from GM"^^xsd:string ;
	rdfs:domain gist:GeoPoint ;
	rdfs:range xsd:double ;
	.

gist:madeUpOf
	a owl:ObjectProperty ;
	rdfs:label "Made Up Of"^^xsd:string ;
	rdfs:comment "as in the vase is made up of clay"^^xsd:string ;
	rdfs:range gist:PhysicalSubstance ;
	.

gist:memberOf
	a owl:ObjectProperty ;
	rdfs:label "Member Of"^^xsd:string ;
	rdfs:comment "What group the member is in"^^xsd:string ;
	.

gist:multiplicand
	a owl:ObjectProperty ;
	rdfs:label "Multiplicand"^^xsd:string ;
	rdfs:comment "Relates a ProductUnit such as square mile to the second of two units multiplied together (e.g. mile)."^^xsd:string ;
	rdfs:domain gist:ProductUnit ;
	rdfs:range gist:UnitOfMeasure ;
	.

gist:multiplier
	a owl:ObjectProperty ;
	rdfs:label "Multiplier"^^xsd:string ;
	rdfs:comment "Relates a ProductUnit such as square mile to the first of two units multiplied together (e.g. mile)"^^xsd:string ;
	rdfs:domain gist:ProductUnit ;
	rdfs:range gist:UnitOfMeasure ;
	.

gist:name
	a owl:DatatypeProperty ;
	rdfs:label "Name"^^xsd:string ;
	rdfs:comment "Relates an individual to a casual name.  NOTE: For more formal use, consider using a sub property of the object property, identifiedBy."^^xsd:string ;
	rdfs:range xsd:string ;
	.

gist:networkConnection
	a owl:ObjectProperty ;
	rdfs:label "Network Connection"^^xsd:string ;
	rdfs:comment "abstract connection for when connections are undirected"^^xsd:string ;
	.

gist:numerator
	a owl:ObjectProperty ;
	rdfs:label "Numerator"^^xsd:string ;
	rdfs:comment "Relates a RatioUnit such as meter(s)/second to the numerator Unit (e.g. meter)."^^xsd:string ;
	rdfs:domain gist:RatioUnit ;
	rdfs:range gist:UnitOfMeasure ;
	.

gist:occursAt
	a owl:ObjectProperty ;
	rdfs:label "OccurAt"^^xsd:string ;
	rdfs:comment "The geospatial place where something happened or will happen"^^xsd:string ;
	.

gist:offsetToUniversal
	a owl:ObjectProperty ;
	rdfs:label "Offset To Universal"^^xsd:string ;
	rdfs:comment "How many hours the time zone is off GMT"^^xsd:string ;
	rdfs:domain gist:TimeZone ;
	rdfs:range gist:Duration ;
	.

gist:offspringOf
	a owl:ObjectProperty ;
	rdfs:label "Offspring Of"^^xsd:string ;
	rdfs:comment "Biological offspring"^^xsd:string ;
	rdfs:domain gist:LivingThing ;
	rdfs:range gist:LivingThing ;
	.

gist:orderedMemberOf
	a
		owl:FunctionalProperty ,
		owl:ObjectProperty
		;
	rdfs:label "Ordered Member Of"^^xsd:string ;
	rdfs:comment "An inverse of hasOrderedMember"^^xsd:string ;
	.

gist:owns
	a owl:ObjectProperty ;
	rdfs:label "Owns"^^xsd:string ;
	rdfs:comment "Possessing and controlling.  Ultimate form of ownership is the right to destroy.  Long list of potential Range classes"^^xsd:string ;
	rdfs:domain [
		a owl:Class ;
		owl:unionOf (
			gist:Organization
			gist:Person
		) ;
	] ;
	.

gist:parentOf
	a owl:ObjectProperty ;
	rdfs:label "Parent Of"^^xsd:string ;
	rdfs:comment "Biological Parent"^^xsd:string ;
	.

gist:partOf
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "Part Of"^^xsd:string ;
	rdfs:comment "The transitive version of directPartOf"^^xsd:string ;
	.

gist:permanentGeoOccupiedBy
	a owl:ObjectProperty ;
	rdfs:label "Permanent Geo Occupied By"^^xsd:string ;
	rdfs:comment "What is in the fixed location"^^xsd:string ;
	owl:inverseOf gist:permanentGeoOccupies ;
	.

gist:permanentGeoOccupies
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:geoOccupies ;
	rdfs:label "Permanent Geo Occupies"^^xsd:string ;
	rdfs:comment "To be in a fixed position on the earth"^^xsd:string ;
	.

gist:planned
	a owl:ObjectProperty ;
	rdfs:label "Planned"^^xsd:string ;
	rdfs:comment "Dates that were in the future at the time they were made."^^xsd:string ;
	rdfs:range gist:TimeInstant ;
	.

gist:plannedEnd
	a owl:ObjectProperty ;
	rdfs:subPropertyOf
		gist:end ,
		gist:planned
		;
	rdfs:label "Planned End"^^xsd:string ;
	rdfs:comment
		"A date/time that was at least at some point in time in the future. It may be in the past now, but when we planned it, it was in the future."^^xsd:string ,
		"NOTE:  Most frequently apples to Event(s) and Offer(s). E.g. a conference or sale offer."^^xsd:string
		;
	rdfs:range gist:TimeInstant ;
	.

gist:plannedStart
	a owl:ObjectProperty ;
	rdfs:subPropertyOf
		gist:planned ,
		gist:start
		;
	rdfs:label "Planned Start"^^xsd:string ;
	rdfs:comment "A date/time that was at least at some point in time in the future. It may be in the past now, but when we planned it, it was in the future."^^xsd:string ;
	rdfs:range gist:TimeInstant ;
	.

gist:precedes
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "Precedes"^^xsd:string ;
	rdfs:comment "A generic ordering relation indicating that the Subject has the same order as or comes before the Object. The 'greater than or equal to' symbol is often used for this relation."^^xsd:string ;
	.

gist:prevents
	a owl:ObjectProperty ;
	rdfs:label "Prevents"^^xsd:string ;
	rdfs:comment "The intention (say a law) is intended to prevent this kind of behavior (say jay-walking)"^^xsd:string ;
	rdfs:domain gist:Intention ;
	rdfs:range gist:Behavior ;
	.

gist:produces
	a owl:ObjectProperty ;
	rdfs:label "Produces"^^xsd:string ;
	rdfs:comment
		"EXAMPLE: a task produces a deliverable."^^xsd:string ,
		"The subject creates the object."^^xsd:string
		;
	.

gist:recognizedBy
	a owl:ObjectProperty ;
	rdfs:label "Recognized By"^^xsd:string ;
	rdfs:comment "The entity that formally acknowledges the existence of, as the State recognizes the existence of a particular company"^^xsd:string ;
	rdfs:range [
		a owl:Class ;
		owl:unionOf (
			gist:Organization
			gist:Person
		) ;
	] ;
	owl:inverseOf gist:recognizes ;
	.

gist:recognizes
	a owl:ObjectProperty ;
	rdfs:label "Recognizes"^^xsd:string ;
	rdfs:comment "Recognizes"^^xsd:string ;
	.

gist:recordedOn
	a owl:ObjectProperty ;
	rdfs:subPropertyOf gist:actual ;
	rdfs:label "Recorded On"^^xsd:string ;
	rdfs:comment "Date that something was posted, not necessarily the date it occurred. Must be after the occurred date, but could be before or after the planned date. (Unusual, but I could record today that I expected to be paid last week.)"^^xsd:string ;
	rdfs:range gist:TimeInstant ;
	.

gist:renderedOn
	a owl:ObjectProperty ;
	rdfs:label "Rendered On"^^xsd:string ;
	rdfs:comment "What media something was rendered On"^^xsd:string ;
	.

gist:requires
	a owl:ObjectProperty ;
	rdfs:label "Requires"^^xsd:string ;
	rdfs:comment "An intention that sets out a state of satisfaction (you are required to drive on right side of the road)"^^xsd:string ;
	rdfs:domain gist:Intention ;
	rdfs:range gist:Behavior ;
	.

gist:respondsTo
	a owl:ObjectProperty ;
	rdfs:label "Responds to"^^xsd:string ;
	rdfs:comment "The set of sensors that a controller is attached to"^^xsd:string ;
	.

gist:sameTimeAs
	a owl:ObjectProperty ;
	rdfs:label "Same Time As"^^xsd:string ;
	rdfs:comment "We can have two local time instants refer to the same time, the same universal time."^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	rdfs:range gist:TimeInstant ;
	.

gist:sequence
	a owl:DatatypeProperty ;
	rdfs:label "Sequence"^^xsd:string ;
	rdfs:comment "For ordering ordered lists."^^xsd:string ;
	rdfs:range xsd:integer ;
	.

gist:start
	a owl:ObjectProperty ;
	rdfs:label "Start"^^xsd:string ;
	rdfs:comment "Connects the subject to its start time."^^xsd:string ;
	rdfs:range gist:TimeInstant ;
	.

gist:streetAddressOf
	a owl:ObjectProperty ;
	rdfs:label "Street Address Of"^^xsd:string ;
	rdfs:comment "Whose street address is this"^^xsd:string ;
	.

gist:subTaskOf
	a
		owl:ObjectProperty ,
		owl:TransitiveProperty
		;
	rdfs:label "Sub Task Of"^^xsd:string ;
	rdfs:comment "All the upper tasks this task belongs to"^^xsd:string ;
	.

gist:timeZoneStandardUsed
	a owl:ObjectProperty ;
	rdfs:label "Time Zone Standard Used"^^xsd:string ;
	rdfs:comment 'the "time zone" with Daylight Savings adjust'^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	rdfs:range gist:TimeZoneStandard ;
	.

gist:toAgent
	a owl:ObjectProperty ;
	rdfs:label "To Agent"^^xsd:string ;
	rdfs:comment 'Comment: this is not the inverse of fromAgent. A message can be from someone. If we made it the inverse the person would be "to" the message'^^xsd:string ;
	rdfs:range [
		a owl:Class ;
		owl:unionOf (
			gist:Address
			gist:Organization
			gist:Person
		) ;
	] ;
	.

gist:toPlace
	a owl:ObjectProperty ;
	rdfs:label "To Place"^^xsd:string ;
	rdfs:comment "Destination"^^xsd:string ;
	rdfs:range gist:Place ;
	.

gist:triggeredBy
	a owl:ObjectProperty ;
	rdfs:label "Triggered By"^^xsd:string ;
	rdfs:comment "general causal relation.  For obligations a property that describes what would happen to trigger the contingent obligation.  In most cases, before the Contingent becomes an Obligation, the triggered by event is a planned event (that is it hasn't happened yet -- if it had happened the contingency would no longer be contingent.  In most cases it will be  a ContingentEvent .  Other uses include controls, processes etc"^^xsd:string ;
	.

gist:uniqueText
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:label "Unique Text"^^xsd:string ;
	rdfs:comment "This is used for the actual value of a key or ID where you don't want the possibility of having more than one."^^xsd:string ;
	rdfs:range xsd:string ;
	.

gist:unitSymbol
	a owl:DatatypeProperty ;
	rdfs:label "Unit Symbol"^^xsd:string ;
	rdfs:comment "The standard symbol for the unit NOT using any special characters.  E.g. square meter would be m^2 rather than m?."^^xsd:string ;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range xsd:string ;
	.

gist:unitSymbolHTML
	a owl:DatatypeProperty ;
	rdfs:label "Unit Symbol HTML"^^xsd:string ;
	rdfs:comment 'The standard symbol for the unit in HTML format for  pretty printing, may use special characters.  E.g. to show square meter as  m? rather than m^2, the value of this property would be "m&sup2;" This is for when Unicode not supported and the display will be HTML format.'^^xsd:string ;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range xsd:string ;
	.

gist:unitSymbolUnicode
	a owl:DatatypeProperty ;
	rdfs:label "Unit Symbol Unicode"^^xsd:string ;
	rdfs:comment "The standard symbol for the unit preferred for pretty printing, may use special characters.  E.g. square meter would be  m? rather than m^2."^^xsd:string ;
	rdfs:domain gist:UnitOfMeasure ;
	rdfs:range xsd:string ;
	.

gist:universalDate
	a owl:DatatypeProperty ;
	rdfs:label "Universal Date"^^xsd:string ;
	rdfs:comment "UD"^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	.

gist:universalDateTime
	a owl:DatatypeProperty ;
	rdfs:label "Universal Date Time"^^xsd:string ;
	rdfs:comment "UDT"^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	rdfs:range xsd:dateTime ;
	.

gist:universalTime
	a owl:DatatypeProperty ;
	rdfs:label "Universal Time"^^xsd:string ;
	rdfs:comment "UT"^^xsd:string ;
	rdfs:domain gist:TimeInstant ;
	.

gist:viableRange
	a owl:ObjectProperty ;
	rdfs:label "Viable Range"^^xsd:string ;
	rdfs:comment "The area over which the sensor can sense (might be a small geospatial area or a specific wire in a circuit)"^^xsd:string ;
	.

[]
	a owl:AllDifferent ;
	owl:distinctMembers (
		gist:_USDollar
		gist:_ampere
		gist:_bit
		gist:_candela
		gist:_each
		gist:_kelvin
		gist:_kilogram
		gist:_meter
		gist:_mole
		gist:_second
	) ;
	.

