Proposal for new class "ComputationalAgent"
Ever more content is produced automatically with the help of machines, usually based on AI. Consider a piece of software creating a playbook for a film, selecting news automatically from a pool an produce a rundown. Responsible journalism requires to indicate how and where AI was used in the production and publication of content. How would you express such a fact in EBUCorePlus?
Any "credit" for some content should be expressed with the class Involvement. It indicates what was executed by whom. And it points to an Agent, either a Person or an Organisation. How would it point to an AI algorithm? The proposal is to introduce the class ComputationalAgent as a subclass of Agent. It will probably need some properties to describe software versions and alike.
Comments, please!
Besides creating content, AI-based systems can also create metadata on a piece of content, e.g. a scene description (via entity recognition), a transscript (via speech-recognition) or a list of depicted persons (via face-recognition). The above mentioned approach via Involvement is only suitable, if the result produced by the AI-based system is content. If the result is metadata on the content, then I would rather represent this as annotation properties to the metadata object or field. However, the annotation properties would be similar to the data/object properties described above.
Please comment!
We can use the class Provenance to indicate the source of a metadata object (using hasProvenanceTarget owl:Thing).
It has the property isAttributedTo Agent, which allows to describe organisations, humans or machines as sources of the metadata.