
先明确追溯需要回答的问题
追溯方案首先要回答:追踪的是什么对象,经历了什么处理,由谁参与,以及结果如何关联到原始输入。W3C的PROV概述以实体、活动和参与主体描述来源信息,并通过共同模型支持不同系统之间交换这些信息。这为追溯业务梳理提供了基础。
例如,设计加工记录时,可以把原料与产物作为实体,把加工作为活动,把相关组织作为参与主体。这是模型应用示例;具体字段和责任边界仍需结合业务定义。

让数据关系先于上链规则确定
技术方案应明确对象标识、活动关联、责任归属及版本关系。仅保存一组记录,未必能说明产物来自哪些输入;拆分、合并或更正记录时,也需要保留可理解的关联。

入门设计可以选取一条完整业务流程,检查是否能够从结果回溯到输入及处理步骤。跨组织协作时,还要统一字段含义,避免同一个名称在不同系统中表达不同对象。
智能合约负责执行明确的规则
以太坊的智能合约介绍将合约描述为链上运行的代码与状态,用户通过交易调用其功能;部署与执行涉及计算费用。合约无法自行取得链外现实事件,需要外部机制提供数据。
据此,追溯方案可将提交权限、必填条件、状态变化等设计为合约规则。需要同时区分“记录满足程序条件”和“现实事件真实发生”:合约能够检查收到的信息,却不能仅凭程序确认实物经历。
界定外部数据与适用条件
如果追溯依赖人工填报、设备采集或外部系统,就应说明数据由谁提供、如何对应追溯对象,以及出现错误后如何补充更正。预言机等机制能够把链外信息送入合约,数据来源本身的可靠性仍需单独评估。
方案适用于能够明确对象、过程和参与责任,并将部分协作规则表达为程序的场景。如果参与方连对象标识和记录含义都未统一,应先完善数据模型,再评估链上执行是否有助于协作。
常见问题与入门验证重点
上链是否等于真实可信?不能直接等同。来源信息可以帮助评估可信度,但评估仍依赖采集过程和责任主体。采用PROV是否必须使用区块链?不必须,它关注来源信息的表达与交换。
入门验证应覆盖完整流程、无权限提交、缺失关联和错误更正等情况,同时明确记录保存位置、读取权限与执行成本。这样才能判断方案是否既能记录过程,也能解释过程。