@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix coords: <http://qudt.org/vocab/coords/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix qudt: <http://qudt.org/schema/qudt/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix vaem: <http://www.linkedmodel.org/schema/vaem#> .

<http://qudt.org/3.2.1/schema/coordinateSystems>
  a owl:Ontology ;
  owl:imports <http://www.linkedmodel.org/schema/dtype> ;
  owl:imports <http://www.linkedmodel.org/schema/vaem> ;
  owl:imports <http://www.w3.org/2004/02/skos/core> ;
  owl:versionIRI <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "QUDT SCHEMA - Coordinate Systems" ;
  vaem:hasGraphMetadata vaem:GMD_SCHEMA-COORDINATES .

qudt:AerospaceCoordinateSystem
  a owl:Class ;
  dcterms:description "A sub-type of 'Coordinate system'." ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Aerospace Coordinate system" ;
  rdfs:subClassOf qudt:CoordinateSystem .

qudt:AxialOrientationType
  a owl:Class ;
  dcterms:description "The axial orientation of a coordinate system frame axis." ;
  owl:oneOf ( coords:PositiveZ coords:PositiveY coords:NegativeY coords:NegativeZ coords:PositiveX
    coords:NegativeX ) ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Axial Orientation Type" ;
  rdfs:subClassOf qudt:EnumeratedValue .

qudt:CartesianCoordinates
  a owl:Class ;
  dcterms:description """
  A set of  variables which fix a geometric object.
  If the coordinates are distances measured along perpendicular axes, they are known as Cartesian coordinates.
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Cartesian Coordinate Type" ;
  rdfs:subClassOf qudt:Coordinates .

qudt:CartesianCoordinatesType
  a owl:Class ;
  dcterms:description """
  <p>A set of  variables which fix a geometric object.
  If the coordinates are distances measured along perpendicular axes, they are known as Cartesian coordinates.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Cartesian Coordinate Type" ;
  rdfs:subClassOf qudt:CompositeDatatype .

qudt:CoordinateCenterKind
  a owl:Class ;
  dcterms:description """
  <p>An enumeration of coordinate centers for coordinate systems, such as:
   "Earth centered", "Mars centered", "Moon centered", "Sun centered",  and "Vehicle centered".
  </p>"""^^rdf:HTML ;
  owl:oneOf ( coords:CCT_MarsCentered coords:CCT_EarthCentered coords:CCT_MoonCentered
    coords:CCT_VehicleCentered coords:CCT_SunCentered ) ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Coordinate Center Kind" ;
  rdfs:subClassOf qudt:EnumeratedValue ;
  rdfs:subClassOf qudt:NominalScale .

qudt:CoordinateMember
  a owl:Class ;
  dcterms:description """
  <p>A <em>Coordinate Member</em> is a data type that defines the properties of a coordinate in a coordinate system.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Coordinate Member" ;
  rdfs:subClassOf qudt:TupleMember .

qudt:CoordinateSystem
  a owl:Class ;
  dcterms:description """
  <p>A <em>Coordinate System</em> is a mathematical structure for assigning a unique n-tuple of numbers or scalars to each point in an n-dimensional space. 
  A Coordinate System Type is a data type that defines the properties of data structures that represent coordinate systems.
  </p>
  <p>In geometry, a coordinate system is a system which uses one or more numbers, or coordinates,
   to uniquely determine the position of a point or other geometric element on a manifold such as Euclidean space. 
  The order of the coordinates is significant.
  They are sometimes identified by their position in an ordered tuple and sometimes by a letter, as in 'the x-coordinate'. 
  </p>
  <p>In elementary mathematics the coordinates are taken to be real numbers, but may be complex numbers or elements of a more abstract system such as a commutative ring. 
  The use of a coordinate system allows problems in geometry to be translated into problems about numbers and vice versa; this is the basis of analytic geometry. 
  </p>
  <p>In astronomy, a celestial coordinate system is a system for specifying positions of celestial objects: satellites, planets, stars, galaxies, and so on. 
  Coordinate systems can specify a position in 3-dimensional space, or merely the direction of the object on the celestial sphere, if its distance is not known or not important.
  </p>
  <p>The coordinate systems are implemented in either spherical coordinates or rectangular coordinates. 
  Spherical coordinates, projected on the celestial sphere, are analogous to the geographic coordinate system used on the surface of the Earth.
  These differ in their choice of fundamental plane, which divides the celestial sphere into two equal hemispheres along a great circle.
  </p>
  <p>Rectangular coordinates, in appropriate units, are simply the cartesian equivalent of the spherical coordinates, with the same fundamental (x,y) plane and primary (x-axis) direction. 
  Each coordinate system is named for its choice of fundamental plane.
  </p>"""^^rdf:HTML ;
  qudt:dbpediaMatch <http://dbpedia.org/resource/Coordinate_system> ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Coordinate system" ;
  rdfs:seeAlso <http://en.wikipedia.org/wiki/Astronomical_coordinate_systems> ;
  rdfs:seeAlso <http://en.wikipedia.org/wiki/Coordinate_system> ;
  rdfs:seeAlso <http://mathworld.wolfram.com/CoordinateSystem.html> ;
  rdfs:seeAlso <http://mathworld.wolfram.com/Coordinates.html> ;
  rdfs:subClassOf qudt:Concept ;
  rdfs:subClassOf skos:Concept ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:originDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:coordinateCenter ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:referenceFrame ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:abbreviation ;
  ] .

qudt:Coordinates
  a owl:Class ;
  dcterms:description """
  <p>A coordinate system is a mathematical structure for assigning a unique n-tuple of numbers or scalars to each point in an n-dimensional space. 
  A Coordinate System Type is a data type that defines the properties of data structures that represent coordinate systems.
  </p>
  <p>The primary attributes of any coordinate system are the coordinate frame or orientation of the axes of the coordinate system and the coordinate center or origin of the coordinate system.
  The coordinate center is the easier of the two attributes to define and in trajectory-related coordinate systems is often taken to be the center of mass of natural solar system bodies such as the Earth, the Moon, or Mars.
  Precise definition of the coordinate frame, however, usually takes much more effort. 
  As a result, the primary purpose is to provide a detailed description of a number of different coordinate frames commonly used in mission analysis.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Coordinates" ;
  rdfs:subClassOf qudt:Tuple .

qudt:Coordinates-2D
  a owl:Class ;
  dcterms:description """
  <p>A 2D coordinate system is a system for assigning a two-tuple of numbers or scalars to each point in an 2-dimensional space. 
  A corresponding 2D Coordinate Type is a data type that defines the data type for each coordinate (tuple member) in a 2D coordinate system.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "2D Coordinate Type" ;
  rdfs:subClassOf qudt:CartesianCoordinates ;
  rdfs:subClassOf qudt:TwoTuple .

qudt:Coordinates-2D-DoublePrecision
  a owl:Class ;
  dcterms:description """
  <p>A 2D coordinates in double floating point precision for locating a point in physical space.
  </p>"""^^rdf:HTML ;
  qudt:elementTypeCount 2 ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Coordinates-2D-Double precision" ;
  rdfs:subClassOf qudt:Coordinates-2D ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] .

qudt:Coordinates-2D-SinglePrecision
  a owl:Class ;
  dcterms:description """
  <p>A 2D coordinates in single floating point precision for locating a point in physical space.
  </p>"""^^rdf:HTML ;
  qudt:elementTypeCount 2 ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Cartesian Coordinates 2D Single Precision" ;
  rdfs:subClassOf qudt:Coordinates-2D ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] .

qudt:Coordinates-3D
  a owl:Class ;
  dcterms:description """
  <p>A 3D coordinate system is a system for assigning a three-tuple of numbers or scalars to each point in an 3-dimensional space.
  A corresponding 3D Coordinate Type is a data type that defines the data type for each coordinate (tuple member) in a 3D coordinate system.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "3D Coordinate Type" ;
  rdfs:subClassOf qudt:CartesianCoordinates ;
  rdfs:subClassOf qudt:ThreeTuple .

qudt:Coordinates-3D-DoublePrecision
  a owl:Class ;
  dcterms:description """
  <p>A 3D coordinates in double floating point precision for locating a point in physical space.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "3D Coordinates (Double Precision)" ;
  rdfs:subClassOf qudt:Coordinates-3D ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:double_Z ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:double_Z ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:double_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:double_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:double_Z ;
  ] .

qudt:Coordinates-3D-SinglePrecision
  a owl:Class ;
  dcterms:description """
  <p>A 3D coordinates in single floating point precision for locating a point in physical space.
  </p>
  """^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "3D Coordinates (Single Precision)" ;
  rdfs:subClassOf qudt:Coordinates-3D ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:float_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:float_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:float_Z ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:float_Y ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:float_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:float_X ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 1 ;
    owl:onProperty qudt:float_Z ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:float_Z ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:cardinality 1 ;
    owl:onProperty qudt:float_X ;
  ] .

qudt:Coordinates-3D-Type
  a owl:Class ;
  dcterms:description """
  <p>A 3D coordinate system is a system for assigning a three-tuple of numbers or scalars to each point in an 3-dimensional space. 
  A corresponding 3D Coordinate Type is a data type that defines the data type for each coordinate (tuple member) in a 3D coordinate system.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "3D Coordinate Type" ;
  rdfs:subClassOf qudt:CartesianCoordinatesType ;
  rdfs:subClassOf qudt:ThreeTuple .

qudt:EarthCoordinateSystem
  a owl:Class ;
  dcterms:description """
  <p>A "Trajectory Coordinate System" for all earth-centered coordinates, such as:
  </p>
  <ul>
  <li>Earth mean equator and prime meridian coordinate system;;</li>
  <li>Earth true equator and prime meridian of epoch coordinate system;</li> 
  <li>International celestial reference system;</li>
  <li>International terrestrial reference system;</li>
  <li>Sun centered international celestial reference system;</li>
  <li>Vehicle centered international celestial reference system.</li>
  </ul>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Earth Coordinate System Type" ;
  rdfs:subClassOf qudt:TrajectoryCoordinateSystem .

qudt:FrameType
  a owl:Class ;
  dcterms:description """
  <p>A <em>Frame Type</em> specifies the intertial type of a coordinate frame as either inertial, rotating, or non-rotating.
  </p>
  """^^rdf:HTML ;
  owl:oneOf ( coords:FT_ROTATING coords:FT_NON-ROTATING coords:FT_INERTIAL ) ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Frame Type" ;
  rdfs:subClassOf qudt:EnumeratedValue .

qudt:GroundCoordinateSystem
  a owl:Class ;
  dcterms:description "A sub-type of 'Aerospace coordinate system'." ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Ground coordinate system" ;
  rdfs:subClassOf qudt:AerospaceCoordinateSystem .

qudt:InertialCoordinateFrame
  a owl:Class ;
  dcterms:description "A \"Coordinate Frame\"." ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Inertial Coordinate Frame" ;
  rdfs:seeAlso qudt:NonRotatingInertialFrame ;
  rdfs:subClassOf qudt:InertialReferenceFrame .

qudt:InertialReferenceFrame
  a owl:Class ;
  dcterms:description """
  A sub-type of 'Reference Frame'.
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Inertial reference frame" ;
  rdfs:subClassOf qudt:ReferenceFrame .

qudt:LocalCoordinateSystem
  a owl:Class ;
  dcterms:description """
  A "Trajectory Coordinate System" with the following instance(s):
   "Local vertical curvilinear coordinate system",
   "Local vertical local horizontal coordinate system",
   "Vehicle centered local vertical curvilinear coordinate system".
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Local Coordinate System" ;
  rdfs:subClassOf qudt:TrajectoryCoordinateSystem .

qudt:LunarCoordinateSystem
  a owl:Class ;
  dcterms:description """
  Two slightly different coordinate frames are commonly used to define the orientation of the axes of a lunar body-fixed coordinate system:
   a mean Earth/rotation frame and a principal axis coordinate frame. 
  The mean Earth/rotation frame (sometimes called the "Mean Earth/polar axis" frame) is a lunar body-fixed coordinate frame.
  This has the X-axis aligned with the mean direction from the Moon to the Earth and the Z-axis aligned with the mean axis of rotation of the Moon. 
  The principal axis frame is a lunar body-fixed coordinate frame aligned with the principal axes of the Moon. 
  Due to the fact that the Moon is synchronously rotating but is not exactly symmetric, the principal axes and the mean Earth/rotation axes of the Moon do not coincide.
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Lunar Coordinate System" ;
  rdfs:subClassOf qudt:TrajectoryCoordinateSystem ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:zAxisDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:xAxisDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:realization ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:yAxisDefinition ;
  ] .

qudt:MarsCoordinateSystem
  a owl:Class ;
  dcterms:description """
  A "Trajectory Coordinate System" with the following instance(s): "Mars mean equator and IAU-Node of epoch", "Mars mean equator and prime meridian body-fixed".
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Mars Coordinate System Type" ;
  rdfs:subClassOf qudt:TrajectoryCoordinateSystem .

qudt:NonRotatingInertialFrame
  a owl:Class ;
  dcterms:description """
  <p>The non-rotating (or "inertial") coordinate frames are defined by taking a "snapshot" of the orientation of a particular set of right-handed, orthogonal axes at a specific epoch or time. 
  In other words, the non-rotating coordinate frame, however it is defined, is frozen or fixed at a specific time - for all time. 
  These non-rotating coordinate frames are referred to as "of Epoch" coordinate frames.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Non Rotating Coordinate Frame" ;
  rdfs:seeAlso qudt:InertialCoordinateFrame ;
  rdfs:subClassOf qudt:InertialReferenceFrame .

qudt:PolarCoordinates
  a owl:Class ;
  dcterms:description """
  <p>A set of  variables which fix a geometric object. 
  If the coordinates of a point P are determined by the distance from P to the origin and the angle subtended by the radial vector at P and a fixed axis,
   they are known as polar coordinates. 
  Typically, the angle is measured with respect to the x-axis. ;
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Polar Coordinate System" ;
  rdfs:subClassOf qudt:Coordinates .

qudt:PolarCoordinatesType
  a owl:Class ;
  dcterms:description """
  <p>A set of  variables which fix a geometric object. 
  If the coordinates of a point <em>P</em> are determined by the distance from <em>P</em> to the origin and the angle subtended by the radial vector at <em>P</em> and a fixed axis,
   they are known as polar coordinates. 
  Typically, the angle is measured with respect to the x-axis. ;
  </p>
  """^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Polar Coordinate System Type" ;
  rdfs:subClassOf qudt:CoordinateSystem .

qudt:ReferenceDatatype
  a owl:Class ;
  dcterms:description """
  <p>A reference is an object containing information which refers to data stored elsewhere, as opposed to containing the data itself. 
  A reference data type is a data type that specifies how a reference is represented and stored in memory,
   as well as the operations that can be performed on reference values. 
  The most common example of a reference data type is a pointer.
  </p>"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Reference Data Type" ;
  rdfs:subClassOf qudt:StructuredDatatype .

qudt:ReferenceFrame
  a owl:Class ;
  dcterms:description """
  <p> A <em>Reference Frame</em> (or "frame of reference") in physics, may refer to a coordinate system or set of axes.
The frame serves as the datum to measure the position, orientation, and other properties of objects in it.
Reference frame may refer to an observational reference frame tied to the state of motion of an observer. 
Reference frame may also refer to both an observational reference frame and an attached coordinate system as a unit.
</p>
"""^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Reference Frame" ;
  rdfs:subClassOf qudt:Concept ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:xCoordinateDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:xAxisDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:yAxisDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:zCoordinateDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:zAxisDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:realization ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:yCoordinateDefinition ;
  ] .

qudt:RotatingReferenceFrame
  a owl:Class ;
  dcterms:description "A sub-type of 'Reference Frame'." ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Rotating reference frame" ;
  rdfs:subClassOf qudt:ReferenceFrame .

qudt:StateSpaceVector
  a owl:Class ;
  dcterms:description """
  A state vector in general control systems describes the observed states of an object in state space.
  For example in variables of the degrees of freedom for motion. 
  As data types, state vector types are used to specify the structure of state vectors, such as how the observed state is encoded.
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "State Space Vector Type" ;
  rdfs:subClassOf qudt:Vector ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:coordinateSystem ;
  ] .

qudt:ThreeBodyRotatingCoordinateSystem
  a owl:Class ;
  dcterms:description """
  <p>A <em>Three Body Rotating Coordinate System</em> is one that is associated with two different three-body systems.
  For example, the Sun-Earth-spacecraft system and the Earth-Moon-spacecraft system.
  </p>
  <p>The lunar coordinate systems are primarily used when operating in close proximity to the Moon. 
  There are, however, a few additional coordinate systems that are also useful when analyzing (and depicting) trajectories in the vicinity of the Earth-Moon system.  
  The Sun-Earth and Earth-Moon rotating coordinate frames are defined as follows: 
  </p>
  <p>The pole vector or Z-axis of the coordinate frame is set equal to the instantaneous orbit normal of the secondary (smaller) body about the primary (larger) body.
  The X-axis is set equal to the vector from the primary body center of mass (CM) to the secondary body CM. 
  The X-axis rotates at a rate equal to the instantaneous rotation rate of the secondary body about the primary body.
  </p>
  """^^rdf:HTML ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Three Body Rotating Coordinate System Type" ;
  rdfs:subClassOf qudt:AerospaceCoordinateSystem .

qudt:TrajectoryCoordinateSystem
  a owl:Class ;
  dcterms:description "A \"Coordinate System\"." ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Trajectory Coordinate System" ;
  rdfs:subClassOf qudt:AerospaceCoordinateSystem .

qudt:VehicleCoordinateSystem
  a owl:Class ;
  dcterms:description "A sub-type of 'Aerospace coordinate system'." ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Vehicle coordinate system" ;
  rdfs:subClassOf qudt:AerospaceCoordinateSystem ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 0 ;
    owl:onProperty qudt:rollRotationDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:pitchRotationDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:minCardinality 0 ;
    owl:onProperty qudt:yawRotationDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:rollRotationDefinition ;
  ] ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:maxCardinality 1 ;
    owl:onProperty qudt:yawRotationDefinition ;
  ] .

qudt:coordinateCenter
  a owl:ObjectProperty ;
  rdfs:domain qudt:CoordinateSystem ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "coordinate center" ;
  rdfs:range qudt:CoordinateCenterKind ;
  skos:prefLabel "coordinate center" .

qudt:coordinateSystem
  a owl:ObjectProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "coordinate system" ;
  rdfs:range qudt:CoordinateSystem .

qudt:pitchRotationDefinition
  a owl:ObjectProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "pitch rotation definition" ;
  rdfs:range qudt:AxialOrientationType ;
  rdfs:subPropertyOf qudt:rotationDefinition .

qudt:referenceFrame
  a owl:ObjectProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "reference frame" ;
  rdfs:range qudt:ReferenceFrame ;
  rdfs:subPropertyOf qudt:coordinateSystemFrame .

qudt:rollRotationDefinition
  a owl:ObjectProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "roll rotation definition" ;
  rdfs:range qudt:AxialOrientationType ;
  rdfs:subPropertyOf qudt:rotationDefinition .

qudt:yawRotationDefinition
  a owl:ObjectProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Yaw rotation definition" ;
  rdfs:range qudt:AxialOrientationType ;
  rdfs:subPropertyOf qudt:rotationDefinition .

qudt:float_X
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "float X" ;
  rdfs:range xsd:float .

qudt:float_Y
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "float Y" ;
  rdfs:range xsd:float .

qudt:float_Z
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "float Z" ;
  rdfs:range xsd:float .

qudt:xAxisDefinition
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  dcterms:description """
  The definition of the X-Axis could be an intersection, cross-product or other function of a  meridian or orbit. 
  It could also mention any aspects of rotation, for example, the rotation equator of the Earth, Sun, Moon or other celestial body. 
  An epoch might also be given.
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "X-Axis Definition" ;
  rdfs:range xsd:string .

qudt:xCoordinateDefinition
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "X-Coordinate definition" ;
  rdfs:range xsd:string .

qudt:yAxisDefinition
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  dcterms:description """
  The definition of the Y-Axis could be an intersection, cross-product or other function of a meridian or orbit. 
  It could also mention any aspects of rotation, for example, the rotation equator of the Earth, Sun, Moon or other celestial body. 
  An epoch might also be given.
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Y-Axis definition" ;
  rdfs:range xsd:string .

qudt:yCoordinateDefinition
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Y-Coordinate definition" ;
  rdfs:range xsd:string .

qudt:zAxisDefinition
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  dcterms:description """
  The definition of the Y-Axis could be an intersection, croos-product or other function of a meridian or orbit. 
  It could also mention any aspects of rotation, for example, the rotation equator of the Earth, Sun, Moon or other celestial body. 
  An epoch might also be given.
  """ ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Z-Axis definition" ;
  rdfs:range xsd:string .

qudt:zCoordinateDefinition
  a owl:DatatypeProperty, owl:FunctionalProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "Z-Coordinate definition" ;
  rdfs:range xsd:string .

dcterms:contributor
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "contributor" .

dcterms:creator
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "creator" .

dcterms:description
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "description" .

dcterms:rights
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "rights" .

dcterms:subject
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "subject" .

dcterms:title
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "title" .

qudt:coordinateSystemFrame
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "coordinate system frame" .

qudt:referenceFrameType
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "reference frame type" .

qudt:rotationDefinition
  a owl:AnnotationProperty ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "rotation definition" .

vaem:GMD_SCHEMA-COORDINATES
  a vaem:GraphMetaData ;
  dcterms:description "<p>This OWL schema is derived from the SHACL schema found at http://qudt.org/3.2.1/schema/shacl/coordinateSystems. </p>"^^rdf:HTML ;
  dcterms:modified "2025-04-02T10:54:24-05:00"^^xsd:dateTime ;
  dcterms:rights """
  <p>The QUDT Ontologies are issued under a Creative Commons Attribution 4.0 International License (CC BY 4.0), available  <a href="https://creativecommons.org/licenses/by/4.0/">here</a>. 
  Attribution should be made to <a href="https://www.qudt.org">QUDT.org</a>.
  </p>"""^^rdf:HTML ;
  dcterms:subject "Coordinate Systems" ;
  prov:derivedFrom <http://qudt.org/3.2.1/schema/shacl/coordinateSystems> ;
  rdfs:isDefinedBy <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  rdfs:label "QUDT Schema for Coordinate Systems - Version 3.2.1" ;
  vaem:graphTitle "QUDT Schema for Coordinate Systems - Version 3.2.1" ;
  vaem:hasGraphRole vaem:SchemaGraph ;
  vaem:isMetadataFor <http://qudt.org/3.2.1/schema/coordinateSystems> ;
  vaem:latestPublishedVersion "https://qudt.org/doc/2026/04/DOC_SCHEMA-COORDINATES.html"^^xsd:anyURI ;
  vaem:logo "https://qudt.org/linkedmodels.org/assets/lib/lm/images/logos/qudt_logo-300x110.png"^^xsd:anyURI ;
  vaem:name "QUDT" ;
  vaem:namespace "http://qudt.org/schema/qudt/"^^xsd:anyURI ;
  vaem:namespacePrefix "qudt" ;
  vaem:owner "QUDT.ORG" ;
  vaem:previousPublishedVersion "https://qudt.org/doc/2026/03/DOC_SCHEMA-COORDINATES.html"^^xsd:anyURI ;
  vaem:publishedDate "2017-05-10"^^xsd:date ;
  vaem:releaseDate "2016-05-09"^^xsd:date ;
  vaem:title "QUDT Schema for Coordinate Systems - Version 3.2.1" ;
  vaem:turtleFileURL "http://qudt.org/3.2.1/schema/coordinateSystems.ttl"^^xsd:anyURI ;
  vaem:usesNonImportedResource dcterms:abstract ;
  vaem:usesNonImportedResource dcterms:created ;
  vaem:usesNonImportedResource dcterms:creator ;
  vaem:usesNonImportedResource dcterms:modified ;
  vaem:usesNonImportedResource dcterms:rights ;
  vaem:usesNonImportedResource dcterms:title ;
  vaem:usesNonImportedResource <http://voag.linkedmodel.org/voag#QUDT-Attribution> ;
  vaem:withAttributionTo <http://voag.linkedmodel.org/voag#QUDT-Attribution> .


