{
  "$schema": "https://datapackage.org/profiles/2.0/tableschema.json",
  "title": "マイルストーン",
  "description": "プロジェクトの中でタスクをまとめる、予定の目標です。Redmine のバージョン、GitHub や GitLab のマイルストーン、Jira の修正バージョンなどにあたります。名前、期限、状態を持ちます。",
  "x-type": "Milestone",
  "x-typeIri": "https://datamodels.jp/ns/task/Milestone",
  "x-version": "1.0.0",
  "x-schema": "https://datamodels.jp/schema/task/Milestone/v1.0.0.json",
  "x-context": "https://datamodels.jp/context/task/v1.jsonld",
  "x-translations": {
    "en": {
      "title": "Milestone",
      "description": "A planned target that groups tasks within a project: a version in Redmine, a milestone in GitHub or GitLab, a fix version in Jira. It has a name, a due date and a state."
    }
  },
  "fields": [
    {
      "name": "id",
      "title": "エンティティの ID",
      "description": "エンティティの ID（URI。例：urn:ngsi-ld:Milestone:001）",
      "type": "string",
      "constraints": {
        "required": true,
        "unique": true
      },
      "x-translations": {
        "en": {
          "title": "Entity id",
          "description": "Entity id: a URI, for example urn:ngsi-ld:Milestone:001"
        }
      }
    },
    {
      "name": "name",
      "title": "名称",
      "description": "名称",
      "type": "string",
      "x-iri": "https://uri.etsi.org/ngsi-ld/name",
      "constraints": {
        "required": true
      },
      "x-translations": {
        "en": {
          "title": "Name",
          "description": "Name"
        }
      }
    },
    {
      "name": "description",
      "title": "説明",
      "description": "説明",
      "type": "string",
      "x-iri": "http://purl.org/dc/terms/description",
      "x-translations": {
        "en": {
          "title": "Description",
          "description": "Description"
        }
      }
    },
    {
      "name": "project",
      "title": "所属するプロジェクト",
      "description": "所属するプロジェクト",
      "type": "string",
      "format": "uri",
      "x-iri": "https://datamodels.jp/ns/task/project",
      "x-translations": {
        "en": {
          "title": "The project this belongs to",
          "description": "The project this belongs to"
        }
      }
    },
    {
      "name": "start",
      "title": "予定期間の開始",
      "description": "予定期間の開始。日付か日時",
      "type": "string",
      "x-iri": "https://datamodels.jp/ns/task/start",
      "constraints": {
        "pattern": "\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2}))?"
      },
      "x-translations": {
        "en": {
          "title": "Planned start",
          "description": "Planned start: a date, or a date and time"
        }
      }
    },
    {
      "name": "due",
      "title": "期限",
      "description": "期限（予定しているリリースや完了）。日付か日時",
      "type": "string",
      "x-iri": "https://datamodels.jp/ns/task/due",
      "constraints": {
        "pattern": "\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2}))?"
      },
      "x-translations": {
        "en": {
          "title": "Due",
          "description": "Due: the planned release or completion, a date or a date and time"
        }
      }
    },
    {
      "name": "milestoneStatus",
      "title": "状態",
      "description": "状態：open（受付中）、locked（ロック中。新しいタスクを追加できない）、closed（完了）。status は core context の予約語なので、milestoneStatus という名前にしています。",
      "type": "string",
      "x-iri": "https://datamodels.jp/ns/task/milestoneStatus",
      "constraints": {
        "enum": [
          "open",
          "locked",
          "closed"
        ]
      },
      "x-translations": {
        "en": {
          "title": "State",
          "description": "State: open = accepting tasks, locked = no new tasks may be added, closed = done; status is protected in the core context, hence milestoneStatus"
        }
      }
    },
    {
      "name": "source",
      "title": "元のシステムでのこのマイルストーンの URL",
      "description": "元のシステムでのこのマイルストーンの URL",
      "type": "string",
      "format": "uri",
      "x-iri": "https://smart-data-models.github.io/data-models/terms.jsonld#/definitions/source",
      "x-translations": {
        "en": {
          "description": "URL of this object in the system of record"
        }
      }
    },
    {
      "name": "externalId",
      "title": "元のシステムでの識別子",
      "description": "元のシステムでの識別子",
      "type": "string",
      "x-iri": "https://datamodels.jp/ns/task/externalId",
      "x-translations": {
        "en": {
          "title": "Identifier in the system of record",
          "description": "Identifier in the system of record"
        }
      }
    },
    {
      "name": "dateCreated",
      "title": "元のシステムでの作成日時",
      "description": "元のシステムでの作成日時（ブローカーの createdAt とは別）",
      "type": "datetime",
      "x-iri": "https://smart-data-models.github.io/data-models/terms.jsonld#/definitions/dateCreated",
      "x-translations": {
        "en": {
          "title": "Creation time in the system of record",
          "description": "Creation time in the system of record (distinct from the broker attribute createdAt)"
        }
      }
    },
    {
      "name": "dateModified",
      "title": "元のシステムでの更新日時",
      "description": "元のシステムでの更新日時",
      "type": "datetime",
      "x-iri": "https://smart-data-models.github.io/data-models/terms.jsonld#/definitions/dateModified",
      "x-translations": {
        "en": {
          "description": "Last modification time in the system of record"
        }
      }
    }
  ],
  "primaryKey": [
    "id"
  ],
  "missingValues": [
    ""
  ]
}
