Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Examples, updated context, readme draft #37

Merged
merged 1 commit into from
Oct 8, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 65 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,79 @@

Vocabulary to describe networks of people and groups.

## Examples
## Vocabulary

All examples open in [JSON-LD Playground](http://json-ld.org/playground)
![agentpic](https://github.com/valueflows/agent/tree/master/assets/agent.png)

Notes:
* This vocabulary is very much in process, as is this documentation.
* Many of the terms will in the future be drawn from an existing vocabulary.
* All examples open in [JSON-LD Playground](http://json-ld.org/playground)
and use context and example files from master branch of this repository.

### Person
### Agent Type

#### Notes

We are using a class hierarchy of Agent Types: Agent, Person, Organization, Group. We will use existing vocabularies for the top levels. We suggest that people add other types of agents as subclasses of this hierarchy if others are useful.

### Relationship Type

#### Notes

A Relationship Type is a generic defined relationship that can be had between 2 Agents (or subclasses of). Although it usually is, the relationship does not have to be agreed to from both sides, for example "follow". A Relationship Type can be a direct relationship, like "steward" or "like", or more like a role. Role type Relationship Types are often used for a person's role in an organization or group, for example "grower" or "harvester" for a food network.

The Relationship Type is implemented as a rdf:Property. There are a number of useful properties in existing vocabularies that can be used. Or people can create their own as needed.

#### Properties

These properties are grouped with the rdf:Property that names the relationship type.

* label (rdfs:label)
* inverse label (owl:inverseOf rdfs:label)
* (need to add the source, target, context types.....)

#### Examples

### Agent

#### Notes

An Agent is an entity that has agency in the economic realm. This could be a person, organization, group, network, etc.

#### Properties

* id
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

currently examles use @id not id

* type
* displayName
* url
* image
* (will be others)

#### Examples

##### Person

* [elf Pavlik](http://json-ld.org/playground/#startTab=tab-compacted&json-ld=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Felf-pavlik.jsonld&context=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Felf-pavlik.jsonld)
* [Mikey Williams](http://json-ld.org/playground/#startTab=tab-compacted&json-ld=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Fmikey.jsonld&context=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Fmikey.jsonld)

### Group
##### Group

* [hackers4peace](http://json-ld.org/playground/#startTab=tab-compacted&json-ld=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Fhackers4peace.jsonld&context=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Fhackers4peace.jsonld)
* [Taabir](http://json-ld.org/playground/#startTab=tab-compacted&json-ld=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Ftaabir.jsonld&context=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Ftaabir.jsonld)
* [Enspiral Craftworks](http://json-ld.org/playground/#startTab=tab-compacted&json-ld=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Fcraftworks.jsonld&context=https%3A%2F%2Frawgit.com%2Fvalueflows%2Fagent%2Fmaster%2Fexamples%2Fcraftworks.jsonld)

### Relationship

#### Notes

A Relationship in this vocabulary denotes a relationship between 2 Agents of any type. The relationship can be in the context of an Agent that is a context type agent, which would not be a Person. For example, Jane is a mentor of John in the context of the group Enspiral.

#### Properties

* subject (reference to an agent)
* relationship (reference to the relationship type)
* object (reference to an agent)
* context (reference to an agent, optional)

#### Examples
Binary file added assets/agent.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 10 additions & 1 deletion context.jsonld
Original file line number Diff line number Diff line change
@@ -1,11 +1,20 @@
{
"@context": {
"vf": "https://w3id.org/valueflows/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"rdfs:label": { "@container": "@language" },
"Person": "vf:Person",
"Group": "vf:Group",
"url": { "@id": "vf:url", "@type": "@id" },
"image": { "@id": "vf:image", "@type": "@id" },
"displayName": "vf:displayName",
"displayNameMap": { "@id": "displayName", "@container": "@language" }
"displayNameMap": { "@id": "displayName", "@container": "@language" },
"Relationship": "vf:Relationship",
"context": "vf:context",
"object": "vf:object",
"relationship": "vf:relationship",
"subject": "vf:subject"
}
}
140 changes: 140 additions & 0 deletions examples/bobandlynn.jsonld
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
{
"@context": {
"vf": "https://w3id.org/valueflows/",
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"rdfs:label": {
"@container": "@language"
},
"Group": "vf:Group",
"Person": "vf:Person",
"Relationship": "vf:Relationship",
"context": "vf:context",
"displayName": "vf:displayName",
"displayNameMap": { "@id": "displayName", "@container": "@language" },
"object": "vf:object",
"relationship": "vf:relationship",
"subject": "vf:subject"
},
"@graph": [
{
"@id": "http://nrp.webfactional.com/accounting/agent-type/Network",
"@type": "owl:Class",
"rdfs:label": {
"en": "Network"
},
"rdfs:subClassOf": {
"@id": "Group"
}
},
{
"@id": "http://nrp.webfactional.com/accounting/agent-relationship-type/affiliate",
"@type": "rdf:Property",
"rdfs:label": {
"en": "is affiliate of"
},
"owl:inverseOf": {
"rdfs:label": {
"en": "has affiliate"
}
}
},
{
"@id": "http://nrp.webfactional.com/accounting/agent-relationship-type/member",
"@type": "rdf:Property",
"rdfs:label": {
"en": "is member of"
},
"owl:inverseOf": {
"rdfs:label": {
"en": "has member"
}
}
},
{
"@id": "http://nrp.webfactional.com/accounting/agent-relationship-type/child",
"@type": "rdf:Property",
"rdfs:label": {
"en": "is child of"
},
"owl:inverseOf": {
"rdfs:label": {
"en": "has child"
}
}
},
{
"@id": "http://nrp.webfactional.com/accounting/agent/1",
"@type": "Person",
"displayName": "Bob Haugen"
},
{
"@id": "http://nrp.webfactional.com/accounting/agent/8",
"@type": "http://nrp.webfactional.com/accounting/agent-type/Network",
"displayName": "Sensorica"
},
{
"@id": "http://nrp.webfactional.com/accounting/agent/6",
"@type": "Person",
"displayName": "Lynn Foster"
},
{
"@id": "http://nrp.webfactional.com/accounting/agent/7",
"@type": "Group",
"displayName": "Mikorizal Software"
},
{
"@id": "http://nrp.webfactional.com/accounting/agent-relationship/3/",
"@type": "Relationship",
"object": {
"@id": "http://nrp.webfactional.com/accounting/agent/8/"
},
"relationship": {
"@id": "http://nrp.webfactional.com/accounting/agent-relationship-type/affiliate"
},
"subject": {
"@id": "http://nrp.webfactional.com/accounting/agent/1/"
}
},
{
"@id": "http://nrp.webfactional.com/accounting/agent-relationship/2/",
"@type": "Relationship",
"object": {
"@id": "http://nrp.webfactional.com/accounting/agent/7/"
},
"relationship": {
"@id": "http://nrp.webfactional.com/accounting/agent-relationship-type/member"
},
"subject": {
"@id": "http://nrp.webfactional.com/accounting/agent/6/"
}
},
{
"@id": "http://nrp.webfactional.com/accounting/agent-relationship/4/",
"@type": "Relationship",
"object": {
"@id": "http://nrp.webfactional.com/accounting/agent/8/"
},
"relationship": {
"@id": "http://nrp.webfactional.com/accounting/agent-relationship-type/affiliate"
},
"subject": {
"@id": "http://nrp.webfactional.com/accounting/agent/6/"
}
},
{
"@id": "http://nrp.webfactional.com/accounting/agent-relationship/1/",
"@type": "Relationship",
"object": {
"@id": "http://nrp.webfactional.com/accounting/agent/7/"
},
"relationship": {
"@id": "http://nrp.webfactional.com/accounting/agent-relationship-type/member"
},
"subject": {
"@id": "http://nrp.webfactional.com/accounting/agent/1/"
}
}
]
}