-
Notifications
You must be signed in to change notification settings - Fork 883
Closed
Labels
no-issue-activityDiscuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).Discuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).
Description
I would like to see a type on Schema.org for describing a Task (, Issue, or WorkOrder). This could be used to mark up a GitHub issue, Asana task, or an item on a to-do list for example. Below, in JSON-LD format, are my ideas for property names and values.
{
"@context": "http://schema.org/",
"@id": "http://schema.org/Task",
"@type": "Class",
"subClassOf": "http://schema.org/Intangible",
"name": "Task",
"description": "A task that can be assigned and completed.",
"property": [
{
"@type": "Property",
"@id": "http://schema.org/assignee",
"name": "assignee",
"description": "A person or organization to whom this task is assigned.",
"rangeIncludes": [
{ "@id": "http://schema.org/Person" },
{ "@id": "http://schema.org/Organization" }
]
},
{
"@type": "Property",
"@id": "http://schema.org/attachment",
"name": "attachment",
"description": "A relevant work attached to this task.",
"rangeIncludes": [ { "@id": "http://schema.org/CreativeWork" } ]
},
{
"@type": "Property",
"@id": "http://schema.org/category"
},
{
"@type": "Property",
"@id": "http://schema.org/comment"
},
{
"@type": "Property",
"@id": "http://schema.org/commentCount"
},
{
"@type": "Property",
"@id": "http://schema.org/completedBy",
"name": "completedBy",
"description": "The entity who completed this task.",
"subPropertyOf": { "@id": "http://schema.org/contributor" },
"rangeIncludes": [
{ "@id": "http://schema.org/Person" },
{ "@id": "http://schema.org/Organization" }
]
},
{
"@type": "Property",
"@id": "http://schema.org/contributor"
},
{
"@type": "Property",
"@id": "http://schema.org/creator"
},
{
"@type": "Property",
"@id": "http://schema.org/dateCompleted",
"name": "dateCompleted",
"description": "The date/time on which this task was completed.",
"rangeIncludes": [ { "@id": "http://schema.org/DateTime" } ]
},
{
"@type": "Property",
"@id": "http://schema.org/dateCreated"
},
{
"@type": "Property",
"@id": "http://schema.org/dateDue",
"name": "dateDue",
"description": "The date/time on which this task is due.",
"rangeIncludes": [ { "@id": "http://schema.org/DateTime" } ]
},
{
"@type": "Property",
"@id": "http://schema.org/dateModified"
},
{
"@type": "Property",
"@id": "http://schema.org/dependency",
"name": "dependency",
"description": "A task that must be comleted before this task is completed.",
"inverseOf": { "@id": "http://schema.org/dependent" },
"rangeIncludes": [ { "@id": "http://schema.org/Task" } ]
},
{
"@type": "Property",
"@id": "http://schema.org/dependent",
"name": "dependent",
"description": "A task that relies on the completion of this task.",
"inverseOf": { "@id": "http://schema.org/dependency" },
"rangeIncludes": [ { "@id": "http://schema.org/Task" } ]
},
{
"@type": "Property",
"@id": "http://schema.org/downvoteCount"
},
{
"@type": "Property",
"@id": "http://schema.org/event"
},
{
"@type": "Property",
"@id": "http://schema.org/keywords"
},
{
"@type": "Property",
"@id": "http://schema.org/subscriber",
"name": "subscriber",
"description": "Anyone who wishes to receive updates on this task.",
"rangeIncludes": [
{ "@id": "http://schema.org/Person" },
{ "@id": "http://schema.org/Organization" }
]
},
{
"@type": "Property",
"@id": "http://schema.org/subtask",
"name": "subtask",
"description": "A task that is a part of this task.",
"inverseOf": { "@id": "http://schema.org/supertask" },
"rangeIncludes": [ { "@id": "http://schema.org/Task" } ]
},
{
"@type": "Property",
"@id": "http://schema.org/supertask",
"name": "supertask",
"description": "A task that this task is a part of.",
"inverseOf": { "@id": "http://schema.org/subtask" },
"rangeIncludes": [ { "@id": "http://schema.org/Task" } ]
},
{
"@type": "Property",
"@id": "http://schema.org/upvoteCount"
}
]
}Here’s example markup of issue #987 :
{
"@context": "http://schema.org/",
"@type": "Task",
"@id": "https://github.com/schemaorg/schemaorg/issues/987",
"identifier": "987",
"name": "provide a status property for CreativeWork",
"description": "... I propose adding a similar property to CreativeWork, perhaps named creativeWorkStatus...",
"assignee": [],
"comment": [
{
"@type": "Comment",
"text": "danbri added the schema.org vocab label on Mar 7, 2016"
}
],
"commentCount": 0,
"creator": { "@type": "Person", "@id": "https://github.com/chharvey" },
"dateCreated": "2016-02-15",
"dateModified": "2017-01-14",
"keywords": [ "schema.org vocab" ],
"subscriber": [
{ "@type": "Person", "@id": "https://github.com/chharvey" },
{ "@type": "Person", "@id": "https://github.com/danbri" }
]
}akuckartz and colinkahn
Metadata
Metadata
Assignees
Labels
no-issue-activityDiscuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).Discuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).