drasil-lang-0.1.60.0: A framework for code and document generation for scientific software - Language SubPackage
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.Drasil.Chunk.Concept.Core

Description

Define concept-related chunks. A concept is usually something that has a term, definition, and comes from some domain of knowledge.

Synopsis

Concept-related Datatypes

data ConceptChunk Source #

The ConceptChunk datatype records a concept that contains an idea (IdeaDict), a definition (Sentence), and an associated domain of knowledge ([UID]).

Ex. The concept of Accuracy may be defined as the quality or state of being correct or precise.

Constructors

ConDict IdeaDict Sentence [UID] 

Instances

Instances details
Idea ConceptChunk Source #

Finds the idea contained in the IdeaDict used to make the ConceptChunk.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

NamedIdea ConceptChunk Source #

Finds term (NP) of the IdeaDict used to make the ConceptChunk.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

Methods

term :: Lens' ConceptChunk NP Source #

ConceptDomain ConceptChunk Source #

Finds the domain of UIDs of a ConceptChunk.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

Methods

cdom :: ConceptChunk -> [UID] Source #

Definition ConceptChunk Source #

Finds definition of a ConceptChunk.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

HasUID ConceptChunk Source #

Finds UID of the IdeaDict used to make the ConceptChunk.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

Methods

uid :: Lens' ConceptChunk UID Source #

Eq ConceptChunk Source #

Equal if UIDs are equal.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

data ConceptInstance Source #

Contains a ConceptChunk, reference address, and a ShortName. It is a concept that can be referred to, or rather, a instance of where a concept is applied. Often used in Goal Statements, Assumptions, Requirements, etc.

Ex. Something like the assumption that gravity is 9.81 m/s. When we write our equations, we can then link this assumption so that we do not have to explicitly define that assumption when needed to verify our work.

Instances

Instances details
Idea ConceptInstance Source #

Finds the idea contained in the ConceptChunk used to make the ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

NamedIdea ConceptInstance Source #

Finds term (NP) of the ConceptChunk used to make the ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

Methods

term :: Lens' ConceptInstance NP Source #

ConceptDomain ConceptInstance Source #

Finds the domain contained in the ConceptChunk used to make the ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

Definition ConceptInstance Source #

Finds the definition contained in the ConceptChunk used to make the ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

HasRefAddress ConceptInstance Source #

Finds the reference address contained in a ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

Referable ConceptInstance Source #

Finds the reference information contained in a ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

HasShortName ConceptInstance Source #

Finds the ShortName contained in a ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

HasUID ConceptInstance Source #

Finds UID of the ConceptChunk used to make the ConceptInstance.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

Methods

uid :: Lens' ConceptInstance UID Source #

Eq ConceptInstance Source #

Equal if UIDs are equal.

Instance details

Defined in Language.Drasil.Chunk.Concept.Core

sDom :: [UID] -> UID Source #

Check if something has one domain. Throws an error if there is more than one.