# This file was generated by the Julia OpenAPI Code Generator
# Do not modify this file directly. Modify the OpenAPI specification instead.
@doc raw"""ro_crate_entity_model
A single RO-Crate JSON-LD entity description for provenance tracking.
RoCrateEntityModel(;
id=nothing,
workflow_id=nothing,
file_id=nothing,
entity_id=nothing,
entity_type=nothing,
metadata=nothing,
)
- id::Int64 : Database ID of this record
- workflow_id::Int64 : Database ID of the workflow this entity belongs to
- file_id::Int64 : Optional link to a file record
- entity_id::String : The JSON-LD @id for this entity (e.g., \"data/output.parquet\", \"#job-42-attempt-1\")
- entity_type::String : The Schema.org @type (e.g., \"File\", \"Dataset\", \"SoftwareApplication\", \"CreateAction\")
- metadata::String : Full JSON-LD metadata object as a JSON string
"""
Base.@kwdef mutable struct RoCrateEntityModel <: OpenAPI.APIModel
id::Union{Nothing, Int64} = nothing
workflow_id::Union{Nothing, Int64} = nothing
file_id::Union{Nothing, Int64} = nothing
entity_id::Union{Nothing, String} = nothing
entity_type::Union{Nothing, String} = nothing
metadata::Union{Nothing, String} = nothing
function RoCrateEntityModel(id, workflow_id, file_id, entity_id, entity_type, metadata, )
o = new(id, workflow_id, file_id, entity_id, entity_type, metadata, )
OpenAPI.validate_properties(o)
return o
end
end # type RoCrateEntityModel
const _property_types_RoCrateEntityModel = Dict{Symbol,String}(Symbol("id")=>"Int64", Symbol("workflow_id")=>"Int64", Symbol("file_id")=>"Int64", Symbol("entity_id")=>"String", Symbol("entity_type")=>"String", Symbol("metadata")=>"String", )
OpenAPI.property_type(::Type{ RoCrateEntityModel }, name::Symbol) = Union{Nothing,eval(Base.Meta.parse(_property_types_RoCrateEntityModel[name]))}
function OpenAPI.check_required(o::RoCrateEntityModel)
o.workflow_id === nothing && (return false)
o.entity_id === nothing && (return false)
o.entity_type === nothing && (return false)
o.metadata === nothing && (return false)
true
end
function OpenAPI.validate_properties(o::RoCrateEntityModel)
OpenAPI.validate_property(RoCrateEntityModel, Symbol("id"), o.id)
OpenAPI.validate_property(RoCrateEntityModel, Symbol("workflow_id"), o.workflow_id)
OpenAPI.validate_property(RoCrateEntityModel, Symbol("file_id"), o.file_id)
OpenAPI.validate_property(RoCrateEntityModel, Symbol("entity_id"), o.entity_id)
OpenAPI.validate_property(RoCrateEntityModel, Symbol("entity_type"), o.entity_type)
OpenAPI.validate_property(RoCrateEntityModel, Symbol("metadata"), o.metadata)
end
function OpenAPI.validate_property(::Type{ RoCrateEntityModel }, name::Symbol, val)
end