trompamusic/ce-api

ControlAction after RequestControl with AudioObject in RangeIncludes of Property returns null

Closed this issue · 2 comments

To reproduce:

mutation {
  CreateSoftwareApplication(
        title: "Extract features"
        name: "Extract features"
        contributor: "UPF"
        creator: "UPF"
        source: "https://github.com/juansgomez87/active-learning"
        subject: "Emotion Recognition Model"
        description: "This program extracts the IS13 feature set from audio (mp3 or wav)"
        format: "html/text"
        language: en
        ) {
          identifier
        }
}

{'data': {'CreateSoftwareApplication': {'identifier': 'f4628931-cfde-4963-9374-0ba758f10a6f'}}}


mutation {
  CreateControlAction(
        name: "TPL Extract Features"
        description: "This program extracts the IS13 feature set from audio (mp3 or wav)"
        actionStatus: PotentialActionStatus
    ) {
      identifier
    }
}


{'data': {'CreateControlAction': {'identifier': '3a12c337-8e8e-456a-98db-08eebed6b066'}}}


mutation {
  CreateEntryPoint(
        title: "Extract features"
        name: "Extract features"
        contributor: "UPF"
        creator: "UPF"
        source: "https://github.com/juansgomez87/active-learning"
        subject: "Emotion Recognition Model"
        description: "This program extracts the IS13 feature set from audio (mp3 or wav)"
        format: "text/html"
        language: en
        actionPlatform: "UPF Extract Features for Emotion Recognition"
        contentType: ["application/json"]
        encodingType: ["text/html"]
        ) {
          identifier
        }
}

{'data': {'CreateEntryPoint': {'identifier': '626202b6-881f-4bcd-961a-f7db8704bc84'}}}



mutation {
  AddEntryPointActionApplication(
        from: {identifier: "626202b6-881f-4bcd-961a-f7db8704bc84"}
        to: {identifier: "f4628931-cfde-4963-9374-0ba758f10a6f"}
        ){
        from {
                identifier
        }
        to {
                identifier
        }
    }
}



mutation {
  AddThingInterfacePotentialAction(
        from: {identifier: "626202b6-881f-4bcd-961a-f7db8704bc84"}
        to: {identifier: "3a12c337-8e8e-456a-98db-08eebed6b066"}
        ){
        from {
        ... on EntryPoint{
                identifier
        }
      }
        to {
            ... on ControlAction{
                    identifier
        }
      }
    }
}
{'data': {'AddThingInterfacePotentialAction': {'from': {'identifier': '626202b6-881f-4bcd-961a-f7db8704bc84'}, 'to': {'identifier': '3a12c337-8e8e-456a-98db-08eebed6b066'}}}}

mutation {
  CreateProperty(
    title: "INPUT_AUDIO_FILE"
    name: "--input"
    description: "The audio file to process"
    rangeIncludes: AudioObject
  ) {
    identifier
  }
}

mutation {
  AddControlActionObject(
    from: {identifier: "3a12c337-8e8e-456a-98db-08eebed6b066"}
    to: {identifier: "44ae5416-b61d-4270-a5c1-2534dde42cac"}
  ) {
    from {
      identifier
    }
    to {
      identifier
    }
  }
}


mutation {
  RequestControlAction(
    controlAction: {
      potentialActionIdentifier: "3a12c337-8e8e-456a-98db-08eebed6b066"
      entryPointIdentifier: "626202b6-881f-4bcd-961a-f7db8704bc84"
      propertyObject: [
        {
          nodeIdentifier: "4b9c874c-5a03-4a36-9563-76e87cee7728"
          potentialActionPropertyIdentifier: "44ae5416-b61d-4270-a5c1-2534dde42cac"
          nodeType: AudioObject
        }
      ]
      propertyValueObject: []
    }
  ) {
    identifier
  }
}

query {
  ControlAction(identifier: "68252411-545f-4528-941f-d6cd6bd75cd1") {
    actionStatus
    identifier
    wasDerivedFrom {
      identifier
    }
    object {
      ... on PropertyValue {
        value
        name
        title
        nodeValue {
          ... on DigitalDocument {
            format
            source
          }
        }
      }
    }
  }
}


response:

{
  "data": {
    "ControlAction": [
      {
        "actionStatus": "PotentialActionStatus",
        "identifier": "68252411-545f-4528-941f-d6cd6bd75cd1",
        "wasDerivedFrom": [
          {
            "identifier": "3a12c337-8e8e-456a-98db-08eebed6b066"
          }
        ],
        "object": [
          {
            "value": null,
            "name": "--input",
            "title": "INPUT_AUDIO_FILE",
            "nodeValue": null
          }
        ]
      }
    ]
  }
}

One thing to check - you set rangeIncludes to AudioObject, but in the query you are selecting you request a DigitalDocument:

        nodeValue {
          ... on DigitalDocument {
            format
            source
          }

Did you try with ... on AudioObject ?

Closed