# Looking for example recipes (JSON representations of operations)

**URL:** <https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005>\
**Category:** Development & Design\
**Created:** [January 6, 2025, 1:34pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005 "2025-01-06T13:34:41Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [January 6, 2025, 1:34pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/1 "2025-01-06T13:34:42Z")

</div>

Hi all,

As part of my work on improving the usability of the Extract / Apply feature of OpenRefine's history tab, I am looking for examples of operation scripts (in JSON) that people are already using / sharing. I call those "recipes" (we should also have a broader discussion about whether we want to adopt this terminology in the tool itself). I am looking for literally any sort of example:

- a recipe you saved somewhere because you want to reuse it from time to time, or
- something that was published in a tutorial / a research article / anything else, or
- the history of some random OpenRefine project you just did, which isn't necessarily meant to be reusable in other contexts.

Here are some examples I already know of, found by a combination of various methods:

- [OpenRefine recipe to parse Apache log · GitHub](https://gist.github.com/magdmartin/3df6bd062ae729917eb8)
- [Automate GND reconciliation for OpenRefine · GitHub](https://gist.github.com/felixlohmeier/065727cffeafb216c24f730c40f3b1f6)
- [CyclingTweets · GitHub](https://gist.github.com/rvanbruggen/1b7c85e02af67a2ce436)
- [Importing the Beeradvocate dataset · GitHub](https://gist.github.com/rvanbruggen/fae966e3aa1e22fcfe37)
- [Match in GREL · GitHub](https://gist.github.com/ostephens/3573bb5d21ed33ae5b08)
- [OpenRefine script for cleaning Crowdtangle historical data CSV · GitHub](https://gist.github.com/rhhernandes/80f18ea986c25e6ec663a06c6a6e69dd)
- [Use this JSON command in OpenRefine to change (most) MARC language codes to (most) IETF language tags. Make sure you change the column name before use. · GitHub](https://gist.github.com/scottythered/37e2158f6a337540d27ed2637b1821c5)
- [bibliotheks-und-archivinformatik/openrefine-powerhouse.json at b67567f43e028657858237020d8b352ec2358621 - bibliotheks-und-archivinformatik - OCC Code](https://code.opencultureconsulting.com/felixlohmeier/bibliotheks-und-archivinformatik/src/commit/b67567f43e028657858237020d8b352ec2358621/openrefine/openrefine-powerhouse.json)
- [seminar-wir-bauen-uns-einen-bibliothekskatalog/07\_3.json at 3dad4a3390f18ff7cfab6bf6a7e0644df4b3270c - seminar-wir-bauen-uns-einen-bibliothekskatalog - OCC Code](https://code.opencultureconsulting.com/felixlohmeier/seminar-wir-bauen-uns-einen-bibliothekskatalog/src/commit/3dad4a3390f18ff7cfab6bf6a7e0644df4b3270c/openrefine/07_3.json)
- [Wikidata:Tools/OpenRefine/Editing/Tutorials/Working with APIs - Wikidata](https://www.wikidata.org/wiki/Wikidata:Tools/OpenRefine/Editing/Tutorials/Working_with_APIs)
- [Wikidata:Tools/OpenRefine/Editing/Tutorials/Inverse Listeria - Wikidata](https://www.wikidata.org/wiki/Wikidata:Tools/OpenRefine/Editing/Tutorials/Inverse_Listeria#Edit_history)
- [https://punktokomo.abes.fr/2016/09/23/openrefine-au-service-de-bacon-quelle-evaluation-pour-les-fichiers-kbart-3-cas-pratique/](https://punktokomo.abes.fr/2016/09/23/openrefine-au-service-de-bacon-quelle-evaluation-pour-les-fichiers-kbart-3-cas-pratique/)
- [Mileapp Cleansing | PDF](https://www.scribd.com/document/526618495/mileapp-cleansing)
- [오픈리파인에서 구우편번호를 새우편번호로 통합하기 - W3LabKr](https://w3lab.kr/snippet/tools/%EC%98%A4%ED%94%88%EB%A6%AC%ED%8C%8C%EC%9D%B8%EC%97%90%EC%84%9C-%EA%B5%AC%EC%9A%B0%ED%8E%B8%EB%B2%88%ED%98%B8%EB%A5%BC-%EC%83%88%EC%9A%B0%ED%8E%B8%EB%B2%88%ED%98%B8%EB%A1%9C-%ED%86%B5%ED%95%A9/)

Feel free to point me to more of them!  
I will go through this list and evaluate the UX of applying those recipes, checking that they are properly rendered and that the column names used in the scripts are correctly detected.

---

<div class="post-metadata">

**Author:** ![h\_piedcoq](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/h_piedcoq/32/84_2.png) [@h\_piedcoq](https://forum.openrefine.org/u/h_piedcoq)\
**Post date:** [January 8, 2025, 2:16pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/2 "2025-01-08T14:16:46Z")

</div>

Dunno if it still works, but this one mixed API requests plus some calculations and regexes.  
[Refine\_RCS/rcs exploit refine.txt at master · hpiedcoq/Refine\_RCS · GitHub](https://github.com/hpiedcoq/Refine_RCS/blob/master/rcs%20exploit%20refine.txt)

---

<div class="post-metadata">

**Author:** ![thadguidry](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/thadguidry/32/653_2.png) [@thadguidry](https://forum.openrefine.org/u/thadguidry)\
**Post date:** [January 8, 2025, 2:32pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/3 "2025-01-08T14:32:56Z")

</div>

@antonin_d I reached out to University of Washington and they'll provide some they use for MARC21 / RDF, etc. by the end of January.

---

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [January 13, 2025, 3:34pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/4 "2025-01-13T15:34:11Z")

</div>

Thanks a lot both, that's super helpful!

Would any of you be keen to get on a quick call with me, for you to try out the recipe visualization feature and for me to observe your intuitive reactions? I am quite flexible in the coming weeks.

---

<div class="post-metadata">

**Author:** ![Martin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/martin/32/7_2.png) [@Martin](https://forum.openrefine.org/u/Martin)\
**Post date:** [January 14, 2025, 6:04pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/5 "2025-01-14T18:04:04Z")

</div>

@antonin_d I would be interested for sure. From the user survey 2024, I can also extract a list of user who indicated using recipe and who are open to do usability testing and review. Let me know if you are interested and I can share the list privately.

---

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [January 14, 2025, 10:59pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/6 "2025-01-14T22:59:17Z")

</div>

That would be fantastic! I trust Thad to raise quite a few usability issues for me to weed out, getting feedback from more people afterwards would be ideal 🙂

---

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [January 23, 2025, 8:18am UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/7 "2025-01-23T08:18:37Z")

</div>

After the testing session with Thad, I'd like to do similar ones with others from the core team before opening to the broader user community. I'll try to arrange a meeting with Martin on this. If anyone else is keen to have an influence on the early prototype let me know. (@ostephens perhaps?)

Note that I am intentionally not posting screenshots or videos of the recipe visualization feature here, so that I can see your intuitive reaction to the visualization without more explanations (as it should be as self-explanatory as possible). If you have already tried it out by running the code in my GitHub fork that's fine, but it's helpful for me to know that 🙂

---

<div class="post-metadata">

**Author:** ![timtom](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/timtom/32/55_2.png) [@timtom](https://forum.openrefine.org/u/timtom)\
**Post date:** [January 29, 2025, 11:08pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/8 "2025-01-29T23:08:45Z")

</div>

Thanks for your work on this, Antonin! Looking at your list of examples made me think how cool it would be to have an "OR-awesome" kind of library of such recipes, ready for reuse or inspiration.

---

<div class="post-metadata">

**Author:** ![Martin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/martin/32/7_2.png) [@Martin](https://forum.openrefine.org/u/Martin)\
**Post date:** [February 6, 2025, 1:52pm UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/9 "2025-02-06T13:52:12Z")

</div>

I am adding [GitHub - paldhous/refine-geocoder: JSON to geocode list of addresses in OpenRefine, using HERE and OpenStreetMap Nominatim APIs](https://github.com/paldhous/refine-geocoder) to the list of example.

---

<div class="post-metadata">

**Author:** ![CECSpecialistI](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/cecspecialisti/32/1438_2.png) [@CECSpecialistI](https://forum.openrefine.org/u/CECSpecialistI)\
**Post date:** [February 12, 2025, 2:09am UTC](https://forum.openrefine.org/t/looking-for-example-recipes-json-representations-of-operations/2005/10 "2025-02-12T02:09:34Z")

</div>

Hi! I have some older code from a library project that transformed MARC21 data to Wikidata using OpenRefine. I posted the instructions on this Wikidata page in both English and JSON: [Wikidata:WikiProject PCC Wikidata Pilot/University of Washington/Workflow, Trainings, and Resources/MARC21 to Wikidata Workflow - Wikidata](https://www.wikidata.org/wiki/Wikidata:WikiProject_PCC_Wikidata_Pilot/University_of_Washington/Workflow,_Trainings,_and_Resources/MARC21_to_Wikidata_Workflow) I was going to clean them up and test them before posting here, but I don't have capacity to do it and this project has been somewhat orphaned. You are welcome to the recipes!
