Für die Übermittlung der eingereichten Formulardaten an einen Rest-Endpunkt werden die Daten als JSON übertragen. Hierzu wird das XML generisch nach JSON umgewandelt. Damit auch die XML Processing Instructions (pi) ins JSON einfliessen, wird das XML vorher prozessiert und mit pi-Tags angereichert. Das folgende Bild zeigt das formData.xsd angereichert mit den pi Tags.



Das aus dem letzten Kapitel benutzte XML-Beispiel wird als folgendes JSON konvertiert.

{
  "data": {
    "var": [
      {
        "pi": {
          "value": "TT.MM.JJJJ",
          "key": "format"
        },
        "id": "VAR_1",
        "content": "2020-05-04"
      },
      {
        "pi": {
          "value": "wert",
          "key": "schluessel"
        },
        "id": "VAR_2",
        "content": "test"
      },
      {
        "id": "VAR_3",
        "content": "muster"
      },
      {
        "id": "VAR_4",
        "content": "example"
      },
      {
        "id": "VAR_5",
        "content": "inhalt"
      },
      {
        "pi": [
          {
            "value": "LEMFormularBetrieb12_Daten..pdf",
            "key": "fileName"
          },
          {
            "value": 1104834,
            "key": "fileSize"
          }
        ],
        "id": "VAR_fileupload",
        "content": "49fec53f-3c74-475a-8025-dc04044247da"
      },
      {
        "id": "VAR_number",
        "content": 42
      },
      {
        "id": "VAR_textarea",
        "content": "Lorem ipsum dolor sit amet, consectetur adipisici elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquid ex ea commodi consequat. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur."
      },
      {
        "id": "VAR_date",
        "content": "2020-05-01T00:00:00"
      }
    ],
    "list": {
      "entry": [
        {
          "var": [
            {
              "id": "liste_1_name",
              "content": "Müller"
            },
            {
              "id": "liste_1_vorname",
              "content": "Stephan"
            }
          ]
        },
        {
          "var": [
            {
              "id": "liste_2_name",
              "content": "Diethelm"
            },
            {
              "id": "liste_2_vorname",
              "content": "Bernd"
            }
          ]
        },
        {
          "var": [
            {
              "id": "liste_3_name",
              "content": "August"
            },
            {
              "id": "liste_3_vorname",
              "content": "Gabriela"
            }
          ]
        }
      ],
      "size": 3,
      "id": "liste"
    },
    "group": {
      "var": [
        {
          "id": "GRP_VAR_1",
          "content": "Müller"
        },
        {
          "id": "GRP_VAR_2",
          "content": "Martin"
        },
        {
          "id": "GRP_VAR_3",
          "content": "Teststrasse"
        }
      ],
      "pi": {
        "value": true,
        "key": "global1"
      },
      "id": "GRP_1"
    }
  },
  "fingerprint": {
    "formID": "WIKI-Bespiel",
    "CREATED": "2020-05-18T09%3A54%3A52.000Z",
    "originURL": "http://localhost:8080/formservice/eforms",
    "GUID": "b68e1cd1-b8bf-491e-9fb1-c377f3885a"
  },
  "pi": [
    {
      "value": "",
      "key": "PERIOD_ID"
    },
    {
      "value": "0",
      "key": "HAS_SUBMITTED_PDF"
    },
    {
      "value": "",
      "key": "INFO"
    },
    {
      "value": "",
      "key": "ESURVEY_ID"
    },
    {
      "value": "13974",
      "key": "UUID"
    },
    {
      "value": "0",
      "key": "HAS_PDF"
    },
    {
      "value": "anonymous",
      "key": "CREATED_USER"
    },
    {
      "value": "",
      "key": "PARENT_ID"
    },
    {
      "value": "",
      "key": "SENDER_EMAIL"
    },
    {
      "value": "de",
      "key": "FORM_LANG"
    }
  ]
}
  • Keine Stichwörter