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

Description

Contains functions to create the concept related chunk types found in Language.Drasil.Chunk.Concept.Core.

Synopsis

Concept Chunks

From an idea (IdeaDict)

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.

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

dcc :: String -> NP -> String -> ConceptChunk Source #

Smart constructor for creating concept chunks given a UID, NounPhrase (NP) and definition (as a String).

Concept domain tagging is not yet implemented in this constructor.

dccWDS :: String -> NP -> Sentence -> ConceptChunk Source #

Similar to dcc, except the definition takes a Sentence.

cc :: Idea c => c -> String -> ConceptChunk Source #

Constructor for projecting an idea into a ConceptChunk. Takes the definition of the ConceptChunk as a String. Does not allow concept domain tagging.

cc' :: Idea c => c -> Sentence -> ConceptChunk Source #

Same as cc, except definition is a Sentence.

ccs :: (Idea c, Concept d) => c -> Sentence -> [d] -> ConceptChunk Source #

Similar to cc', but allows explicit domain tagging.

cw :: Concept c => c -> ConceptChunk Source #

For projecting out to the ConceptChunk data-type.

From a ConceptChunk

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

cic :: Concept c => String -> Sentence -> String -> c -> ConceptInstance Source #

Constructor for a ConceptInstance. Takes in the Reference Address (String), a definition (Sentence), a short name (String), and a domain (for explicit tagging).