We have recently released our first major release of the DFC Standard.

There are a significant number of changes in this major release version, this guide will give an overview of the changes and cover what’s required to comply with V2.0.0 of the standard.

Significant Changes

The v2.0.0 Change logs cover detail of all the changes in this release: Ontology change log Taxonomies change log.

What follows is an incomplete list of significant changes that form part of the v2 release:

Required Changes

The following changes are required to comply with v2.0.0 of the DFC Standard:

DFC has always requested platforms adhere to the W3C LDP standard. from v2.0.0 Platforms are required to parse & output JSON-LD within LDP containers.

All platforms are now required to provide a series of LDP containers that detail available endpoints, these form a Platform WebId. Organization WebId’s are also recommended. See the documentation for further details.

All github.com release URI’s are now redirected through w3id.org/dfc. This provides a permanent redirection service for semantic web links, allowing insulation from future changes to package release processes and/or hosting of DFC artefacts.

Full details on how to utilize the new redirects are available here.

The previous skos:concepts of Currencies in the measures taxonomy are deprecated and replaced with a link to the QUDT cur reference taxonomy. All currencies should now be referenced as 3-character ISO codes.

The ontology class Enterprise is deprecated & replaced by Organization. All subclasses/realationships that linked to Enterprise, now link to Organization


Optional Enhancements

The following are a selection of enhancements that are incorporated within v2.0.0 of the DFC Standard. These are not required to comply with v2 of the standard, but are utilized in several use cases of the standard.

A new class TemplateSaleSession has been introduced to hold distribtuion patterns for an Organization. This incorporates an enhanced (OWL restrictions applied) version of the GeoJSON RFC. See diagram for full details:

The TemplateSaleSession can be utliized to share details of when and where an Organization can provide Products for Customers… for example a weekly delivery route on a Tuesday would use rdfcal:rrule to indicate rdfcal:byday = Tuesday && rdfcal:freq = weekly. The route can then be indicated by a series of either points (to indicate pick-up points) or polygons (to indicate delivery areas, e.g. postcodes). The model does not currently support a mixture of points and polygons within the same Geometry.

A new Class dfc-b:Certification has been added
The class includes the properties:

  • dfc-b:operatorId – to store the organizations organic (or other) licence number
  • dfc-b:certiferReference for the certifying body (e..g. UK-ORG-05 is Soil Association)
  • dfc-b:certificationScore property for applicable standards (e.g. RegenScore, Global Farm Metric)

The class is linked to dfc-b:Organization by the relationship dfc-b:isCertifiedBy

Variants are fully implemented. As per Issue #202
Variant has been implemented as a subclass of DefinedProduct.
See diagram for details:

An optional extension to the Authentication Strategy of the standard is now defined to allow individual users to grant/revoke access to subsets of endpoints. For further details, consult the DFC Standard gitbook.

From v2.0.0 onwards we have explicitly aligned dfc-b:Agent to vcard:Agent, dfc-b:Person to vcard:Individual & dfc-b:Organization to vcard:Organization.