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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions