Logo ProcessCore

ARC Type

Constructors

Constructor Description

ARC(identifier, ?title, ?description, ?additionalType, ?license, ?datePublished, ?dateCreated, ?dateModified, ?processes, ?hasPart, ?dataFiles, ?agents, ?citations, ?dataContexts, ?additionalProperty, ?samples, ?recipes)

Full Usage: ARC(identifier, ?title, ?description, ?additionalType, ?license, ?datePublished, ?dateCreated, ?dateModified, ?processes, ?hasPart, ?dataFiles, ?agents, ?citations, ?dataContexts, ?additionalProperty, ?samples, ?recipes)

Parameters:
    identifier : string
    ?title : string
    ?description : string
    ?additionalType : string
    ?license : string
    ?datePublished : string
    ?dateCreated : string
    ?dateModified : string
    ?processes : Process seq
    ?hasPart : Dataset seq
    ?dataFiles : Data seq
    ?agents : Agent seq
    ?citations : ScholarlyArticle seq
    ?dataContexts : DataContext seq
    ?additionalProperty : Annotation seq
    ?samples : Sample seq
    ?recipes : Recipe seq

Returns: ARC
identifier : string
?title : string
?description : string
?additionalType : string
?license : string
?datePublished : string
?dateCreated : string
?dateModified : string
?processes : Process seq
?hasPart : Dataset seq
?dataFiles : Data seq
?agents : Agent seq
?citations : ScholarlyArticle seq
?dataContexts : DataContext seq
?additionalProperty : Annotation seq
?samples : Sample seq
?recipes : Recipe seq
Returns: ARC

Instance members

Instance member Description

this.AddRecipe

Full Usage: this.AddRecipe

Parameters:
recipe : Recipe

this.AddSample

Full Usage: this.AddSample

Parameters:
sample : Sample

this.ArcPath

Full Usage: this.ArcPath

Returns: string option
Returns: string option

this.IsSpreadsheetScaffold

Full Usage: this.IsSpreadsheetScaffold

Returns: bool
Returns: bool

this.Recipes

Full Usage: this.Recipes

Returns: ResizeArray<Recipe>
Returns: ResizeArray<Recipe>

this.RemoveRecipe

Full Usage: this.RemoveRecipe

Parameters:
recipe : Recipe

this.RemoveSample

Full Usage: this.RemoveSample

Parameters:
sample : Sample

this.Samples

Full Usage: this.Samples

Returns: ResizeArray<Sample>
Returns: ResizeArray<Sample>

this.Update

Full Usage: this.Update

Parameters:
    ?arcPath : string

Updates the ARC at the specified path, re-resolving an authoritative destination project when present. If no path is provided, it will use the ArcPath property. If neither is set, it will throw an exception.

?arcPath : string

this.UpdateAsync

Full Usage: this.UpdateAsync

Parameters:
    ?arcPath : string

Returns: CrossAsync<unit>

Updates the ARC at the specified path. A destination project file is authoritative and is re-resolved on every update. If no path is provided, it will use the ArcPath property. If neither is set, it will throw an exception.

?arcPath : string
Returns: CrossAsync<unit>

this.Write

Full Usage: this.Write

Parameters:
    arcPath : string

Writes the ARC using .arc/project.yml when present; otherwise writes arc.yml.

arcPath : string

this.WriteAsync

Full Usage: this.WriteAsync

Parameters:
    arcPath : string

Returns: CrossAsync<unit>

Writes the ARC using .arc/project.yml when present; otherwise writes arc.yml.

arcPath : string
Returns: CrossAsync<unit>

this.WriteProject

Full Usage: this.WriteProject

Parameters:
Returns: Result<unit, ProjectError>

Writes the ARC through the exact .arc/project.yml using the supplied codec registry.

registry : CodecRegistry
workspaceRoot : string
Returns: Result<unit, ProjectError>

this.WriteProjectAsync

Full Usage: this.WriteProjectAsync

Parameters:
Returns: CrossAsync<Result<unit, ProjectError>>

Writes the ARC through the exact .arc/project.yml using the supplied codec registry.

registry : CodecRegistry
workspaceRoot : string
Returns: CrossAsync<Result<unit, ProjectError>>

this.WriteXLSX

Full Usage: this.WriteXLSX

Parameters:
    arcPath : string

Writes the ARC to the specified path as a spreadsheet scaffold and makes XLSX the active representation.

arcPath : string

this.WriteXLSXAsync

Full Usage: this.WriteXLSXAsync

Parameters:
    arcPath : string

Returns: CrossAsync<unit>

Writes the ARC to the specified path as a spreadsheet scaffold and makes XLSX the active representation.

arcPath : string
Returns: CrossAsync<unit>

this.WriteYML

Full Usage: this.WriteYML

Parameters:
    arcPath : string

Writes the ARC to the specified path as arc.yml and makes YAML the active representation.

arcPath : string

this.WriteYMLAsync

Full Usage: this.WriteYMLAsync

Parameters:
    arcPath : string

Returns: CrossAsync<unit>

Writes the ARC to the specified path as arc.yml and makes YAML the active representation.

arcPath : string
Returns: CrossAsync<unit>

this.toYamlString ?whiteSpace

Full Usage: this.toYamlString ?whiteSpace

Parameters:
    ?whiteSpace : int

Returns: string
?whiteSpace : int
Returns: string

Static members

Static member Description

ARC.fromYamlString yamlString

Full Usage: ARC.fromYamlString yamlString

Parameters:
    yamlString : string

Returns: ARC
yamlString : string
Returns: ARC

ARC.load arcPath

Full Usage: ARC.load arcPath

Parameters:
    arcPath : string

Returns: ARC

Loads an ARC using an authoritative .arc/project.yml when present, otherwise using existing YAML/XLSX discovery. If neither is found, it throws an exception.

arcPath : string
Returns: ARC

ARC.loadAsync arcPath

Full Usage: ARC.loadAsync arcPath

Parameters:
    arcPath : string

Returns: CrossAsync<ARC>

Loads an ARC from an exact .arc/project.yml when present. Otherwise it uses the existing arc.yml/XLSX discovery.

arcPath : string
Returns: CrossAsync<ARC>

ARC.loadProject (registry, workspaceRoot)

Full Usage: ARC.loadProject (registry, workspaceRoot)

Parameters:
Returns: Result<ARC, ProjectError>

Loads an ARC through the exact .arc/project.yml using the supplied codec registry.

registry : CodecRegistry
workspaceRoot : string
Returns: Result<ARC, ProjectError>

ARC.loadProjectAsync (registry, workspaceRoot)

Full Usage: ARC.loadProjectAsync (registry, workspaceRoot)

Parameters:
Returns: CrossAsync<Result<ARC, ProjectError>>

Loads an ARC through the exact .arc/project.yml using the supplied codec registry.

registry : CodecRegistry
workspaceRoot : string
Returns: CrossAsync<Result<ARC, ProjectError>>

ARC.loadXLSX arcPath

Full Usage: ARC.loadXLSX arcPath

Parameters:
    arcPath : string

Returns: ARC

Loads an ARC from the spreadsheet scaffold in the specified path.

arcPath : string
Returns: ARC

ARC.loadXLSXAsync arcPath

Full Usage: ARC.loadXLSXAsync arcPath

Parameters:
    arcPath : string

Returns: CrossAsync<ARC>

Loads an ARC from the spreadsheet scaffold in the specified path.

arcPath : string
Returns: CrossAsync<ARC>

ARC.loadYML arcPath

Full Usage: ARC.loadYML arcPath

Parameters:
    arcPath : string

Returns: ARC

Loads an ARC from arc.yml in the specified path.

arcPath : string
Returns: ARC

ARC.loadYMLAsync arcPath

Full Usage: ARC.loadYMLAsync arcPath

Parameters:
    arcPath : string

Returns: CrossAsync<ARC>

Loads an ARC from arc.yml in the specified path.

arcPath : string
Returns: CrossAsync<ARC>

Inherited members

Inherited from Dataset

Instance members

Instance member Description

this.AddAdditionalProperty

Full Usage: this.AddAdditionalProperty

Parameters:

this.AddAgent

Full Usage: this.AddAgent

Parameters:
agent : Agent

this.AddCitation

Full Usage: this.AddCitation

Parameters:

this.AddDataContext

Full Usage: this.AddDataContext

Parameters:
dataContext : DataContext

this.AddDataFile

Full Usage: this.AddDataFile

Parameters:
data : Data

this.AddPart

Full Usage: this.AddPart

Parameters:
child : Dataset

this.AddProcess

Full Usage: this.AddProcess

Parameters:
proc : Process

this.AllAgents

Full Usage: this.AllAgents

Returns: ResizeArray<Agent>
Returns: ResizeArray<Agent>

this.AllAnnotations

Full Usage: this.AllAnnotations

Parameters:
    ?recipeName : string

Returns: ResizeArray<Annotation>

All distinct Annotations from all sources across all processes in this dataset. Sources: process parameters, input/output node properties, recipe components. Optional recipeName restricts to processes whose recipe name matches.

?recipeName : string
Returns: ResizeArray<Annotation>

this.AllAnnotationsForNode

Full Usage: this.AllAnnotationsForNode

Parameters:
Returns: ResizeArray<Annotation>
node : IONode
Returns: ResizeArray<Annotation>

this.AllCitations

Full Usage: this.AllCitations

Returns: ResizeArray<ScholarlyArticle>
Returns: ResizeArray<ScholarlyArticle>

this.AllConnectedNodes

Full Usage: this.AllConnectedNodes

Parameters:
Returns: ResizeArray<IONode>

All IONodes connected to `node` within this dataset, excluding `node` itself.

node : IONode
Returns: ResizeArray<IONode>

this.AllData

Full Usage: this.AllData

Returns: ResizeArray<Data>

All distinct Data nodes reachable from processes in this dataset

Returns: ResizeArray<Data>

this.AllDataContexts

Full Usage: this.AllDataContexts

Returns: ResizeArray<DataContext>
Returns: ResizeArray<DataContext>

this.AllDataFiles

Full Usage: this.AllDataFiles

Returns: ResizeArray<Data>
Returns: ResizeArray<Data>

this.AllNodes

Full Usage: this.AllNodes

Returns: ResizeArray<IONode>

All distinct IONodes (samples and data) from all processes in this dataset.

Returns: ResizeArray<IONode>

this.AllOrganizations

Full Usage: this.AllOrganizations

Returns: ResizeArray<Organization>
Returns: ResizeArray<Organization>

this.AllProcesses

Full Usage: this.AllProcesses

Returns: ResizeArray<Process>

All processes in this dataset and all nested datasets (depth-first)

Returns: ResizeArray<Process>

this.AllSamples

Full Usage: this.AllSamples

Returns: ResizeArray<Sample>

All distinct Sample nodes reachable from processes in this dataset

Returns: ResizeArray<Sample>

this.AnnotationsForNode

Full Usage: this.AnnotationsForNode

Parameters:
    node : IONode
    ?recipeName : string

Returns: ResizeArray<Annotation>

All Annotations from all sources connected to `node` (upstream + downstream) within this dataset. Optional recipeName restricts to processes whose recipe name matches.

node : IONode
?recipeName : string
Returns: ResizeArray<Annotation>

this.CanonicalizeNode

Full Usage: this.CanonicalizeNode

Parameters:
Returns: IONode

Returns the canonical IONode for `node` from the root registry. Registers and returns `node` itself if its key is not yet present. When the key is already registered, compatible metadata is merged into the canonical instance and conflicting metadata raises an exception.

node : IONode
Returns: IONode

this.CanonicalizeRecipe

Full Usage: this.CanonicalizeRecipe

Parameters:
Returns: Recipe

Returns the hierarchy-wide canonical Recipe using Recipe identity.

recipe : Recipe
Returns: Recipe

this.ConnectedDataForNode

Full Usage: this.ConnectedDataForNode

Parameters:
Returns: ResizeArray<Data>
node : IONode
Returns: ResizeArray<Data>

this.ConnectedSamplesForNode

Full Usage: this.ConnectedSamplesForNode

Parameters:
Returns: ResizeArray<Sample>
node : IONode
Returns: ResizeArray<Sample>

this.DataContextsCoveringData

Full Usage: this.DataContextsCoveringData

Parameters:
Returns: ResizeArray<DataContext>
data : Data
Returns: ResizeArray<DataContext>

this.DataContextsForData

Full Usage: this.DataContextsForData

Parameters:
Returns: ResizeArray<DataContext>
data : Data
Returns: ResizeArray<DataContext>

this.DataContextsForPath

Full Usage: this.DataContextsForPath

Parameters:
    path : string

Returns: ResizeArray<DataContext>
path : string
Returns: ResizeArray<DataContext>

this.DataDownstreamOf

Full Usage: this.DataDownstreamOf

Parameters:
Returns: ResizeArray<Data>
node : IONode
Returns: ResizeArray<Data>

this.DataUpstreamOf

Full Usage: this.DataUpstreamOf

Parameters:
Returns: ResizeArray<Data>
node : IONode
Returns: ResizeArray<Data>

this.DataWithDataContextByExplication

Full Usage: this.DataWithDataContextByExplication

Parameters:
Returns: ResizeArray<Data * DataContext>
term : DefinedTerm
Returns: ResizeArray<Data * DataContext>

this.DownstreamAnnotationsForNode

Full Usage: this.DownstreamAnnotationsForNode

Parameters:
    node : IONode
    ?recipeName : string

Returns: ResizeArray<Annotation>

Annotations from all sources in processes downstream of `node` within this dataset.

node : IONode
?recipeName : string
Returns: ResizeArray<Annotation>

this.FinalData

Full Usage: this.FinalData

Returns: ResizeArray<Data>

Final nodes that are Data.

Returns: ResizeArray<Data>

this.FinalNodes

Full Usage: this.FinalNodes

Returns: ResizeArray<IONode>

All IONodes in this dataset with no successor process (terminal sinks).

Returns: ResizeArray<IONode>

this.FinalSamples

Full Usage: this.FinalSamples

Returns: ResizeArray<Sample>

Final nodes that are Samples.

Returns: ResizeArray<Sample>

this.FindProcessesByAnnotation

Full Usage: this.FindProcessesByAnnotation

Parameters:
    paramName : string
    paramValue : string

Returns: ResizeArray<Process>

All processes that have a Annotation (from any source) with the given name and value.

paramName : string
paramValue : string
Returns: ResizeArray<Process>

this.FindProcessesByPropertyName

Full Usage: this.FindProcessesByPropertyName

Parameters:
    paramName : string

Returns: ResizeArray<Process>

All processes that have a Annotation (from any source) with the given name (any value).

paramName : string
Returns: ResizeArray<Process>

this.FindProcessesByRecipeType

Full Usage: this.FindProcessesByRecipeType

Parameters:
    intendedUse : string

Returns: ResizeArray<Process>

All processes whose executed recipe's intendedUse name matches.

intendedUse : string
Returns: ResizeArray<Process>

this.GetFragmentSelectorProviders

Full Usage: this.GetFragmentSelectorProviders

Returns: IFragmentSelectorProvider seq

this.GetProcess

Full Usage: this.GetProcess

Parameters:
    name : string

Returns: Process
name : string
Returns: Process

this.NodesDownstreamOf

Full Usage: this.NodesDownstreamOf

Parameters:
Returns: ResizeArray<IONode>

All IONodes reachable downstream from `node` within this dataset.

node : IONode
Returns: ResizeArray<IONode>

this.NodesUpstreamOf

Full Usage: this.NodesUpstreamOf

Parameters:
Returns: ResizeArray<IONode>

All IONodes reachable upstream from `node` within this dataset.

node : IONode
Returns: ResizeArray<IONode>

this.PathsThrough

Full Usage: this.PathsThrough

Parameters:
Returns: ResizeArray<Path>

All maximal Paths through `node` within this dataset.

node : IONode
Returns: ResizeArray<Path>

this.ProcessesForNode

Full Usage: this.ProcessesForNode

Parameters:
Returns: ResizeArray<Process>

All processes in this dataset in which `node` appears as an input or output.

node : IONode
Returns: ResizeArray<Process>

this.RecipeParametersForNode

Full Usage: this.RecipeParametersForNode

Parameters:
Returns: ResizeArray<FormalParameter>
node : IONode
Returns: ResizeArray<FormalParameter>

this.RegisterFragmentSelectorProvider

Full Usage: this.RegisterFragmentSelectorProvider

Parameters:

Register a fragment selector provider in the root dataset of this hierarchy.

provider : IFragmentSelectorProvider

this.RemoveAdditionalProperty

Full Usage: this.RemoveAdditionalProperty

Parameters:

this.RemoveAgent

Full Usage: this.RemoveAgent

Parameters:
agent : Agent

this.RemoveCitation

Full Usage: this.RemoveCitation

Parameters:

this.RemoveDataContext

Full Usage: this.RemoveDataContext

Parameters:
dataContext : DataContext

this.RemoveDataFile

Full Usage: this.RemoveDataFile

Parameters:
data : Data

this.RemovePart

Full Usage: this.RemovePart

Parameters:
child : Dataset

this.RemoveProcess

Full Usage: this.RemoveProcess

Parameters:
proc : Process

this.RootData

Full Usage: this.RootData

Returns: ResizeArray<Data>

Root nodes that are Data.

Returns: ResizeArray<Data>

this.RootNodes

Full Usage: this.RootNodes

Returns: ResizeArray<IONode>

All IONodes in this dataset with no predecessor process (terminal sources).

Returns: ResizeArray<IONode>

this.RootSamples

Full Usage: this.RootSamples

Returns: ResizeArray<Sample>

Root nodes that are Samples.

Returns: ResizeArray<Sample>

this.SamplesDownstreamOf

Full Usage: this.SamplesDownstreamOf

Parameters:
Returns: ResizeArray<Sample>
node : IONode
Returns: ResizeArray<Sample>

this.SamplesResultingFromConditionBy

Full Usage: this.SamplesResultingFromConditionBy

Parameters:
    recipeType : string
    paramPredicate : Annotation -> bool

Returns: ResizeArray<Sample>

Find qualifying processes by recipe type, then filter their ParameterValues with a caller-supplied predicate. Returns all terminal-output Samples of the downstream subgraphs of qualifying processes.

recipeType : string
paramPredicate : Annotation -> bool
Returns: ResizeArray<Sample>

this.SamplesUpstreamOf

Full Usage: this.SamplesUpstreamOf

Parameters:
Returns: ResizeArray<Sample>
node : IONode
Returns: ResizeArray<Sample>

this.TryGetDataFile

Full Usage: this.TryGetDataFile

Parameters:
    path : string

Returns: Data option
path : string
Returns: Data option

this.TryGetFragmentSelectorProvider

Full Usage: this.TryGetFragmentSelectorProvider

Parameters:
    selectorFormat : string

Returns: IFragmentSelectorProvider option

Returns a fragment selector provider from the root dataset, if registered.

selectorFormat : string
Returns: IFragmentSelectorProvider option

this.TryGetPart

Full Usage: this.TryGetPart

Parameters:
    identifier : string

Returns: Dataset option
identifier : string
Returns: Dataset option

this.TryGetProcess

Full Usage: this.TryGetProcess

Parameters:
    name : string

Returns: Process option
name : string
Returns: Process option

this.TryGetSampleByName

Full Usage: this.TryGetSampleByName

Parameters:
    name : string

Returns: Sample option
name : string
Returns: Sample option

this.UnregisterFragmentSelectorProvider

Full Usage: this.UnregisterFragmentSelectorProvider

Parameters:
    selectorFormat : string

Remove a fragment selector provider from the root dataset.

selectorFormat : string

this.UpstreamAnnotationsForNode

Full Usage: this.UpstreamAnnotationsForNode

Parameters:
    node : IONode
    ?recipeName : string

Returns: ResizeArray<Annotation>

Annotations from all sources in processes upstream of `node` within this dataset.

node : IONode
?recipeName : string
Returns: ResizeArray<Annotation>

this.DateModified

Full Usage: this.DateModified

Returns: string option
Returns: string option

this.AdditionalProperty

Full Usage: this.AdditionalProperty

Returns: ResizeArray<Annotation>
Returns: ResizeArray<Annotation>

this.AdditionalType

Full Usage: this.AdditionalType

Returns: string option

Decoration discriminator (e.g. "Investigation", "Study", "Assay")

Returns: string option

this.Citations

Full Usage: this.Citations

Returns: ResizeArray<ScholarlyArticle>
Returns: ResizeArray<ScholarlyArticle>

this.DateCreated

Full Usage: this.DateCreated

Returns: string option
Returns: string option

this.Identifier

Full Usage: this.Identifier

Returns: string
Returns: string

this.Agents

Full Usage: this.Agents

Returns: ResizeArray<Agent>
Returns: ResizeArray<Agent>

this.DataFiles

Full Usage: this.DataFiles

Returns: ResizeArray<Data>
Returns: ResizeArray<Data>

this.DataContexts

Full Usage: this.DataContexts

Returns: ResizeArray<DataContext>
Returns: ResizeArray<DataContext>

this.License

Full Usage: this.License

Returns: string option
Returns: string option

this.PartOf

Full Usage: this.PartOf

Returns: Dataset option

Back-edge: parent dataset

Returns: Dataset option

this.HasPart

Full Usage: this.HasPart

Returns: ResizeArray<Dataset>
Returns: ResizeArray<Dataset>

this.Processes

Full Usage: this.Processes

Returns: ResizeArray<Process>
Returns: ResizeArray<Process>

this.Title

Full Usage: this.Title

Returns: string option
Returns: string option

this.DatePublished

Full Usage: this.DatePublished

Returns: string option
Returns: string option

this.Description

Full Usage: this.Description

Returns: string option
Returns: string option

Type something to start searching.