valueflows docs
git clone
Log | Files | Refs | README

commit c00f170133775cd8bb51ee5299a9ce793744cea3
parent 8055bbf5647be3ede3e4a3d90e4fec450b740ba3
Author: Lynn Foster <>
Date:   Tue,  6 Aug 2019 09:29:41 -0500

first cut example section (#538)

Mdocs/ | 9+++++++++
Mdocs/introduction/ | 6+-----
Mdocs/introduction/ | 5-----
Mdocs/introduction/ | 6------
Mdocs/introduction/ | 4----
Mdocs/introduction/ | 6+++---
Mexamples/claim.yaml | 2+-
Aexamples/ | 6++++++
Aexamples/ | 5+++++
Aexamples/ | 32++++++++++++++++++++++++++++++++
Aexamples/ | 25+++++++++++++++++++++++++
Aexamples/ | 14++++++++++++++
Aexamples/ | 5+++++
Mexamples/fulfill-satisfy.yaml | 25++++++-------------------
Mexamples/process-manufacturing.yaml | 2+-
Mexamples/simple-plan.yaml | 1-
16 files changed, 108 insertions(+), 45 deletions(-)

diff --git a/docs/ b/docs/ @@ -36,6 +36,15 @@ * [External terms](specification/ * [Classes and Properties]( +## Examples + +* [Agents](examples/ +* [Economic Resources](examples/ +* [Production](examples/ +* [Exchanges and Transfers](examples/ +* [Planning](examples/ +* [Combination Examples](examples/ + ## Appendices * [REA References](appendix/ diff --git a/docs/introduction/ b/docs/introduction/ @@ -8,7 +8,7 @@ We also want to acknowledge that some people prefer to think of themselves as in So, if people want to form a group that has agency as a group, fine. If people want to consider that their group does not have agency as a group, also fine. Not all groups, and especially not all networks, will be Agents in ValueFlows. That depends on the agreement of the people in the group. Note that within the vocabulary, network formations will appear, as agents have economic interactions with each other in the world. This does not mean that the network is necessarily a ValueFlows Agent. -## Agent Relationships +### Agent Relationships Agent relationships have many nuances, thus VF provides the ability to define one's own kinds of relationships. For example people might "participate" with an organization by means of agreeing to terms and conditions. Or people might have more active "membership" in a group or organization. Or people might consider themselves members but want a more independently flavored term such as "affiliates". @@ -19,7 +19,3 @@ There are a number of useful Properties in existing vocabularies that can be use Relationships have direction: For example, in "Michael is a member of Enspiral", Michael is the subject and Enspiral is the object. In this case the inverse is also valid, "Enspiral has member Michael". Relationships can be in a scope (or not): For example, "Kathy is mentor of Sam, in the scope of Enspiral." - -## Examples - -[import, lang:"yaml"](../../examples/agent.yaml) diff --git a/docs/introduction/ b/docs/introduction/ @@ -105,8 +105,3 @@ Sometimes a quantity is expressed in time-based units, like "I worked 6 hours", Sometimes a situation may call for a "compound quantity", like "Number-per-Year". Times can have different levels of exactness based on the need. For example a commitment might specify that a task should be done by a certain date, but it doesn't matter when it is done before that date. - - -### Examples - -[import, lang:"yaml"](../../examples/fulfill-satisfy.yaml) diff --git a/docs/introduction/ b/docs/introduction/ @@ -19,9 +19,3 @@ Below is a view of processes, which occur in resource flow networks, and live in Here is a specific example: ![salsa flow]( - -## Examples - -[import, lang:"yaml"](../../examples/process-manufacturing.yaml) - -[import, lang:"yaml"](../../examples/process-workflow.yaml) diff --git a/docs/introduction/ b/docs/introduction/ @@ -92,7 +92,3 @@ One example: a resource which defines the rental of an apartment has the apartme Unlike underlying resource, if one resource contains other resources, the contained resources are part of, or make up the larger resource. For example, a bank account might contain a number of "virtual accounts" that a group manages itself, outside the bank's knowledge. Or, a bike shed resource might contain 10 bikes, which are identified and tracked by their serial numbers as individual resources. - -## Examples - -[import, lang:"yaml"](../../examples/resource.yaml) diff --git a/docs/introduction/ b/docs/introduction/ @@ -19,14 +19,14 @@ For functions that require traversing value flows, often the value flow will cro * Standing agreements can govern what happens. * A conversation for action might be required to determine what should occur for the specific instance. -## Accounting +### Accounting Accounting is usually done for an agent or other bounded scope. Where a computer system supports one enterprise, this is simple. When a computer system supports many organizations or there is a distributed network of economic activity, it is useful to be able to segregate the accounting using scope. It basically enables multi-party accounting in a networked scenario. -## Planning +### Planning Sometimes a generic recipe will cross scope boundaries for particular agents. For example one agent could produce a resource that consumes a component made by another agent. In this case, can the first agent schedule the production of the component by the second agent? Possibly yes, if there are agreements in place for that, and the first agent has verified that inventory does not already exist. Or possibly, based again on agreements, the first agent can assume the second agent will provide the component, with the second agent taking responsibility for checking if it is onhand, and if not, scheduling it for production. Or possibly, the first agent plans only to source the component in some yet-to-be-defined way. -## Distributing Incoming Resources +### Distributing Incoming Resources Some organizations distribute incoming resources backwards on value flows, based on people's contributions to the resources that generated the income. When traversing the value chain, it is useful to know when the traversal has crossed a scope boundary, because it is possible that the rules for distributing the incoming resources will change for a different scope. If the rules change or the rules are unknown, the income can be passed on to the other scope for them to distribute. diff --git a/examples/claim.yaml b/examples/claim.yaml @@ -35,7 +35,7 @@ qudt:numericValue: 140 dcterms:created: 2018-10-14T15:30:00-0:00 triggeredBy: mfg:02b39a30-3e04-4305-9656-7f261aa63c83 - under: mfg:e1721a61-cd47-4556-84b9-8b1b81da15be # a distribution agreement (not detailed in example) + agreedIn: mfg:e1721a61-cd47-4556-84b9-8b1b81da15be # a distribution agreement (not detailed in example) # half of the manufactured product is sold along with some other products, and income is distributed diff --git a/examples/ b/examples/ @@ -0,0 +1,6 @@ +# Agent Examples + +These examples include agents (people and organizations) and their relationships. + +[import, lang:"yaml"](agent.yaml) + diff --git a/examples/ b/examples/ @@ -0,0 +1,5 @@ +# Complex Examples + +#### Transportation with transfer FOB destination + +[import, lang:"yaml"](transport-with-transfer.yaml) diff --git a/examples/ b/examples/ @@ -0,0 +1,32 @@ +# Transfer and Exchange Examples + +#### Exchange agreements + +An exchange agreement with commitments and an exchange without prior agreement. + +[import, lang:"yaml"](exch-agreement.yaml) + +#### Crypto-currency transfer + +A simple transfer of a currency from one agent to another. + +[import, lang:"yaml"](transfer-crypto.yaml) + +#### Moving crypto-currency + +A simple move of a currency from one account to another by one agent. + +[import, lang:"yaml"](move-crypto.yaml) + +#### Checkout book + +Checking out and checking back in a library book (a loan). + +[import, lang:"yaml"](checkout-book.yaml) + +#### Claim + +Logged work triggers a claim for future income distribution for that work. + +[import, lang:"yaml"](claim.yaml) + diff --git a/examples/ b/examples/ @@ -0,0 +1,25 @@ +# Planning Examples + +#### Simple plan + +A plan for creating some different resources needed for one campaign. + +[import, lang:"yaml"](simple-plan.yaml) + +#### Fulfillment and satisfaction + +Examples of commitments satisfying intents, and economic events satisfying commitments. + +[import, lang:"yaml"](fulfill-satisfy.yaml) + +#### Proposals with intents + +Several simple examples of proposals, including requests and offers with and without expected reciprocity. Also timebank intents, price lists, requests for help with a planned production process. + +[import, lang:"yaml"](simple-proposals.yaml) + +#### Budgeting + +An abbreviated budget, an example of a scenario. + +[import, lang:"yaml"](budget.yaml) diff --git a/examples/ b/examples/ @@ -0,0 +1,14 @@ +# Production Examples + +#### Manufacturing + +Execution of simple one-process manufacturing with typical inputs and outputs. + +[import, lang:"yaml"](process-manufacturing.yaml) + +#### Workflow production + +A simple repair process with typical inputs and outputs. + +[import, lang:"yaml"](process-workflow.yaml) + diff --git a/examples/ b/examples/ @@ -0,0 +1,5 @@ +# Economic Resource Examples + +These examples include economic resources, classified and with a resource specification. + +[import, lang:"yaml"](resource.yaml) diff --git a/examples/fulfill-satisfy.yaml b/examples/fulfill-satisfy.yaml @@ -16,17 +16,11 @@ action: work receiver: https://manufacturing.example/ resourceClassifiedAs: # machining - intendedQuantity: + flowQuantity: qudt:unit: unit:Hour qudt:numericValue: 8 - intendedTime: - '@type': time:ProperInterval - time:intervalStarts: - '@type': time:Instant - time:inXSDDateTimeStamp: 2018-10-14T8:00:00-0:00 - time:intervalEnds: - '@type': time:Instant - time:inXSDDateTimeStamp: 2018-10-15T18:00:00-0:00 + hasBeginning: 2018-10-14T8:00:00-0:00 + hasEnd: 2018-10-15T18:00:00-0:00 # Bob commits to doing the work on Oct. 14 @@ -36,18 +30,11 @@ provider: https://bob.example/ receiver: https://manufacturing.example/ resourceClassifiedAs: # machining - committedQuantity: + flowQuantity: qudt:unit: unit:Hour qudt:numericValue: 8 - committedTime: - '@type': time:ProperInterval - time:intervalStarts: - '@type': time:Instant - time:inXSDDateTimeStamp: 2018-10-14T8:00:00-0:00 - time:intervalEnds: - '@type': time:Instant - time:inXSDDateTimeStamp: 2018-10-14T17:00:00-0:00 - + hasBeginning: 2018-10-14T8:00:00-0:00 + hasEnd: 2018-10-14T17:00:00-0:00 - '@id': mfg:b52a5815-fae9-43bf-be95-833b95dc0adb '@type': Satisfaction diff --git a/examples/process-manufacturing.yaml b/examples/process-manufacturing.yaml @@ -24,7 +24,7 @@ currentQuantity: qudt:unit: unit:Number qudt:numericValue: 130 - note: 4 x 8 sheet of 1/2 inch plywood + skos:note: 4 x 8 sheet of 1/2 inch plywood - '@id': mfg:6b97b1be-8e07-44ac-82e5-214f1b2aaf33 '@type': EconomicResource diff --git a/examples/simple-plan.yaml b/examples/simple-plan.yaml @@ -43,7 +43,6 @@ qudt:unit: unit:Number qudt:numericValue: 1020 - - '@id': printer:9bd19194-a36d-4a1f-896b-8082887962cb '@type': Process name: Print posters