Skip to content

A handy way to parse, store and access JSON data from files or strings in LaTeX documents

License

Notifications You must be signed in to change notification settings

jasperhabicht/jsonparse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Version 0.9.10

Jason, the JSON parsing horse

The jsonparse package

The jsonparse package provides a handy way to read in JSON data from files or strings in LaTeX documents, parse the data and store it in a user-defined token variable. The package allows accessing the stored data via a JavaScript-flavored syntax.

Using the commands \JSONParseFromFile or \JSONParse, JSON data can be stored in a token variable. Using the command \JSONParseValue, entries can be extracted from the stored data.


Let's assume a file with the name example.json is stored in the working directory with the following contents:

{
  "givenName": "Joe",
  "familyName": "Public",
  "points": 1.7,
  "hasCertification": true,
  "address": {
    "streetAddress": "10 Main St",
    "locality": "Cityville",
    "postalCode": "12345"
  },
  "contactPoint": [
    {
      "contactType": "office",
      "telephone": "+1 (555) 555-1234"
    },
    {
      "contactType": "mobile",
      "telephone": "+1 (555) 555-6789"
    }
  ],
  "children": [
    "Tom",
    "Doug",
    "Harry"
  ],
  "memberOf": null
}

We can store it in the token variable \myJSONdata using the command \JSONParseFromFile{\myJSONdata}{example.json}. Calling the command \JSONParseValue{\myJSONdata}{contactPoint[0].telephone} would then result in the output +1 (555) 555-1234 (indices are zero-based per default).

This package including all files is subject to the LPPL 1.3c license. Copyright 2024 Jasper Habicht (mail(at)jasperhabicht.de).

Jason, the JSON parsing horse: Copyright 2024 Hannah Klöber.

About

A handy way to parse, store and access JSON data from files or strings in LaTeX documents

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages