openapi: 3.0.1
info:
  title: Azure DevOps Connector
  version: 1.0.0
servers:
- url: /azuredevops/oslc/
paths:
  /dev/query:
    get:
      operationId: query
      parameters:
      - name: queryUri
        in: query
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /dev/selection:
    get:
      operationId: selection
      parameters:
      - name: hintHeight
        in: query
        schema:
          type: string
      - name: hintWidth
        in: query
        schema:
          type: string
      - name: selectionUri
        in: query
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /item/{projectId}/{id}:
    get:
      summary: "GET for resources of type {'Item'}"
      description: "GET for resources of type {'<a href=\"http://azuredevops.lynxwork.com/ado#Item\"\
        >Item</a>'}, with respective resource shapes {'<a href=\"../services/resourceShapes/item\"\
        >Item</a>'}"
      operationId: getItemCompact
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
            application/x-oslc-compact+xml: {}
    put:
      summary: "PUT for resources of type {'Item'}"
      description: "PUT for resources of type {'<a href=\"http://azuredevops.lynxwork.com/ado#Item\"\
        >Item</a>'}, with respective resource shapes {'<a href=\"../services/resourceShapes/item\"\
        >Item</a>'}"
      operationId: updateItem
      parameters:
      - name: If-Match
        in: header
        schema:
          type: string
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/rdf+xml:
            schema:
              $ref: "#/components/schemas/Item"
          application/ld+json:
            schema:
              $ref: "#/components/schemas/Item"
          text/turtle:
            schema:
              $ref: "#/components/schemas/Item"
          application/xml:
            schema:
              $ref: "#/components/schemas/Item"
          application/json:
            schema:
              $ref: "#/components/schemas/Item"
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
            application/x-oslc-compact+xml: {}
  /item/{projectId}/{id}/largePreview:
    get:
      operationId: getItemAsHtmlLargePreview
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /item/{projectId}/{id}/smallPreview:
    get:
      operationId: getItemAsHtmlSmallPreview
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /resourceShapes/{resourceShapePath}:
    get:
      operationId: getResourceShapeAsHtml
      parameters:
      - name: resourceShapePath
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /rootservices:
    get:
      operationId: getRootServices
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
  /catalog/{serviceProviderCatalogId}:
    get:
      operationId: getServiceProviderCatalogAsHtml
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /catalog:
    get:
      operationId: getServiceProviderCatalogs
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /project/{projectId}:
    get:
      operationId: getServiceProviderAsHtml
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /project:
    get:
      operationId: queryServiceProviders
      parameters:
      - name: oslc.searchTerms
        in: query
        schema:
          type: string
      - name: oslc.where
        in: query
        schema:
          type: string
      - name: oslc.prefix
        in: query
        schema:
          type: string
      - name: oslc.paging
        in: query
        schema:
          type: boolean
          default: true
      - name: page
        in: query
        schema:
          type: integer
          format: int32
          default: 1
      - name: oslc.pageSize
        in: query
        schema:
          type: integer
          format: int32
          default: 10
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/ld+json: {}
            text/turtle: {}
            application/xml: {}
            application/json: {}
  /project/{projectId}/service1/items/selector:
    get:
      operationId: ItemSelector
      parameters:
      - name: terms
        in: query
        schema:
          type: string
      - name: oslc.searchTerms
        in: query
        schema:
          type: string
      - name: oslc.where
        in: query
        schema:
          type: string
      - name: oslc.prefix
        in: query
        schema:
          type: string
      - name: oslc.paging
        in: query
        schema:
          type: boolean
          default: true
      - name: page
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 1
      - name: oslc.pageSize
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: itemTypes
        in: query
        schema:
          type: array
          items:
            type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /project/{projectId}/service1/items/query:
    get:
      summary: "Query capability for resources of type {Item}"
      description: "Query capability for resources of type {<a href=\"http://azuredevops.lynxwork.com/ado#Item\"\
        >Item</a>}, with respective resource shapes {<a href=\"../services/resourceShapes/item\"\
        >Item</a>}"
      operationId: queryItemsAsHtml
      parameters:
      - name: oslc.searchTerms
        in: query
        schema:
          type: string
      - name: oslc.where
        in: query
        schema:
          type: string
      - name: oslc.prefix
        in: query
        schema:
          type: string
      - name: oslc.paging
        in: query
        schema:
          type: boolean
          default: true
      - name: page
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 1
      - name: oslc.pageSize
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: itemTypes
        in: query
        schema:
          type: array
          items:
            type: string
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
  /project/{projectId}/service2/testCases/selector:
    get:
      operationId: TestCaseSelector
      parameters:
      - name: terms
        in: query
        schema:
          type: string
      - name: oslc.searchTerms
        in: query
        schema:
          type: string
      - name: oslc.where
        in: query
        schema:
          type: string
      - name: oslc.prefix
        in: query
        schema:
          type: string
      - name: oslc.paging
        in: query
        schema:
          type: boolean
          default: true
      - name: page
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 1
      - name: oslc.pageSize
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /project/{projectId}/service2/testCases/query:
    get:
      summary: "Query capability for resources of type {TestCase}"
      description: "Query capability for resources of type {<a href=\"http://open-services.net/ns/qm#TestCase\"\
        >TestCase</a>}, with respective resource shapes {<a href=\"../services/resourceShapes/testCase\"\
        >TestCase</a>}"
      operationId: queryTestCasesAsHtml
      parameters:
      - name: oslc.searchTerms
        in: query
        schema:
          type: string
      - name: oslc.where
        in: query
        schema:
          type: string
      - name: oslc.prefix
        in: query
        schema:
          type: string
      - name: oslc.paging
        in: query
        schema:
          type: boolean
          default: true
      - name: page
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 1
      - name: oslc.pageSize
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
  /project/{projectId}/service3/tasks/selector:
    get:
      operationId: TaskSelector
      parameters:
      - name: terms
        in: query
        schema:
          type: string
      - name: oslc.searchTerms
        in: query
        schema:
          type: string
      - name: oslc.where
        in: query
        schema:
          type: string
      - name: oslc.prefix
        in: query
        schema:
          type: string
      - name: oslc.paging
        in: query
        schema:
          type: boolean
          default: true
      - name: page
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 1
      - name: oslc.pageSize
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /project/{projectId}/service3/tasks/query:
    get:
      summary: "Query capability for resources of type {Task}"
      description: "Query capability for resources of type {<a href=\"http://open-services.net/ns/cm#Task\"\
        >Task</a>}, with respective resource shapes {<a href=\"../services/resourceShapes/task\"\
        >Task</a>}"
      operationId: queryTasksAsHtml
      parameters:
      - name: oslc.searchTerms
        in: query
        schema:
          type: string
      - name: oslc.where
        in: query
        schema:
          type: string
      - name: oslc.prefix
        in: query
        schema:
          type: string
      - name: oslc.paging
        in: query
        schema:
          type: boolean
          default: true
      - name: page
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 1
      - name: oslc.pageSize
        in: query
        schema:
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
  /taskService/Task/{projectId}/{id}:
    get:
      summary: "GET for resources of type {'Task'}"
      description: "GET for resources of type {'<a href=\"http://open-services.net/ns/cm#Task\"\
        >Task</a>'}, with respective resource shapes {'<a href=\"../services/resourceShapes/task\"\
        >Task</a>'}"
      operationId: getTaskCompact
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
            application/x-oslc-compact+xml: {}
    put:
      summary: "PUT for resources of type {'Task'}"
      description: "PUT for resources of type {'<a href=\"http://open-services.net/ns/cm#Task\"\
        >Task</a>'}, with respective resource shapes {'<a href=\"../services/resourceShapes/task\"\
        >Task</a>'}"
      operationId: updateTask
      parameters:
      - name: If-Match
        in: header
        schema:
          type: string
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/rdf+xml:
            schema:
              $ref: "#/components/schemas/Task"
          application/ld+json:
            schema:
              $ref: "#/components/schemas/Task"
          text/turtle:
            schema:
              $ref: "#/components/schemas/Task"
          application/xml:
            schema:
              $ref: "#/components/schemas/Task"
          application/json:
            schema:
              $ref: "#/components/schemas/Task"
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
            application/x-oslc-compact+xml: {}
  /taskService/Task/{projectId}/{id}/largePreview:
    get:
      operationId: getTaskAsHtmlLargePreview
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /taskService/Task/{projectId}/{id}/smallPreview:
    get:
      operationId: getTaskAsHtmlSmallPreview
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /testCaseService/TestCase/{projectId}/{id}:
    get:
      summary: "GET for resources of type {'TestCase'}"
      description: "GET for resources of type {'<a href=\"http://open-services.net/ns/qm#TestCase\"\
        >TestCase</a>'}, with respective resource shapes {'<a href=\"../services/resourceShapes/testCase\"\
        >TestCase</a>'}"
      operationId: getTestCaseCompact
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
            application/x-oslc-compact+xml: {}
    put:
      summary: "PUT for resources of type {'TestCase'}"
      description: "PUT for resources of type {'<a href=\"http://open-services.net/ns/qm#TestCase\"\
        >TestCase</a>'}, with respective resource shapes {'<a href=\"../services/resourceShapes/testCase\"\
        >TestCase</a>'}"
      operationId: updateTestCase
      parameters:
      - name: If-Match
        in: header
        schema:
          type: string
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/rdf+xml:
            schema:
              $ref: "#/components/schemas/TestCase"
          application/ld+json:
            schema:
              $ref: "#/components/schemas/TestCase"
          text/turtle:
            schema:
              $ref: "#/components/schemas/TestCase"
          application/xml:
            schema:
              $ref: "#/components/schemas/TestCase"
          application/json:
            schema:
              $ref: "#/components/schemas/TestCase"
      responses:
        default:
          description: default response
          content:
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
            text/turtle: {}
            text/html: {}
            application/x-oslc-compact+xml: {}
  /testCaseService/TestCase/{projectId}/{id}/largePreview:
    get:
      operationId: getTestCaseAsHtmlLargePreview
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /testCaseService/TestCase/{projectId}/{id}/smallPreview:
    get:
      operationId: getTestCaseAsHtmlSmallPreview
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /oauth1/authorization_complete:
    get:
      operationId: authorizationComplete
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth1/authorize:
    get:
      operationId: authorize_1
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth1/approveKey:
    get:
      operationId: showApproveKeyPage_1
      parameters:
      - name: key
        in: query
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /oauth2/callback:
    get:
      operationId: authorizationCallback
      parameters:
      - name: code
        in: query
        schema:
          type: string
      - name: state
        in: query
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /trs/base:
    get:
      operationId: getBase
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /trs/base/{page}:
    get:
      operationId: getBasePage
      parameters:
      - name: page
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        default:
          description: default response
          content:
            text/turtle: {}
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
  /trs/changeLog:
    get:
      operationId: getChangeLog
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /trs/changeLog/{page}:
    get:
      operationId: getChangeLogPage
      parameters:
      - name: page
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        default:
          description: default response
          content:
            text/turtle: {}
            application/rdf+xml: {}
            application/xml: {}
            application/json: {}
  /trs:
    get:
      operationId: getTrackedResourceSet
      responses:
        default:
          description: default response
          content:
            text/turtle:
              schema:
                $ref: "#/components/schemas/TrackedResourceSet"
            application/rdf+xml:
              schema:
                $ref: "#/components/schemas/TrackedResourceSet"
            application/xml:
              schema:
                $ref: "#/components/schemas/TrackedResourceSet"
            application/json:
              schema:
                $ref: "#/components/schemas/TrackedResourceSet"
  /oauth/consumers:
    get:
      operationId: getAllConsumers
      responses:
        default:
          description: default response
          content:
            application/json: {}
  /oauth/consumers/{key}:
    post:
      operationId: updateConsumer
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                name:
                  type: string
                trusted:
                  type: string
                provisional:
                  type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
    delete:
      operationId: removeConsumer
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth/authorize:
    get:
      operationId: authorize
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth/internal/approveToken:
    post:
      operationId: authorize_2
      requestBody:
        content:
          '*/*':
            schema:
              type: object
              properties:
                requestToken:
                  type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth/accessToken:
    get:
      operationId: doGetAccessToken
      responses:
        default:
          description: default response
          content:
            '*/*': {}
    post:
      operationId: doPostAccessToken
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth/requestToken:
    get:
      operationId: doGetRequestToken
      responses:
        default:
          description: default response
          content:
            '*/*': {}
    post:
      operationId: doPostRequestToken
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth/adminLogin:
    post:
      operationId: login
      requestBody:
        content:
          '*/*':
            schema:
              type: object
              properties:
                id:
                  type: string
                password:
                  type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth/login:
    post:
      operationId: login_1
      requestBody:
        content:
          '*/*':
            schema:
              type: object
              properties:
                id:
                  type: string
                password:
                  type: string
                requestToken:
                  type: string
      responses:
        default:
          description: default response
          content:
            '*/*': {}
  /oauth/requestKey:
    post:
      operationId: provisionalKey
      responses:
        default:
          description: default response
          content:
            application/json: {}
  /oauth/approveKey:
    get:
      operationId: showApproveKeyPage
      parameters:
      - name: key
        in: query
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            text/html: {}
  /oauth/admin:
    get:
      operationId: showConsumerKeyManagementPage
      responses:
        default:
          description: default response
          content:
            '*/*': {}
components:
  schemas:
    Item:
      type: object
      properties:
        about:
          type: string
          format: uri
        types:
          type: array
          items:
            type: string
            format: uri
        extendedProperties:
          type: object
          additionalProperties:
            type: object
        rdfTypes:
          uniqueItems: true
          type: array
          items:
            type: string
            format: uri
        title:
          type: string
        identifier:
          type: string
        type:
          type: string
        description:
          type: string
        created:
          type: string
          format: date-time
        modified:
          type: string
          format: date-time
        createdBy:
          $ref: "#/components/schemas/Link"
        lastModifiedby:
          $ref: "#/components/schemas/Link"
        seeAlso:
          $ref: "#/components/schemas/Link"
        state:
          type: string
        rdfType:
          type: string
          format: uri
    Link:
      type: object
      properties:
        value:
          type: string
          format: uri
        label:
          type: string
    Task:
      type: object
      properties:
        about:
          type: string
          format: uri
        types:
          type: array
          items:
            type: string
            format: uri
        extendedProperties:
          type: object
          additionalProperties:
            type: object
        shortTitle:
          type: string
        description:
          type: string
        title:
          type: string
        identifier:
          type: string
        subject:
          uniqueItems: true
          type: array
          items:
            type: string
        creator:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        contributor:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        created:
          type: string
          format: date-time
        modified:
          type: string
          format: date-time
        serviceProvider:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        instanceShape:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        discussedBy:
          $ref: "#/components/schemas/Link"
        closeDate:
          type: string
          format: date-time
        status:
          type: string
        closed:
          type: boolean
        inProgress:
          type: boolean
        fixed:
          type: boolean
        approved:
          type: boolean
        reviewed:
          type: boolean
        verified:
          type: boolean
        relatedChangeRequest:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        affectsPlanItem:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        affectedByDefect:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        tracksRequirement:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        implementsRequirement:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        affectsRequirement:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        tracksChangeSet:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        parent:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        priority:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        state:
          $ref: "#/components/schemas/Link"
        authorizer:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
    TestCase:
      type: object
      properties:
        about:
          type: string
          format: uri
        types:
          type: array
          items:
            type: string
            format: uri
        extendedProperties:
          type: object
          additionalProperties:
            type: object
        contributor:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        created:
          type: string
          format: date-time
        creator:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        description:
          type: string
        identifier:
          type: string
        modified:
          type: string
          format: date-time
        instanceShape:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        serviceProvider:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        subject:
          uniqueItems: true
          type: array
          items:
            type: string
        title:
          type: string
        type:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        relatedChangeRequest:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        testsChangeRequest:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        usesTestScript:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
        validatesRequirement:
          uniqueItems: true
          type: array
          items:
            $ref: "#/components/schemas/Link"
    ChangeEvent:
      type: object
      properties:
        about:
          type: string
          format: uri
        types:
          type: array
          items:
            type: string
            format: uri
        extendedProperties:
          type: object
          additionalProperties:
            type: object
        changed:
          type: string
          format: uri
        order:
          type: integer
    ChangeLog:
      type: object
      properties:
        about:
          type: string
          format: uri
        types:
          type: array
          items:
            type: string
            format: uri
        extendedProperties:
          type: object
          additionalProperties:
            type: object
        change:
          type: array
          items:
            $ref: "#/components/schemas/ChangeEvent"
        previous:
          type: string
          format: uri
    TrackedResourceSet:
      type: object
      properties:
        about:
          type: string
          format: uri
        types:
          type: array
          items:
            type: string
            format: uri
        extendedProperties:
          type: object
          additionalProperties:
            type: object
        changeLog:
          $ref: "#/components/schemas/ChangeLog"
        base:
          type: string
          format: uri
