Skip to content

[Feature Request] Cooperative Challenge model #56

@danielduhh

Description

@danielduhh

Is your feature request related to a problem? Please describe.
Create a Cooperative Challenges Model.

Cooperative challenges bring in-progress work to a MapRoulette task for completion or verification. Tag changes can be committed to OSM within MapRoulette.

See https://github.com/osmlab/maproulette3/wiki/Cooperative-Challenges for more information

Describe the solution you'd like
Here's the Cooperative Work model:

CooperativeWork {
	meta: {version: 2, type: 2},
	operations: Operations[]
}

Operations
{
	operationType: "createElement" | "deleteElement" | "modifyElement"
	data: Data
}

Data
{
	id: "{elementType}/{OSMID}" e.g. "way/12345678"
	operations: DataOperation[]
}

DataOperation {
	operation: "setTags" | "unsetTags"
	data: {key: value} | string[] <- key/value for "setTags" and array of tag keys for "unsetTags"
}

Here's the example json that would be appended to a task object:

{
        "type": "FeatureCollection",
        "features": [],
	"cooperativeWork": {
		"meta": {
			"version": 2,
			"type": 1
		},
		"operations": [{
			"operationType": "modifyElement",
			"data": {
				"id": "way/792729120",
				"operations": [{
					"operation": "setTags",
					"data": {
						"junction": "turning_loop"
					}
				}]
			}
		}]
	}
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions