# farmOS Conventions module

**URL:** <https://farmos.discourse.group/t/farmos-conventions-module/1950>\
**Category:** Conventions\
**Created:** [March 21, 2024, 3:50pm UTC](https://farmos.discourse.group/t/farmos-conventions-module/1950 "2024-03-21T15:50:29Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [March 21, 2024, 3:50pm UTC](https://farmos.discourse.group/t/farmos-conventions-module/1950/1 "2024-03-21T15:50:29Z")

</div>

I created a [farmOS Conventions](https://github.com/mstenta/farm_convention) module that implements what I proposed here:

> **[Add a Convention taxonomy reference field to Assets and Logs](https://www.drupal.org/project/farm/issues/3390489)**
>
> Problem/Motivation This is an alternative implementation to \[#3336224\]. See that issue for full context. This idea came up on today's dev call. Proposed resolution The idea is: we add a new "Conventions" vocabulary to farmOS, and we add a...

> **[GitHub - mstenta/farm\_convention: Tag farmOS records with their intended...](https://github.com/mstenta/farm_convention)**
>
> Tag farmOS records with their intended convention(s). (Experimental) - mstenta/farm\_convention

It adds two things:

1. A “Convention” taxonomy, which can be a list of conventions that are used on the farm. In my mind, these terms can be convention IDs like I described here: [Decide on a convention ID specification · Issue #3 · mstenta/farmOS-conventions · GitHub](https://github.com/mstenta/farmOS-conventions/issues/3)
2. A “Convention” term reference field on assets and logs, so that you can tag records with their “intended” convention, as described here: [https://www.drupal.org/project/farm/issues/3336224#comment-14887506](https://www.drupal.org/project/farm/issues/3336224#comment-14887506)

My thought is we can use this module to experiment with in the wild, and then consider if the implementation makes sense to be merged into farmOS core at a later date.

Also worth mentioning: we will be adding a new field to taxonomy terms in a future farmOS release that allows them to be linked to external ontology/vocabulary items. So, that means “Convention” terms will be able to link to a canonical URL that defines the convention in more detail. These could be “official” core conventions that we document on [farmOS.org](http://farmOS.org), or community-maintained conventions.

---

<div class="post-metadata">

**Author:** ![jgaehring](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/jgaehring/32/927_2.png) [@jgaehring](https://farmos.discourse.group/u/jgaehring)\
**Post date:** [March 23, 2024, 6:01pm UTC](https://farmos.discourse.group/t/farmos-conventions-module/1950/2 "2024-03-23T18:01:19Z")

</div>

> [@mstenta](#):
>
> Also worth mentioning: we will be adding a new field to taxonomy terms in a future farmOS release that allows them to be linked to external ontology/vocabulary items.

Ohhhhh, that’s exciting! Is that what the chatter I saw on Matrix was about, with the `external_uri` field?

---

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [March 24, 2024, 3:17pm UTC](https://farmos.discourse.group/t/farmos-conventions-module/1950/3 "2024-03-24T15:17:52Z")

</div>

Yes! Closely related. Here is the PR for that: [Issue #3390486: Add an Ontology URI field to all taxonomy terms by mstenta · Pull Request #808 · farmOS/farmOS · GitHub](https://github.com/farmOS/farmOS/pull/808)
