Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
P
Preloaded Examples
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Monterey Phoenix
MP Model Collection
Preloaded Examples
Commits
d70517d6
Commit
d70517d6
authored
3 years ago
by
Giammarco, Kristin M
Browse files
Options
Downloads
Patches
Plain Diff
Upload New File
parent
d68ea28c
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
models/Language_concepts/Event_Sharing_Using_COORDINATE_with_SHARE.mp
+70
-0
70 additions, 0 deletions
...age_concepts/Event_Sharing_Using_COORDINATE_with_SHARE.mp
with
70 additions
and
0 deletions
models/Language_concepts/Event_Sharing_Using_COORDINATE_with_SHARE.mp
0 → 100644
+
70
−
0
View file @
d70517d6
/*┬────────────────────────────────────────────────────────┐
│*│ ┌─[ Title and Authors ]──────────────────────────────┐ │
│*│ │ Event Sharing Using COORDINATE with SHARE │ │
│*│ │ Created by Kristin Giammarco and Mike Collins │ │
│*│ │ 2021-11-11 │ │
│*│ └────────────────────────────────────────────────────┘ │
│*│ │
│*│ ┌─[ Purpose ]────────────────────────────────────────┐ │
│*│ │ To illustrate how SHARE ALL is a shortcut for a │ │
│*│ │ COORDINATE statement with SHARE. │ │
│*│ └────────────────────────────────────────────────────┘ │
│*│ │
│*│ ┌─[ Description ]────────────────────────────────────┐ │
│*│ │ This model shows the use of COORDINATE statements │ │
│*│ │ in lieu of SHARE ALL statements, illustrating how │ │
│*│ │ SHARE ALL is a contraction of the longer COORDINATE│ │
│*│ │ statement that composes the same relationships. │ │
│*│ │ SHARE ALL exists because the author of the MP │ │
│*│ │ language, Mikhail Auguston, believes this use of │ │
│*│ │ event sharing is so common that it deserves a │ │
│*│ │ concise way to perform the sharing operation. │ │
│*│ │ Understanding how SHARE and SHARE ALL work is │ │
│*│ │ helpful when there is a need to compose more │ │
│*│ │ complex sharing operations, such as sharing among │ │
│*│ │ composite events. │ │
│*│ └────────────────────────────────────────────────────┘ │
│*│ │
│*│ ┌─[ References ]─────────────────────────────────────┐ │
│*│ │ "Example 3: Data Flow" from Auguston, M. "Monterey │ │
│*│ │ Phoenix System and Software Architecture and │ │
│*│ │ Workflow Modeling Language Manual" (Version 4). │ │
│*│ │ 2020. Available online: │ │
│*│ │ https://wiki.nps.edu/display/MP/Documentation │ │
│*│ │ │ │
│*│ │ Example02_DataFlow_EventSharing. Available online:│ │
│*│ │ https://gitlab.nps.edu/monterey-phoenix/mp-model-collection/preloaded-examples/-/tree/master/models
│*│ └────────────────────────────────────────────────────┘ │
│*│ │
│*│ ┌─[ Search Terms ]───────────────────────────────────┐ │
│*│ │ behavior, data flow; event sharing │ │
│*│ └────────────────────────────────────────────────────┘ │
│*│ │
│*│ ┌─[ Instructions ]───────────────────────────────────┐ │
│*│ │ Run for Scopes 1 and up. │ │
│*│ ├─[ Run Statistics ]─────────────────────────────────┤ │
│*│ │ Scope 1: 3 traces in less than 1 sec. │ │
│*│ │ Scope 2: 28 traces in less than 1 sec. │ │
│*│ │ Scope 3: 165 traces in less than 1 sec. │ │
│*│ └────────────────────────────────────────────────────┘ │
└*┴───────────────────────────────────────────────────────*/
SCHEMA Event_Sharing_Using_COORDINATE_with_SHARE
ROOT Writer: (* ( working | writing ) *);
/* writing events should precede reading */
ROOT File: (+ writing +) (* reading *);
/*Writer, File SHARE ALL writing;*/
COORDINATE $a: writing FROM Writer,
$b: writing FROM File
DO SHARE $a $b; OD;
ROOT Reader: (* ( reading | working ) *);
/*Reader, File SHARE ALL reading;*/
COORDINATE $a: reading FROM Reader,
$b: reading FROM File
DO SHARE $a $b; OD;
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment