Skip to content

Commit

Permalink
Merge pull request #95 from opengeospatial/chris-little-patchFigure1
Browse files Browse the repository at this point in the history
Create Figure1PlantUML.adoc
  • Loading branch information
chris-little authored Mar 6, 2024
2 parents a1e15a1 + 76295f6 commit 70d802e
Showing 1 changed file with 82 additions and 0 deletions.
82 changes: 82 additions & 0 deletions 23-049/images/Figure1PlantUML.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
Figure 1, using PlantUML markup that is supported by Metanorma, rather than Mermaid that works inline in GitHib and ASCIIdoc.

@startuml
abstract class ReferenceSystem {
dimension "dimension >= 1"
locationOfApplicability = 0..1
timeOfApplicability = 0..1
domainOfApplicability = 0..1
}

note right of ReferenceSystem
Note: Has at least one of:
* SpatialReferenceSystem, or
* TemporalReferenceSystem
end note

abstract class SpatialReferenceSystem {
}

abstract class TemporalReferenceSystem {
dimension = 1
}

note left of TemporalReferenceSystem
Note: Consists of one only of:
* TemporalCoordinateReferenceSystem,
* Calendar, or
* OrdinalTemporalReferenceSystem
end note

ReferenceSystem <|-- SpatialReferenceSystem : is a
ReferenceSystem <|-- TemporalReferenceSystem : is a

class OrdinalTemporalReferenceSystem {
}
class TemporalCoordinateReferenceSystem {
}
class Calendar {
}
class Timeline {
}
TemporalReferenceSystem <|-- OrdinalTemporalReferenceSystem : is a
TemporalReferenceSystem <|-- TemporalCoordinateReferenceSystem : is a
TemporalReferenceSystem <|-- Calendar : is a

OrdinalTemporalReferenceSystem "1" o-- "(ordered)" Events : consists of
OrdinalTemporalReferenceSystem "1" o-- "0..1" Epoch : anchored by
OrdinalTemporalReferenceSystem "1" --> "1..*" Notation : is represented by
TemporalCoordinateReferenceSystem "1" o-- "1" Epoch : anchored by
TemporalCoordinateReferenceSystem "1" --> "1..*" Notation : is represented by
TemporalCoordinateReferenceSystem "1" o-- "1" Timescale : must have

Calendar "1" o-- "0..1" Epoch : anchored by
Calendar "1" --> "1..*" Notation : is represented by
Calendar "1" o-- "1" Timeline : has a
Timeline "1" o-- "1..*" Algorithm : defined by

class Timescale {
StartCount
EndCount
arithmetic
}

Timescale "1" o-- "1" Clock : determined by
Timescale "1" o-- "1" UnitOfMeasure : has a

class Clock {
}
Clock "1" o-- "1..*" Ticks : counts
class Ticks {
}
class UnitOfMeasure {
Direction
}
class Algorithm {
}
Algorithm "1" o-- "2..*" Timescale : uses

@enduml

0 comments on commit 70d802e

Please sign in to comment.