{"_id":"node-red-contrib-json-multi-schema","_rev":"28-151bcf24b19cb7bed140f198847c17a7","name":"node-red-contrib-json-multi-schema","dist-tags":{"latest":"1.7.1"},"versions":{"1.0.0":{"name":"node-red-contrib-json-multi-schema","version":"1.0.0","keywords":["schema","validate","transform","json","node-red","node"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.0.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"70db2fe2e0ead9ac35082f64229c3cff5b3fabb9","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.0.0.tgz","fileCount":24,"integrity":"sha512-3Jy3uUbMo2vLB7Qa9+CwgCrQJSUReKDb1DmaUKpwc5qM17+nFsJ5s1iuJiuqyNVJ9dbJZP3qzpAG/rN1d3jw5A==","signatures":[{"sig":"MEUCICJBf+t/cupf8KGZkF7wlPKNJJ192aLEYBEnX3h/bQxHAiEAjS41IEc4ANRBH6SgS2iUCHgE6+PGLpWz0geYayAC+MU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108101,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+i4xCRA9TVsSAnZWagAASqcP/05vcU9u70Dfx5yngpgE\nQRDfapyKZSr9zoyzPVvB4GgYuur0xAm5UQmsJYkksnv0FVkQCAX6cYKAZ787\nPjoqMHArHxdEpHJScxP40zP9CYlJtRIXM9LcW7MUMf4hBrGBD04FK64K6pdw\nBOEeYMHEQ+fyemMEKOT51xGx17ytPrRKhjqqaz8p69IB/69wZnDltZOw+g7x\nOmos7Ll7Xr4QSTLKKM6/Tt/6nLPjGCg5nrvrSuzdB28VMD6BuVJfJBK2v9bO\nlsNgeQ3eRXVe5n0L7NdPvoJdaHk7O8nBGaIAS0pkZlY6fYrCpSRx/zdWvu/y\nth3vpGLugU5fhP4FzP0C4kwcyc//KUz6fwVJtVBT35T/cIhTsqyjo8jq7rXY\nTgyjlFOoIKou9wr270tJATYT43A+dXMq1cCEQiA5S6u2gupxqjUE1r5tJpIg\nCOYpqGtpquFuMesYrTdvO2inkQJdyrN8O0JdR8d/xs83PTCOF/QVuvXMZVIS\nbtK/7ZXKp2ZO7pYmkDYUX8riXXKC7WV+bZBmC+ZYqyclKroDZyU1FIMdcwAt\nIZmAonmTyMzNAtYwRbebz0mWxpI09u0WQ0wAubGwUbqpzyoq98YgypX7o3Dx\nVVLEOU/UqjnVKVSrnp6Ip2JQbz5ceY1uWTkMtYngzlL3iWXeoY/nTiTAzba4\nMt/d\r\n=gky/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"f8463b85e0f30732800204eda4edb9b9df701b57","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.13.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ajv":"^6.10.2","jsonata":"^1.7.0","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.0"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.0.0_1576676912806_0.8392577791684237","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"node-red-contrib-json-multi-schema","version":"1.0.2","keywords":["schema","validate","transform","json","node-red","node"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.0.2","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"8d2aecd75e95ffd6e6185dce5e31dde914d9eb05","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.0.2.tgz","fileCount":24,"integrity":"sha512-ULbNq9oRFUTwBcax9frI2a91S/Fm3JNmXI3PCbA+9YEhKcqEPzubUBMebJtIZGrBl1dqVUZseKpSWnGD3t++kg==","signatures":[{"sig":"MEUCIQDFQo/nUtM3RKd5VsgkfoZVL4xo7VY04vvdOYUO/C3krQIgcxMXYs93BBD2DR0F1Z5XpfWq4ucIupaBAad3IbijH1g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108459,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+jqRCRA9TVsSAnZWagAAdRgQAJ8AZtb24U5G4iUh9vy0\nJ/Xv3tXOlzVqmm7EOLw/m9V0CAiOk8tMapZCcY8XH6LzdbL29qDKti0GeVv4\nvDIVzlqDic8VyYG7o3cSw7+qxJRriREyqns9GL/yOAUJgDoByIvZM8LrbGSe\ncjWM6FjJSeS6FasstWzpXRXKgrlQADVQnCvVPGkKnt759lIoSykOcAILVcAn\n/EvX4/gGlbsU1SZPcHAdN/1OfG8u+RGxKBJP1QDNbkQSPAzsKjXkNrINJSf/\nZNVJGiAZOdpMA4ER1tCaLw52Z/NQ/QXgvrU0R28DkymN26CZpDvnRFwnV+1E\npBQv/EsrGV/Hv9TOcBwaz8UiOOnpqWlNSwUrluhOrPjNrJkBzma1JEFPCoqT\n6Le255QnH+uZGDithuXtSjckTPnRnSqLkvW/KN8YMYNqVe6lH3bF0HVNzuLD\n84ycD1dxJjD0ZmQcS3rY1SB4mq9iUSrMgP9ArFMeCtZYfX7inWSkh7hxi3uj\nX56fLRufXuOD08ivcotdLkhVoYzza+ociUB+0pHmleo1h/k+fv3RZEL4cEcA\nz+MQQ1V4fW7fPt51fQN9t9peWwdcuuQ1DU0Ob2huwz2VUKD+Votfy3wEyhiQ\n+qycNLBbec5Up2zYYvSI+x8IpqrMhzNla4Swe/gNhf9K7xnPNcu6jINmGvvu\n1gw8\r\n=D53f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"c638f0a26252f9c9ab461f8e28fd400e2b241677","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.13.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ajv":"^6.10.2","jsonata":"^1.7.0","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.2"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.0.2_1576680081013_0.03348456236100761","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"node-red-contrib-json-multi-schema","version":"1.0.3","keywords":["schema","validate","validator","transform","JSON","JSONata","Node-RED","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.0.3","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"9a95459f95dfb9c3c5b998b8efd08d932b54aa31","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.0.3.tgz","fileCount":24,"integrity":"sha512-jHjYZzFeegC2SJEfiH3+e1MuZ/1nMWAWOXsHjfsS/OiiryJNe1uSnhuKzeixYVOcZe/Q/tntd2eGZWsChxTyQQ==","signatures":[{"sig":"MEQCIAk7CuTIrXqM+QUxiyf6fENdN4EVzI401g0WLDmWYQGvAiAjoFldNgDxK9omf9DiUTElcBZ8neHNV+5x4mFQ8FQdKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+y6dCRA9TVsSAnZWagAAvK4P/RHapiMtPRPczN2WrRxF\nL2BgnA+1Wdx4/HfhbUBUlRHS5462G653nIgEYzSHRs26duilcFL2trc2Ga6q\n/OLgrjhvyp6GSkOOAFAYGbJbbhTgaVZRZOxBE3QDJ3C2yeDlqcOzGLPoE9ns\nwrT2F3MlrJezd8oigW4Qo050+WNvWRxtA1EWbmcu/akpCN2ZMnHoLKMxA0t8\nbQtik1igYHqHiK/8O4j1MvvfuQ4iX6gnRpxfyUbiLHHJkzDy8lHHuCPf/4hF\nMgPtmthzUf88cW4ehqDxuj7gFhOv1ju73a7LAR3aWLWVztZcTicM3h5QCQDX\ngC4houXLHQWtTXb7UbDBa+MWgk6rD2EtFndeEauZy8eiP0idDqSwD7Xipijv\nCwbrcOu0Xe0gAFFiynmbkVWIEoCVW7RzKbbKlcaHJv3ELsh9azIDgShFdpeF\nL62j+mlpf32tnSwZEZdlOuWOCjIs78WCQpkbq2g9NlKMVf/ntZ3LiRmSZc5C\n8ly17x76Rv3KmtjRa1tNvzidfzKlGWlHL+Q4LT08SxwdLGw/J7/etPBUegsc\nLKORSzEIET5gP3qZuDyYdyDbsgy/31ZUWeBKlLqA+cY6UzlOUicA/DlvTN7G\nJdtq6N1P4Y/84m7lhNhfsIgkgz8R8V3te4dLxkEPFIcGi95oX5pgg08rCwT6\ncPFV\r\n=fOe4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"2a7a84b5b648c2a6f4ff07579ddcc8b1c36e5227","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.13.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ajv":"^6.10.2","jsonata":"^1.7.0","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.3"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.0.3_1576742556571_0.6033175865520359","host":"s3://npm-registry-packages"}},"1.0.6":{"name":"node-red-contrib-json-multi-schema","version":"1.0.6","keywords":["schema","validate","validator","transform","JSON","JSONata","Node-RED","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.0.6","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"f29f454a668a74cd1b614cb9b0d74f12f372689e","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.0.6.tgz","fileCount":24,"integrity":"sha512-ysgS9A+ZH+49LuP8wrc4ErJVODEmUIS0BIzADhyoXB7p7sy4mT6XiL/KyBHR+mcqMW8/CLxA8IElR2B9gr+cbw==","signatures":[{"sig":"MEUCIGGcSOZZtg4Dsa9gnbPw0i9tFOCA6Gj+m/5b/9mAi873AiEAt47prFvvXATUsCqlA6B+vnc5at0Ihhnvl6fh5kDyaW8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111146,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd/hVxCRA9TVsSAnZWagAAky4P/2Q7LUQjeMxOnzWGLJ0E\nDNlvVO7JwKuLQ5J596GDPoOp2W8I2qeGKWNE3HvldHPZF0VbM1ecy/69zvEy\nuagseobIHNuikrGX2g3yXUtTVNHoar6BVGJAmgrgz4qQQUGqpwh6E1I5/KBW\ns1KcnM74QrzzBRccCAr+qqju1XdXCFVtjUz2zdho4+Yg/Qorslt499OWgXE4\ny1SjDLrUUodqWwOueChPKwod0ndZbpd2QKqFOXzOCCIRrgXZOw5BvGhS5AhP\nJOcCRSYY3Q8Oe3ZacBEsJ/YWa7cuuX/xZoWQCm0KYZnwUOlYUQo5DQy4uMLY\nty6gf/fKbh5vUMPQ0mH5tYUoGPfSqRlZYc4JkHypgUnHqHnDtLjE1BZxMgS4\nhV/8ij5B8Y6ERYMtCXgwYXCq2QkptE4dToDyLxS248gy51jqLDKOeAMsm5+U\nVpSs/ZPPYsE01jRtBWzGJ0z6YN4kx5d6rTY/7cj8KS9b9/bC1BNYrV6J143c\ndznWCRQIGMv1CV7o1DB6XQ3bQhUaQXs8YmJjCVkUkfgXTBkkShVc2Y91ptCF\nattJEeKarV94u7m29/TEPUiSpKkDD2SnLrgvBl59lCngLqMDMeMUhGCVmTKE\nrM0ny7Kx/vs9jIyHFA7A2/TATlv5f9F2enesHJTjmmvSOh4fiEOaQ2H6uJWN\nmVbl\r\n=MjzH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"b9872a590bdce1a4346337cc4bb4bfeb76811198","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.13.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ajv":"^6.10.2","jsonata":"^1.7.0","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.6"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.0.6_1576932721044_0.5161124088789333","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"node-red-contrib-json-multi-schema","version":"1.1.0","keywords":["schema","validate","validator","transform","JSON","JSONata","Node-RED","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.1.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"e2b0d24fedd022a072f0666e1aa7cec104a06742","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.1.0.tgz","fileCount":24,"integrity":"sha512-NPBCRVvY+9cK78mkatMn1B1FTwjwk1BfhydakNUzFBWUZXO/qJabDU4gyWfESsXgZy/32b5K09Zm3Eicv27isA==","signatures":[{"sig":"MEUCIHSM8m9ej245z0lGkAneMKtmvQGGwOWaF+YhpfhoncZlAiEA8rOM4o6qjCu13W/UFWP0KkOCPvqqv4RQcO/s0sF8eUQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMFEtCRA9TVsSAnZWagAAkHgQAKJBVKca2cQX0Khs+Q5q\nR1UKxrqMy16yDQTxc+rHkfQhW5RJ3VAYtpQ2sCOGs7yFdnzQp1MuTapvnIIa\nzTdIjMwF0i+tv3hgEgiEySfDK48ne6qq53uyYtNtkaF6WJ6CAzSbMymkjX+S\nObjyNDvpr27/pahMtHsWmNSM7lQcb+K9qdcRAGT1Y/xmQ/1Tp59nyX4ncbdH\ntSTx4l5JhJynrhxy8MnMYRUMwCk6icgMB2zA0y1LSda2TEe9FzOdihWE6vWE\nJ+K+mXLF765KPHstmlaCyd/N8t7DOPiNiLsY56YSGDzOXdIDgeybBSHHEAos\nSlxNzw3PYvC8ezlJ+iyBY/KtnOGjtYsR9BuYiQi5yV9OkB9bFz9iu+Iwr7B2\n3Wmn5ds2LGRivzVgv12M+A3Rt+Z7k9r2ah999M09svY4ugJFY72U7NjqA+6T\nH3Zogv+T2Zwx8XLwQWmdXb32xX9/PsUMBhvNQo3iQZbSDq7tlRl/LAIMnf0I\nXeOqMjVbx0Qnn7Sn5i4yDWosdWUjcda+G7Z9EIc9Uif6URJearFiB2NNho7y\n/WReQWNai0QXHb6roly7wNcXRK6rH6ziW0xFCyVqNeBCMIlyt/N+JnvqD5/t\ng6LMWU1iEO9Cdb2OVW8jW9z9VtvcymeaMIZsAl2xPsDElDw5aqkVo5aQhpWO\nZfBs\r\n=lFyW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"61a297724b669eb8274cc5ae3c094c0742e623da","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.13.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.14.1","dependencies":{"ajv":"^6.11.0","jsonata":"^1.7.0","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.7"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.11.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.1.0_1580224812855_0.01385615351666436","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"node-red-contrib-json-multi-schema","version":"1.2.0","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","Node-RED","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.2.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"23b4ab29975547eb3ccca89cd5ebbb651a93b70f","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.2.0.tgz","fileCount":24,"integrity":"sha512-ZiUIe5Amx7EgnmJcuEnC6AcODgyiyOO+d4WpF41Bd/A1eUm/khfZ0/b1N/2Ycj8cjt91sjxDQxEUlbTOIDZYwg==","signatures":[{"sig":"MEQCIGSju7/ChcnZa59kYATsbQ/h8Mb32AVO85RPPQFXXKlCAiB45BCIHd1sbEHWjQ4ygq6GKDhnnMp8fcdYygVBKURYJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaP+HCRA9TVsSAnZWagAAr3IP/RMrt7+xF/i5X5mljVwa\nMcrFy85zcEng1UnmbrIHRCqDLiGNSE75FOjIJl6HCF9T/3Jd1hx6w8segmsk\njDR39nZNn6bN5m1zfDZk3729fOWAuR7lzqGsqYikTAkhVOVxuRgcoqS5LIqm\nYFIr4GqOSEzgflMUA8sTGq/U/h2+z33ZYZb9NNy1e3ZyRvuGSZKEKK/s6Jab\nGMNKgH7tPsiT7iKyxrkWya+kZOzPWsW/LDMl/ktfMm1XXlxN1jr/B9vxdq0A\nPyiy814L49wMdcI6jRZ1x75amBffLzc2FCwINKFbBcUfXqv+jnUP589aefsG\nPWSg3SGAnm9Klu3ooYzjV+FNVwLjYp9dolX3a/fjF2AGiyKD2k0egBxjb312\ntXw29n3WI/yoTHVWqhM2cg4DUmaIr4rM/8YgyNkpcWgG7uOeiVc2+aCfpx06\nXnUoRncpXRxrkd77zHLCVr7SPpMonQUosJSkeBOVX6dYdYdoxuNVJSsvrsOy\nqO+zHNmXkigCUT8T6OaLAM9vC8UGVOrdOlsl2junwz1oDV3p1x9GRr3j6shS\nWUBrzEzeCSQOtZiz/iy2dczIANeKeE+U+5VfrDjxWMJe457r/CHy2/OL28gi\n3Mwii6oVH5dhUXqb+7E7DegyLoPsTGN6Vpl16OFKA3Ys5K+J5rti65zgoHGz\nQXBg\r\n=LQ3n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"7a607ae065974e0ec7858c3baa675602cbb6d41e","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.13.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.16.1","dependencies":{"ajv":"^6.12.0","jsonata":"^1.8.1","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.7"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.11.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.2.0_1583939462644_0.4522360699860113","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"node-red-contrib-json-multi-schema","version":"1.2.1","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.2.1","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"7b7a5d3fdacaa7190071da7d2bc61922afcb95df","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.2.1.tgz","fileCount":24,"integrity":"sha512-IHZBITHKxP9Ld62iwOMakG2rwS+L0NxstREfWih+Jx83DzWHvmBFElwQu4b5hBXVLbJKcSDKRObvPUQLjn5ONg==","signatures":[{"sig":"MEYCIQD/+3fS7sds06p01/VH2ZkNJ1RPB/58wAKZusAZ1/cXjQIhANrAV4sWbYpFsi2y8KhLOGYH5shlHquIwM7HMfQQWof+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7GasCRA9TVsSAnZWagAA6hEQAJFWogSDxoLxNAvOu+H8\nnIpCaKB/5NWH6U9RRp+f3ny53E26EA5irA5nSw9syfDr28K+HVHO028nQRMG\nIMzl+bn3cSdLUXa0gTmtj37q+SnRwOqXrQp9MIlaUegSsu7A87he0p9/02LY\npBHQLTeEit2lByrUSoTZhV8EfAPgLvsG5ufCAlzVQI6w54M5f2Xa1KJFX2m9\nro2c9/aCCrf7q8BQs7OD/D7Ss8fCAnv0LLwWUKsSriN7wB0D8semoEU7eJIX\nNO5pH+CutdKukKdb5js8APyHc0POFu+17YcCgaJ7IiS+MvjSGjY6HxKuMf2N\nQ//w7lXA2ktKe4P6RuNcRPYnYB6/vzdZCbeyO9+hbA31FVKQ+76Bbno/lWRw\njSkPN7cKw/7wwayictSEXuarVAwCgHfDQgLYCs23q1aJyu0mhEpr5KY5ZCmy\nHLRS4QskX0Y9XirnO5dHc0TIifVL5UFBQoRiKd2skVQUoqtKsJ1Z/7Oog0IZ\nBRrB5B7lrhcA6Lj83qvaX4rhBQw4rroUEcpNEe5EloIDNW/jLpR1OWL0oH52\npgKXpOfWKhZf7oc1coyfrZ0ulYtMqG/7TZzmLOujbkCwLgBNJZ/VfvmmejL6\n25QBoRuy+ImO+FWiHQHmyciIdDPu16UBOlGytmtCsLP/D6BVyhdwsO40usdp\nhwWx\r\n=L53N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"55747957c968da18d754ee38bd7a20bcf3df012b","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.18.0","dependencies":{"ajv":"^6.12.2","jsonata":"^1.8.3","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.8"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.11.1"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.2.1_1592551084045_0.6682705376360212","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"node-red-contrib-json-multi-schema","version":"1.2.2","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.2.2","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"2725f00d497f1cda0c8e6d6713847d12f07296e0","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.2.2.tgz","fileCount":24,"integrity":"sha512-GGOWwTkwKaU79iG4vGOqF0aaKng1Cs45G+ET0UCq3XJQiq8B98Wkiq0jwX2hiLmw1EbU0+1MQHKQPxnDu1NJ/A==","signatures":[{"sig":"MEUCIQCKYzXuabFFSYReDaf/ou94ESvC7o7vbRLB11HTQOp/LQIgTnIldNQvReKMmri/afD43ZD4TGqfwfsL0lX8FBAaPhQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7He0CRA9TVsSAnZWagAA120P/RvBUDOLdts4gMrLxR+o\niJSK5B9tflhUo5TpDgpmjevqZObmxid6iO7xZOYKR3tsUCtKG/+Yq8OoW1RF\n9VYHc3acy6KuadMZEp7+dO++s+tI28NVeju0sttcUFcdVIzVKF2C23Gx+Ffy\nSMttgvnS8c3DspEWVqWuPkZLFzGRm1pzSygVrQHitTHkFTLrP00YT5XcFGvv\n3JZslBhBYg3zQaQqoPunn6+hJOYJ71rFRpCpH5TqZXaHEKtcWW2WwdFo9esN\nAcme6n0HOCHOG2SH8bDKty2B4Gc3Hb+7ySaKz9lAYiOUiLqEoISU92beeeQ0\nR7sG2cpFPWC9YAp9+cuyKwrdOXqhQ6NblfEPG+lmSFlz5OPzL0tadRgBNlh5\n7KBqWPoqL8XR6jxV/VOuisdOC1RSqDV6pKe3oGI6bsWBwRJNKx4UC8zDowO7\nhV7iW20Mh4b97G+WPq1M7onjFcRNAiJySL7TxPggBGRDG5lat4fBnQAckRcZ\nz8tp6F3D5OJe1aXUKucjy+2VUfpIeRRZXaP3mqimlTyoK4rDbIBxchjrqP/h\nhys3lY9Tda0JFtYscz0s7qBJWk9I0IIfr+Aa+5sV3yMqv3vHV5LwqvySMWj9\nRgG5MAieBKpiCKot5uqdVVvfkpyM7KbvJW3LgiT43Cpo1XD7iJqnLZ0DaYn1\n/6WP\r\n=yPY0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"7f206ae5e40eaefd54038e82694dc5c6feee9778","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.4","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.18.0","dependencies":{"ajv":"^6.12.2","jsonata":"^1.8.3","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.8"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.11.1"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.2.2_1592555444296_0.002925204249100144","host":"s3://npm-registry-packages"}},"1.2.3":{"name":"node-red-contrib-json-multi-schema","version":"1.2.3","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.2.3","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"218470e0e764db414d92d745e282893fbde8835d","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.2.3.tgz","fileCount":24,"integrity":"sha512-kHWZNSzTgR/t2RF37o7zVm0/+TeB1XiC29twWZ8Wl1Bo9wZGZJGqvxtXBXq+NNIeXK+PTwO2+PnVDPWj9ay9jg==","signatures":[{"sig":"MEYCIQC3G4EifZUJ7QOP+69fB0s4PZypMOT3wXWC02tAyrjCqQIhANhOO2K8Qp58mEv5I1sIIUoPNzciuIq4x1GZgw6Rf+UY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKqARCRA9TVsSAnZWagAAS/gP/2saPZaZcswTzB1Z+7+6\nKZZTSvqRI66RkMkbfKt734/0S9RffaQijQwSkr+6xtmU6ateJ76guLR6ikS3\nH4AG++YOT4BFWnPcUIKAp0qd9wLdeg3ZGX2QtNu0PLbpfcDct3NEgM5JRKDs\nxHFye174cqk71iN7R+E5P3VuMCFoKA2wTniQVMfAz4pEFeSR+Q8Zmei+AtLX\nsH0aPqotvoQ5Mut7MYygyJvg++cxOuxEzNKnbPJbxwqEOXO95NSsil1/sYVN\nywRquj2/jQ71CIXFNoc2pVumo4Q3+4H+9FvkLDVgd6fwOnJoeE9PN6Mh/4ev\na/oeTk63sJjb0urYEuOGs6N9yBPUAR9CI++0yAZDGsBLt7MHK45fP81ZIhg8\nZKkYNugGxUy3TfYT0TAg8YlG39DLa1N2/oswoIyBvWWzsc6mo2eJv1oxp5YL\nXty7wTFrqavYUahcsku6lQgvG+nKKAnkwZw0fMe52zdYWJYXd2AW4YLaokUQ\nNEy97y3MaAEeGyyICjF0pW4IdKXN7KpdcbfIPEDbq4XdryahDlNUTs+xWtNT\nheLxSQT5MbuFz0cERpGMsmgujFb8+7tKkfoT1u4kPzTA1331zD36zk1K7j8k\nNKkz0FmsckRwWyYaAPaunTlX2kQ7Js1O2PjRR/EN3XwZQjmUeuNbYb4rZbSH\nTdMA\r\n=TpnQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"eda80e75e07b5f3cbc299ca33f0c20ab3a2944cc","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.6","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.18.3","dependencies":{"ajv":"^6.12.3","jsonata":"^1.8.3","node-fetch":"^2.6.0","node-red-contrib-mock-cli":"^1.0.9"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.12.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.2.3_1596629009265_0.05744722403878111","host":"s3://npm-registry-packages"}},"1.2.5":{"name":"node-red-contrib-json-multi-schema","version":"1.2.5","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.2.5","maintainers":[{"name":"glagnar","email":"thomas@itadvice.dk"},{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"2be424d44f3c3ef2a5139cf783889fd1f456f73d","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.2.5.tgz","fileCount":24,"integrity":"sha512-Cr/gHIwtyQsvGmp7DfAfYNyi6Fz772s85j/RIzNr8uSGX4Ve1mv7ZF0xY8Y0lCK6tsX66zTpoCS6/qKegxeyxg==","signatures":[{"sig":"MEYCIQCBXt+E8QJls2Izq0e6OG9Kr2mFROKg/qL/9Q+ctV5rhAIhAOgIW8CHRzouaik+1l3Xf6JGy3qhIxfpV9WMdr+33HKz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXMEYCRA9TVsSAnZWagAAXNcP/3AidBPKDagWSSs+WoN/\nFvsJ1wMxQksNjsJmzS6T7rntj4p+cpFcWMAbAyESi2LDR8cADN5dkuCIq4YB\nW04+JYZEvaNwOe2n2WzTkMetcNnRAQtb1vKtygj5za6aaBiKYpAO6O5r4LGL\nbfJhfwB0jXOwcGzar85GnQDeMLFp3HFvK9bFQAxJsL1FFX3kxk6hNbvSqpVc\nUK10xDlXDJR064J1PPc7RO0ZkEkK2DrfcC5IpGQ6ivvfDoKekspNXP+8ZWWv\neyXQFYg03HOyABDDrEp7nKW9gooC3fNpXIYY8quRydo29vxR1k7YsOZGvaAK\nE68OkegXgl6RdkH5RF6PlTCcJ+oCK2UramPyGn86RWYwaFgT1VI/2TSIPyBs\nFxw8lt/c4okDsInmqbYC1QUoEDqBzSlcn09nI+TZ4WZ1bAsQz4zVq1fqLHyg\nMgwcDQHEf6fCZgZ83nJaUnzFjIn3g7JJ6ZzGqdxfidD87vyEFH7KuoPhK6GS\ne3DzAjM/MtqqqVJnlEg4tnW8vn0Xtcjl2QhQ6WI9DwJYBNtQn9zWuL3PfCaX\nwcinD6+bP9VAEthT4zs45HbvvfmaWUyW6GiRLXsQ52Cv/B9pvi97DIxV5TJi\nr9a0LbRpcKwZB5Krhgt3R/x9HFUE+kUYzBgJ0wi95QAadmJMGt8DUtEF/HQu\nKzGe\r\n=cZWT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"bf2147cfb06b492928032a477ff883a7e6997e96","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.6","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.18.3","dependencies":{"ajv":"^6.12.4","jsonata":"^1.8.3","node-fetch":"^2.6.1","node-red-contrib-mock-cli":"^1.0.9"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.12.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.2.5_1599914264337_0.6037168180941572","host":"s3://npm-registry-packages"}},"1.2.6":{"name":"node-red-contrib-json-multi-schema","version":"1.2.6","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.2.6","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"b1ebc4b176e9f5193c4a914e4cfa0e0f98367e25","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.2.6.tgz","fileCount":25,"integrity":"sha512-pyL11JJDv/jmpMSGSBHEjMjKZ6FzvwP9fgEuJ0vy21WEHSBT+Ds7bBMk0ql3V2K5xbXLHICJkg1GP2WxZ5cvrg==","signatures":[{"sig":"MEYCIQD/760IU1iV5KhBo2Y+n2fpnh3GT9BDLlbFtF8CmFIqNwIhAOjvDJsc2FfJ1OE+2tlatz4Ukhcy9crylw82xEtPc8Pl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0HfqCRA9TVsSAnZWagAAcSYP/1kEyoKBNCAoxs1MYZ7v\noJgUkJUUQFFJHQAJa+JJAhR/Y1aZqBO/iMFCCTmQ4lmw2wyE2SwT1X0J5aLi\nYTeVY068dqtoGQibC/zBN0SFG6XSRKE0OWXRcTjYTxAIT2C5GDdk7J2E891D\n8qQ1pMxDxSKQDbr9W7WJrnGTyaG02bDXV/gdelOtOdBDRMu3JDRdcRU/ilrs\ng1VsBkR+4dKfydRHMpjixyvUvPOp5DJF8Q+DJ2oAxr7v/FMG/qytd278kWtC\nj3QqK1j77v7EHnPnp4QF09Z6tYLXxMRrUqjQpcFe0Iw1AqT8ZJ4vnRLElRdL\nlcVls1DJiD7iKx1rk5RuanSOJP/YXVQD+4qPMkcUO9Wdbngl1N0osfu46WiY\na7a6QhyFcYMrAynp0EyQ+4FnU5HS9UwrtDbvRZqikAcAJBt/lO4XoDwNy3OD\nOsZj1v3i6OifLWsn/MjHKnzSadZRRXKnqYAGwO7Hh9MrG58ks9pPPmg1BC0p\ny6neza3Fd9NY+XCE/Fn19ekvLMSwZvUS39xc+UJ/SZgwLOIA8sknwIT4tHR2\nv/+ALhLB4xbr9fuqWer2d8DGTsrjkOQfMUH6coVCLbp3+NilTm6cmQbhG4tx\nsTsLDEpEBs+dDkvE8xoTsXgHEqH5gcj2nrQ+Pl0xcEWxjLsdxvJeNppA6kR3\nXr9h\r\n=VBFU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"02068269a401a262292d10f7137527388409c744","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.12","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.22.1","dependencies":{"ajv":"^6.12.6","jsonata":"^1.8.4","node-fetch":"^2.6.1","node-red-contrib-mock-cli":"^1.0.10"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.13.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.2.6_1624274921461_0.23359230817302667","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"node-red-contrib-json-multi-schema","version":"1.3.0","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.3.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"},{"name":"glagnar","email":"thomas@itadvice.dk"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"7476f61710d693029760abc2704bbaa4b727663c","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.3.0.tgz","fileCount":25,"integrity":"sha512-b7kbkmpX7+TZxxfA8Oqmh7kuGs+hYg0ck8FkKbVlGPIbFTejn8O/pR6PaUVm8CF+RkXbCYhSzbSxIF2QUI65Wg==","signatures":[{"sig":"MEUCIE3BxWQkNOlyphpLuaYVjfBxdUGmTR11J6RDWUvlA1+HAiEA5yfu7N9sMH4QFMqkIJbHRG7wOTe30vtquY3UTZvuCck=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112522,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0IRdCRA9TVsSAnZWagAAMIoQAJCptQ5HTBXT/AZbUZaj\nwjMxiQBaQIdNjO1uV1Cfz3yY4o6xCQ9lXDhXYnlHXop7f4F9vakUPtWAxTUE\nV4vSWIav26yFuQh7kaKJMYTaZ/S1HbesTzrmoe1M00mu5Ke3seuAuR4arq0x\nnyrdDcXTFTPlMKpVrSZwNSdBMYA7VIBYaPCii8i+AdWrkc0MUohLdCsBub2R\npelkfDMJ0XSkUG6fp/bJw5qSGbl8/YPKKdo6ri0RXlEclgfyjE96xDLp1Drf\nQS1b1UGNgjvU23+u6YoGCMMf4tCif2RJpnYyDorcOyUdfaX5As/J8vPUhg1u\nBD8OrgO5RlQ1ab4sQPVJxDj9JXqwLwcohETqZwwewnnvUXwrzLwsKNsaCqjK\ntuTqEN5q+iwGu9uGx1vswj/8WtyILJ/pIlZWc9Q2HuI4Zdc+dQdfQ+9zkDq1\nTZkkYQdeqSSwDWltn0dvDOwCJE6n2O2QVm2r0BhQirbuDJQU05sADUw+aKcV\nm5R2yceFuoN8hOMxfiZ+XkWdtmcj2COu3oOvfpBL2XRx24vf4H6LCnvTdUdB\n9vT1N4vQlQ7N7/nqv+IX4Kzu8hZiif7jAUvV1EJsbYjkKbmz3xxrLHhUdy61\nNv6zkIIS1JMvWN1ozx/PYz8PPkG0oIwHnc7XdYEEDk13RCsL5EfPWe9yUAeJ\nSYrL\r\n=t0xd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"079d4e3f43bd39fec2af64de412722bacb62a012","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.12","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.22.1","dependencies":{"ajv":"^8.6.0","jsonata":"^1.8.4","node-fetch":"^2.6.1","ajv-formats":"^2.1.0","node-red-contrib-mock-cli":"^1.0.10"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.13.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.3.0_1624278108745_0.8995011906088297","host":"s3://npm-registry-packages"}},"1.3.1":{"name":"node-red-contrib-json-multi-schema","version":"1.3.1","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.3.1","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"14d8473c9ebcc526685dc9431d650a51e1e5c531","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.3.1.tgz","fileCount":25,"integrity":"sha512-uwqn70JyKBBa1uIJbdd4YdcQk6uIf7sRFHYqHPxSAFQ6ukI7vGPpa1vmOe4LutyzFbQSCQpIC/AoFSyPkmUaXw==","signatures":[{"sig":"MEUCIQDKnvygV+Cg9aU4WovgXv93dGZLQxela0XUTIHJaKjN6QIgYLGT4DWclAsDDiHgE2bI4820iTq6tIoIFrIZNDYq6UM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112522,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJMX2CRA9TVsSAnZWagAAkFMP/3JH0zbA6Js4bYyH9EKu\nMmXgCQaPlqRUrMKkXYgo0oxIXoK2gUOQF6wQ+qrQL+Hz/O4NeXeL4aqihztS\nHn58znaqlzMQW/SBiePla9RsY1uQagupg6+FY+ArkvvFGxGAuIOznAI9VtQR\nkB9I1PYaYPxDvSZt+irIhQyZTzfkX1zvPduUEBG4TNji05eW43YwzRh5MNvp\nej987k5Zhm8udzQVJrh6TjphJWwPBF98MXbmMViLt5ylTk8ILMMlmLcsQn4c\nh1l966z5A8auZoXRkXSncZaciFZlqfXx7nFGcdIpjKZhe4pkV1PIqae536Rp\ncCBTT8dUqXcxxNEKQvCjVEbMjRCPW5bPoAgJFV5+XmU9nkT8VYaDBEdIn3TC\n75NRBXGOjMF3ueo003Mphm4hQmhbH1+eKzyMT2gUuUvEfaDtQdTIJilFY/DN\n58kell2s3MaR8+Vn40bZCA3naAzwUwxK5z/nQrwOuPY54UUH8X1XiR943esb\nnwIe0AuDC2SKk1mpdtuQDRJAB/Zw6Lk2IHaUMqwmPkfgUhyu2aRDXjVGYX55\nVtaogDiR1UItSdSB1LS8RYAwp/C9C5QfTapSG3jRUpUZOXnlZhXpYVc3WTEm\nNzPUgkrWCzyKuUMAtLlm297DjnmyXjLFBcHbagiMYQbQwSDjIwXJbSpCuXez\nqbsF\r\n=EQub\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"fa84b1a4963c106901175cd8e73089d2c50e01e2","scripts":{"lint":"node ./node_modules/.bin/jshint *.js","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","pretest":"npm run-script lint"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.14","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.22.5","dependencies":{"ajv":"^8.6.2","jsonata":"^1.8.5","node-fetch":"^2.6.1","ajv-formats":"^2.1.1","node-red-contrib-mock-cli":"^1.0.10"},"jshintConfig":{"sub":true,"node":true,"multistr":true,"esversion":8},"_hasShrinkwrap":false,"devDependencies":{"jshint":"^2.13.1"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.3.1_1629799926104_0.9953786099068855","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"node-red-contrib-json-multi-schema","version":"1.4.0","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.4.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"5de82e8a388461d47f5cc9566764d3ea84e63ffa","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.4.0.tgz","fileCount":29,"integrity":"sha512-tGmp5CdDaAOqSPOuPJiBukvlPTguTP4TIYxhdlclQvn/fj6X7t6V22K4WtkBtHhlDPj0J0lclOstcDcY9GV/Ww==","signatures":[{"sig":"MEUCIALDxp5LlRL8RVhNb08aK1IvQSfuehdu3dmPhcsYAfm1AiEA54IRywU06yJ624qk+6lGh0zkMCtdNI3TqtF/OxJo7ss=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7pvrCRA9TVsSAnZWagAASBYP/1Z6TV/jZrjIUwfcPUFC\nUc0XFKBIj7LFAR0wb/x9DNquI2C7dQLmGkGxMynB9AXhhcJyrz+n84MYQuIs\n+M/GeXPBM7K9Ajv0yczrct2sNAjszTTNXHQa81e/LxSn0eYaMaEvzfYuPWJU\n3E9EsflV8ywubvSBEPhePWwD1yu9nBMIPoqtOgv363j/f4Ro5g7fS80RZWjK\nW8OacP4MptkKCRwX74wOZ4DwDZu532B6yf20s6W3rrHvXHUIoxEGH/zJk9+6\npWG8SUKW4EL5Sg2hk0X0NTa6yiyqn1LSCKnd63TIfZXXpiw3+5nnnvnu7b/s\nQhvuqD2OOJ3OuobXXDF6IlW8qVHBREO97zm59D7XlhCTscEq+RP0mBKpbrIJ\nMtWpClSw99xhC7Bq4wM1wUAtM1EDx4vwrwdpz9XqPz38vbTYNF6pF3YIz2Po\nnRR4XLgeC6a+UAyPuC64xQ2l1kiha4+KWnbqXJl/QPULwHpeHxmvVvMhNIYn\nZLwOLzfIt6jcUIpAJwAtPPlV7oV82nSfLFoWWbgwASUQQQoPIxUeKQeU/JD5\nkwfbvXC+UbPYimmkvkLA4JBY2msa3lL/E1txCUwADOA4jgUvQFWNmGsqscG9\nUFRnuwWyCOAcWGw+a77r7XUjo0CEscjYXy0rCnq98Ajdk7tpVxa1fkUk3s0Q\n21ZN\r\n=DAxo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"e7510a7336e6a53b8fb3b4cc9e2280c08376c2f8","scripts":{"fix":"npm run eslint_fix","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","eslint":"eslint --ext .js,.html .","pretest":"npm run-script eslint","eslint_fix":"eslint --fix --ext .js,.html ."},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"}},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.15","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.22.9","dependencies":{"ajv":"^8.9.0","jsonata":"^1.8.5","node-fetch":"^2.6.7","ajv-formats":"^2.1.1","node-red-contrib-mock-cli":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.32.0","eslint-plugin-html":"^6.2.0","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.25.4","eslint-plugin-promise":"^5.2.0","eslint-config-standard":"^16.0.3"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.4.0_1643027435428_0.3754114125688417","host":"s3://npm-registry-packages"}},"1.4.2":{"name":"node-red-contrib-json-multi-schema","version":"1.4.2","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.4.2","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"a32a559e70c1dc1b97b322d23e56343e476713b0","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.4.2.tgz","fileCount":29,"integrity":"sha512-cAV8GuKmLdMRdlGgxOb921QjWWis/0OJbaBQWgbpe9jjE/TjqS7eJPn03PC3lJFffC3WFkjKP450bBCd37VQ1w==","signatures":[{"sig":"MEUCIAJAngNpEzyMI9Z6fxjBp1GJB7w1sqThKFxFw9TXzed2AiEAm5rnbtt47Oi7/Wfsrmsla+ExOsBreTQo3yVNosBVegI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114087,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+s+KCRA9TVsSAnZWagAA7NUQAI+56Q+aX/kvDI+lBqDh\nbRCq34daoWWRBPLCcEZ7wuqwg6NoRnTRCpFUerfgpbtTB542+h/+0FtA1OBx\n6p4OFdeged4qSDRQ9mZ2/zmuAaNagXoHVx7Ubeq6RmmNll1PB8Uc0cgOjVed\nrY+7njLlvdFs7w4mcgejYA5lItmg+7y1nRZ30lpfKLabmoiKvwGPNNbaSD6I\nRA6GadjHSXqlpcWoMP7opl9tCejXZ1rdE18ZI7o1xGCQ8Pv+93hur9hHCcRD\n/vQ8edzjR//mpEnWjYwZQCpkh3xTBK14BbAS1lt75cQa/pNow9JnQXbjAvJa\neTSpIA+EWFMcmRjepiHK4BISxkrstNt661x67v+DBn3PGJcR/c4l15ShHGoZ\nqY+EpRTaHMJK+f/rK9KF1hXP1gPuSqkvrElbIEfbI/BqYazY3B6nKWV8M2cU\nm0IEesDK1LTvrhRfKAJTyY2ap7lkOBH6KoRMTTwdebaN6nbZIY/b1rZf0QJx\nSvMWUvDpGDqPe9P2YPF9mLBrO2W7yJhj4kcQbQ8onqncZcP7QzCpefGPf/kH\nmTVCpDteqaWxIBM/Vfkd91/2OnLymL5BSNXuweicGfjyfAYqe/X27E2hhlDI\nZPW7AF7eAJYZ8fV0KiVzr6AmoeZYf6sgGzZjaXdXQkbHcbk8WV4nPeTTMtdU\nizfX\r\n=ndKP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","engines":{"node":">=10"},"gitHead":"021184ee301a9e967dda11e7ed6c3806b3027666","scripts":{"fix":"npm run eslint_fix","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","eslint":"eslint --ext .js,.html .","pretest":"npm run-script eslint","eslint_fix":"eslint --fix --ext .js,.html ."},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"},"version":">=0.20.0"},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"6.14.15","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"12.22.9","dependencies":{"ajv":"^8.9.0","jsonata":"^1.8.5","node-fetch":"^2.6.7","ajv-formats":"^2.1.1","node-red-contrib-mock-cli":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.32.0","eslint-plugin-html":"^6.2.0","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.25.4","eslint-plugin-promise":"^5.2.0","eslint-config-standard":"^16.0.3"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.4.2_1643827082451_0.48746112906219397","host":"s3://npm-registry-packages"}},"1.5.0":{"name":"node-red-contrib-json-multi-schema","version":"1.5.0","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.5.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"49ebfe5aa5d19cf79215f0eda7b993b74356b966","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.5.0.tgz","fileCount":29,"integrity":"sha512-pFFWDTV8HIBtv5kY4T1Tor3xfPD+eIdQtqPjgPQWbV7rufVhJvTn/8ZJGuYLs9zC3ipla670ie3qqZif3KhQiA==","signatures":[{"sig":"MEQCIAJEp+jsMClDj01VSDj1lCl4j1v9ZHKIjD8mjZD/4WHiAiAFAkjSPu1oY6vZPf/MFYvSlUeth2MbyQXcJEUbKR9RXw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113996,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJju9MhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp9kw/8C+PGQ6nRhLAtgXotE2tdLsvbzQUVAYtqS2j9tENGDpNBsZRQ\r\nFha15PwkDLI3EEafj8S+2qp96/SVK3htwRpPcxkrqLW9K2CIbMQHQ2ftJmgD\r\nPYIf8Xt6dtVVOWoQN29vfzX2LVV+LaOQgibI47pOLDDgybrO0UCuOmiPD99O\r\nxbhUtv7Ve87nSEkI4+I14GoCVrt1D/QprH8tG2yHgLsKRGkTLHPZwz5XZtry\r\nA1KmdCwAW8vWNU291gf+aUOHeqWlL+xqhtf1DuJ6jFt5zuGFE6aokzXx5m0t\r\nRi3QwvAWT43R9mjc4itcfk1meQPcThYl2i9WKcZSeNuQ/82op+Tw08hZAHHG\r\nGlyoslEUAa0+VWyMGlw7lK5+XVj4k7zaK/YI1QyoMyNb74kZ1TQxT5YA6fUZ\r\nIQs45pML2gHvqs6GGbP0rb/lGAZ6k6YhjoQmQJpVkzFnK6coXm8rqJp8bIc/\r\n06OHKei+PIT5bmc7bkS2tONoxdtTD4zLNDw7/8wxdWcrt/xxcif6pyO2Rqyh\r\ndXqbqJUkswnw2M9klEsFLFDpByMVJkV0VkVRPUOiKONXpCafA6vSRWLWXi/Y\r\nl6BuSWMzwaMvKR6DNaEQVw/mcCJm+RJ76J7B/Cv++MI5p9clzwIWT++I83U4\r\nBxKdCa7iEIylsvyJ+9uQHWTehoij/etGReY=\r\n=VUmk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","engines":{"node":">=10"},"gitHead":"2852464dcde195dee7b6a0498f187e7615d2ffa9","scripts":{"fix":"npm run eslint_fix","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","eslint":"eslint --ext .js,.html .","pretest":"npm run-script eslint","eslint_fix":"eslint --fix --ext .js,.html ."},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"},"version":">=0.20.0"},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"8.19.2","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"18.12.1","dependencies":{"ajv":"^8.12.0","jsonata":"^2.0.0","node-fetch":"^2.6.7","ajv-formats":"^2.1.1","node-red-contrib-mock-cli":"^1.2.2"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.31.0","eslint-plugin-n":"^15.6.0","eslint-plugin-html":"^7.1.0","eslint-plugin-import":"^2.26.0","eslint-plugin-promise":"^6.1.1","eslint-config-standard":"^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.5.0_1673253665453_0.11545584675542231","host":"s3://npm-registry-packages"}},"1.5.1":{"name":"node-red-contrib-json-multi-schema","version":"1.5.1","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.5.1","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"b715af990706a95364c77441c23a85a9e2ef0c1c","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.5.1.tgz","fileCount":29,"integrity":"sha512-Lesu40ZxxQMgGz7uFivqYjcumkjfHRrAZc3kPJTa/0BDrWVytUTNk4On2FNcOQhAJ+HB395wML+pHgz6EG+GjA==","signatures":[{"sig":"MEYCIQDnVZndNNaP7t5uAlIZp72tUA9Nywzyp9wQ+e+6pjc51wIhAJtcR5g6D2T8TO0QoCHXQclQfk1Mt2LTqpbwp2UtzVSS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114035,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj42m/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqZDA//fb8Y/WdY4eZZQEySPJMh1KIS86xw0HqsGrXNv5xMEWik3BDE\r\nkLpC9k4knrlMGV+I2oA5yUkfZs8yQA3czN+xJ5rf1z7nG9158ZCRQ/qKuM8o\r\nHxt9uLiTZ0e6LTYGKOVldMIWvlHqRNIz+EzhX8GU2ErYbuuAWndvjcPyEWDf\r\njILwPmWQi9AbRmPeoF9yYJlnccRgQCuO7l8VeOhdvOVKsM5Pv/FfyX5lL8Gz\r\nTcKKUOQKXxpUU9yBgZ5iqX8N6YELUhgAnQnJNBHp/YohIHlasmEgOYKlcJW3\r\n33OkTYvWIJuoSNh1c9l32Y3yUmPmxGzRCxfnp32wOfQQGwjafLHda2tJEytN\r\nNrkKGKUVW/12/5vrGCWxzuu+E/RKhscpaqltlOqfRfw0BH1WKfT0+3ZLFTnQ\r\nL3f+BAOJXnMwzCgNO5RB1MkSEyurO4GPc2MWSRMrpQnp6QCsKre7eJYO45kB\r\n1T9bSYbTlj6xW9nxrpdXoM8ufzKEQbOPvl9Ja7IxqCOucgG/RB4HcLI8tY3T\r\nhUIA+hjADlK3lKbT5XN0sRwTRL0taP8S2NUPncGCNa6r/IvseC8Xy18aIhgx\r\nrR+d6o5MXrGJHwgdxc9hztaiwS/t5vnHJEw1e37n+LNRXMCDP5+774rhyYr+\r\nuparX3JrNroSXDfButlGKOm/8DjKNh5GR6o=\r\n=tHeR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","engines":{"node":">=10"},"gitHead":"61e8f90a831c1ace90389a304fd7eedbb08ab559","scripts":{"fix":"npm run eslint_fix","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","eslint":"eslint --ext .js,.html .","pretest":"npm run-script eslint","eslint_fix":"eslint --fix --ext .js,.html ."},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"},"version":">=0.20.0"},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"8.19.3","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"18.13.0","dependencies":{"ajv":"^8.12.0","jsonata":"^2.0.1","node-fetch":"^2.6.9","ajv-formats":"^2.1.1","node-red-contrib-mock-cli":"^1.2.2"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.33.0","eslint-plugin-n":"^15.6.1","eslint-plugin-html":"^7.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-promise":"^6.1.1","eslint-config-standard":"^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.5.1_1675848126834_0.17360609004009975","host":"s3://npm-registry-packages"}},"1.5.2":{"name":"node-red-contrib-json-multi-schema","version":"1.5.2","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.5.2","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"3fcc5a02b3cb14431ca8af3f2cffce7ca4a7cbcb","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.5.2.tgz","fileCount":29,"integrity":"sha512-xin739JQ19ZwaO3O74plM6KdZ2eNnRNVOA1CKJtw4c0t9QAI2OjMSm0nw0ZCKjhodBzYgXYLBEpnozetAVyIsQ==","signatures":[{"sig":"MEUCIDbAnymjoFm0CCzjOHnxcIbTkUkSqEM9EkE1AFlGWrkbAiEAmsBfhoZRyCy4MEVC0oxzQ0L/aAV5sxpYiZLsSrqfVRg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114036},"main":"index.js","engines":{"node":">=10"},"gitHead":"2ff44d80bac0ed667077d60a95f09d1214aca54a","scripts":{"fix":"npm run eslint_fix","test":"rm /tmp/schema.*.tmp.js ; printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","start":"node ./index.js","eslint":"eslint --ext .js,.html .","pretest":"npm run-script eslint","eslint_fix":"eslint --fix --ext .js,.html ."},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"},"version":">=0.20.0"},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"9.5.1","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"18.16.0","dependencies":{"ajv":"^8.12.0","jsonata":"^2.0.3","node-fetch":"^2.6.11","ajv-formats":"^2.1.1","node-red-contrib-mock-cli":"^1.2.3"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.41.0","eslint-plugin-n":"^16.0.0","eslint-plugin-html":"^7.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-promise":"^6.1.1","eslint-config-standard":"^17.1.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.5.2_1685528286555_0.09299769037327166","host":"s3://npm-registry-packages"}},"1.6.0":{"name":"node-red-contrib-json-multi-schema","version":"1.6.0","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.6.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"c79c27f43812b7acb8a1188eb72a2a2357a7ced4","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.6.0.tgz","fileCount":29,"integrity":"sha512-zui2ucY6A9krNfZx94zok911AdrX4Tvzt41BcrfdGUFObf6d+6vB7uq2ONfUsg2yiyvBAH04Je9tLQOetgOiFg==","signatures":[{"sig":"MEQCIHCl2simgJZNEIwjzMyOZy1/BsjRyKw6br09vfTvJ4JBAiAwi9nw0b51p5M3E5x6mVCFqHOa/PNgpMOc/mKENOWpvQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117589},"main":"index.js","engines":{"node":">=10"},"gitHead":"bd6865163c62f04c45e017b346dcb8f5293c4785","scripts":{"fix":"npm run eslint_fix","test":"npm run clean; npm run draft-07 && npm run draft-2019-09","clean":"rm /tmp/schema.*.tmp.js","start":"node ./index.js","eslint":"eslint --ext .js,.html .","pretest":"npm run-script eslint","draft-07":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","eslint_fix":"eslint --fix --ext .js,.html .","draft-2019-09":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/master/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator --schemaVersion='\"draft-2019-09\"'"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"},"version":">=0.20.0"},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"9.5.1","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"18.16.0","dependencies":{"ajv":"^8.12.0","jsonata":"^2.0.3","node-fetch":"^2.6.11","ajv-formats":"^2.1.1","ajv-draft-04":"^1.0.0","node-red-contrib-mock-cli":"^1.2.3"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.41.0","eslint-plugin-n":"^16.0.0","eslint-plugin-html":"^7.1.0","eslint-plugin-import":"^2.27.5","eslint-plugin-promise":"^6.1.1","eslint-config-standard":"^17.1.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.6.0_1685539706071_0.06889714244737277","host":"s3://npm-registry-packages"}},"1.6.1":{"name":"node-red-contrib-json-multi-schema","version":"1.6.1","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.6.1","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"3b9fce87accf6df09fbb3033231041e637a51957","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.6.1.tgz","fileCount":29,"integrity":"sha512-ybK+0IqAhghSD31+1sP0pXgHZCOmhBd1y/14ui7f35QC50jTVf5QXrpG7ovetIJkmAZlkOiqxvW3nE3Cgvaeag==","signatures":[{"sig":"MEQCIDYXIIG7QwtZCEFsaj+Wnf4UL56plBWrnKNNYcWcwhqGAiAHyUIxITDexXl3FmfimqCOVqdz2ywb9TKev94vyOxP6A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117527},"main":"index.js","engines":{"node":">=10"},"gitHead":"b69fc17f0f0de6ae7ccc6abd8a574bf3cd19a0f5","scripts":{"fix":"npm run eslint_fix","test":"npm run clean; npm run draft-07 && npm run draft-2019-09","clean":"rm /tmp/schema.*.tmp.js","start":"node ./index.js","eslint":"eslint --ext .js,.html .","pretest":"npm run-script eslint","draft-07":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","eslint_fix":"eslint --fix --ext .js,.html .","draft-2019-09":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator --schemaVersion='\"draft-2019-09\"'"},"_npmUser":{"name":"alkarex","email":"alexandre@alapetite.fr"},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"},"version":">=0.20.0"},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"9.8.1","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"ajv":"^8.12.0","jsonata":"^2.0.3","node-fetch":"^2.6.11","ajv-formats":"^2.1.1","ajv-draft-04":"^1.0.0","node-red-contrib-mock-cli":"^1.2.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.51.0","eslint-plugin-n":"^16.2.0","eslint-plugin-html":"^7.1.0","eslint-plugin-import":"^2.28.1","eslint-plugin-promise":"^6.1.1","eslint-config-standard":"^17.1.0"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.6.1_1697016764500_0.3038209589473482","host":"s3://npm-registry-packages"}},"1.7.0":{"name":"node-red-contrib-json-multi-schema","version":"1.7.0","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"author":{"url":"https://alexandra.dk/alexandre.alapetite","name":"Alexandre Alapetite"},"license":"MIT","_id":"node-red-contrib-json-multi-schema@1.7.0","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"dist":{"shasum":"a044c8f0a4dd69a0ec43ebed2896d96e02b4271c","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.7.0.tgz","fileCount":21,"integrity":"sha512-W9xeXoul+rlkF6t1iqwRNoZbhL+zSDsejCbX8X/KwEGRZdRQ/UrXz7q8u1oWjwebSNSFTZ1vYCV7cB1o6Av/BA==","signatures":[{"sig":"MEYCIQCrqngfxllq6gPNw8WAD58GRQciTgecuhpkIbqhx74vbwIhAN9mUrZaoAeXxjrP56nLTi3svnF1FFvUw6rl0H8f9Sjr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-red-contrib-json-multi-schema@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":114770},"main":"index.js","engines":{"node":">=16"},"gitHead":"0c0c026c3ae90515fad87104cdca58c723d0f5d7","scripts":{"fix":"npm run eslint_fix && npm run markdownlint_fix","test":"npm run clean; npm run draft-07 && npm run draft-2019-09","clean":"rm -f /tmp/schema.*.tmp.js","start":"node ./index.js","eslint":"eslint .","pretest":"npm run eslint && npm run markdownlint","draft-07":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","test-only":"npm run clean && npm run draft-07 && npm run draft-2019-09","eslint_fix":"eslint --fix .","markdownlint":"markdownlint-cli2","draft-2019-09":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator --schemaVersion='\"draft-2019-09\"'","markdownlint_fix":"markdownlint-cli2 --fix"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3dbbc78b-861e-42a6-b855-9f5f014df592"}},"node-red":{"nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-validator":"json-multi-schema-validator.js","json-multi-schema-transformer":"json-multi-schema-transformer.js"},"version":">=3"},"repository":{"url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git","type":"git"},"_npmVersion":"11.16.0","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","jsonata":"^2.2.2","node-fetch":"^3.3.2","ajv-formats":"^3.0.1","ajv-draft-04":"^1.0.0","node-red-contrib-mock-cli":"^1.4.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.8.0","globals":"^17.9.0","@eslint/js":"^10.0.1","neostandard":"^0.14.0-next","markdownlint-cli2":"^0.23.2","eslint-plugin-html":"^8.1.4","node-red-contrib-mock-cli":"^1.4.3"},"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-json-multi-schema_1.7.0_1786100725831_0.245883724632314","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"node-red-contrib-json-multi-schema","version":"1.7.1","description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","main":"index.js","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"engines":{"node":">=16"},"node-red":{"version":">=3","nodes":{"json-multi-schema-resolver":"json-multi-schema-resolver.js","json-multi-schema-transformer":"json-multi-schema-transformer.js","json-multi-schema-validator":"json-multi-schema-validator.js"}},"author":{"name":"Alexandre Alapetite","url":"https://alexandra.dk/alexandre.alapetite"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git"},"dependencies":{"ajv":"^8.20.0","ajv-draft-04":"^1.0.0","ajv-formats":"^3.0.1","jsonata":"^2.2.2","node-fetch":"^3.3.2","node-red-contrib-mock-cli":"^1.5.0"},"devDependencies":{"eslint":"^10.8.0","@eslint/js":"^10.0.1","eslint-plugin-html":"^8.1.4","globals":"^17.9.0","markdownlint-cli2":"^0.23.2","neostandard":"^0.14.0-next"},"scripts":{"eslint":"eslint .","eslint_fix":"eslint --fix .","markdownlint":"markdownlint-cli2","markdownlint_fix":"markdownlint-cli2 --fix","fix":"npm run eslint_fix && npm run markdownlint_fix","pretest":"npm run eslint && npm run markdownlint","start":"node ./index.js","clean":"rm -f /tmp/schema.*.tmp.js","test:only":"npm run clean && npm run draft-07 && npm run draft-2019-09","draft-07":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator","draft-2019-09":"printf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | node ./index.js json-multi-schema-transformer | node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | node ./index.js json-multi-schema-validator --schemaVersion='\"draft-2019-09\"'","test":"npm run test:only"},"gitHead":"5e8c1254ff5e3c02e7a253a234a4a9d6f87f808a","_id":"node-red-contrib-json-multi-schema@1.7.1","bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-SWY0q7gRemLhPKtGjN3ftD6+ewEnNBq71ZY6enEGcH/ZNhSlFLzrtAifvzHjyo6YdRhg+JaMP9e+jc6FBblenQ==","shasum":"d0cdd7cf7ce3d3250b30d10620e12a4adaf2b90c","tarball":"https://registry.npmjs.org/node-red-contrib-json-multi-schema/-/node-red-contrib-json-multi-schema-1.7.1.tgz","fileCount":21,"unpackedSize":114690,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/node-red-contrib-json-multi-schema@1.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGriHVTr6LIDdc3AYbGjWIt9Dtb2v0caQCAcwBIx1OQTAiBgnYm9NnubOy6/GKV/6XgXgiKn+fyjBAE358aT4MG6sA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3dbbc78b-861e-42a6-b855-9f5f014df592"}},"directories":{},"maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/node-red-contrib-json-multi-schema_1.7.1_1786186716571_0.2751922891283298"},"_hasShrinkwrap":false}},"time":{"created":"2019-12-18T13:48:32.806Z","modified":"2026-08-08T10:58:37.067Z","1.0.0":"2019-12-18T13:48:33.035Z","1.0.2":"2019-12-18T14:41:21.141Z","1.0.3":"2019-12-19T08:02:36.692Z","1.0.6":"2019-12-21T12:52:01.208Z","1.1.0":"2020-01-28T15:20:13.052Z","1.2.0":"2020-03-11T15:11:02.832Z","1.2.1":"2020-06-19T07:18:04.181Z","1.2.2":"2020-06-19T08:30:44.546Z","1.2.3":"2020-08-05T12:03:29.426Z","1.2.5":"2020-09-12T12:37:44.527Z","1.2.6":"2021-06-21T11:28:41.582Z","1.3.0":"2021-06-21T12:21:48.897Z","1.3.1":"2021-08-24T10:12:06.277Z","1.4.0":"2022-01-24T12:30:35.608Z","1.4.2":"2022-02-02T18:38:02.715Z","1.5.0":"2023-01-09T08:41:05.633Z","1.5.1":"2023-02-08T09:22:07.017Z","1.5.2":"2023-05-31T10:18:06.750Z","1.6.0":"2023-05-31T13:28:26.290Z","1.6.1":"2023-10-11T09:32:44.783Z","1.7.0":"2026-08-07T11:05:25.971Z","1.7.1":"2026-08-08T10:58:36.735Z"},"bugs":{"url":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema/issues"},"author":{"name":"Alexandre Alapetite","url":"https://alexandra.dk/alexandre.alapetite"},"license":"MIT","homepage":"https://github.com/alexandrainst/node-red-contrib-json-multi-schema#readme","keywords":["FIWARE","AtomicService","schema","validate","validator","transform","JSON","JSONata","IoT","node-red","nodered"],"repository":{"type":"git","url":"git+https://github.com/alexandrainst/node-red-contrib-json-multi-schema.git"},"description":"Generic JSON data pipeline tools, with dynamic transformation (using JSONata rules), resolving JSON Schema (using JSONata rules), and then validation (using JSON Schema). For Node-RED and for command-line.","maintainers":[{"name":"alkarex","email":"alexandre@alapetite.fr"}],"readme":"# node-red-contrib-json-multi-schema\n\nGeneric Node-RED nodes for a JSON data pipeline, suitable for continuous/streaming input, and with dynamic configuration.\n\n![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/alexandrainst/node-red-contrib-json-multi-schema/nodejs.yml?branch=master&logo=github)\n![npm](https://img.shields.io/npm/dy/node-red-contrib-json-multi-schema?logo=npm)\n![Docker Pulls](https://img.shields.io/docker/pulls/synchronicityiot/node-red-contrib-json-multi-schema?logo=docker)\n\n[![NPM statistics](https://nodei.co/npm/node-red-contrib-json-multi-schema.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/node-red-contrib-json-multi-schema/)\n\nThree distinct nodes allow transforming, resolving schemas, and validating different types of JSON inputs.\n\nThe nodes are made for [Node-RED](https://nodered.org) but can alternatively be [run from command-line](https://github.com/alexandrainst/node-red-contrib-mock-cli) using standard input/output.\nMatching rules and transformation rules are written in [JSONata](http://jsonata.org) (JSON query and transformation language), in external files.\n\nAppropriate e.g. for working with [FIWARE](https://www.fiware.org/developers/data-models/)’s [Smart Data Models](https://smart-data-models.github.io/data-models/), but not limited to any model.\n\nOriginally made by [Alexandre Alapetite](https://alexandra.dk/alexandre.alapetite) at the [Alexandra Institute](https://alexandra.dk) for the [SynchroniCity European project](https://synchronicity-iot.eu) as a contribution to [FIWARE](https://www.fiware.org). `#AtomicService`\n\nLicense: [MIT](LICENSE.md), 2019\n\nRequirements: Any platform where [Node-RED](https://nodered.org) (1.0+) or [Node.js](https://nodejs.org) (10.0+) can run.\n\nHere is an example of full Node-RED flow: [Node-RED_example_of_flow.json](examples/Node-RED_example_of_flow.json)\n\n![Node-RED flow](examples/Node-RED_example_of_flow.png)\n\n\n---\n\n## node-red-contrib-json-multi-schema-resolver\n\n* *Context*: Node-RED node, or command line with `node ./index.js json-multi-schema-resolver --mappingsUrl='\"https://...\"'`\n* *Purpose*: Ability to determine the URL of the JSON Schema (e.g. FIWARE NGSI) or JSONata expression to use for a given JSON payload received.\n* *Configuration*: A Node-RED `mappingsUrl` property to indicate the URL of a file listing which JSON Schema or JSONata expression to use for which data input. (See examples below).\n* *Input*: A JSON observation (e.g. one of the FIWARE NGSI types) in the `msg.payload` property.\n* *Output*: The unmodified JSON observation in the `msg.payload` property, and the resolved schema URL in the `msg.schemaUrl` property (if any match was found), and potential resolution errors in the `msg.error` property.\n\n### Example of input data (schema-resolver)\n\nThis is an example of [standard payload](https://fiware-datamodels.readthedocs.io/en/latest/Transportation/Vehicle/Vehicle/doc/spec/index.html), for which we need to look-up the [corresponding JSON Schema](https://smart-data-models.github.io/data-models/specs/Transportation/Vehicle/VehicleModel/schema.json).\n\nWe represent the example as a full Node-RED message, i.e. wrapped into a `{\"payload\":...}` structure.\n\n```json\n{\n\t\"payload\": {\n\t\t\"id\": \"vehicle:WasteManagement:1\",\n\t\t\"type\": \"Vehicle\",\n\t\t\"vehicleType\": \"lorry\",\n\t\t\"category\": [\"municipalServices\"],\n\t\t\"location\": {\n\t\t\t\"type\": \"Point\",\n\t\t\t\"coordinates\": [40.62785133667262, -3.164485591715449]\n\t\t},\n\t\t\"name\": \"C Recogida 1\",\n\t\t\"speed\": 50,\n\t\t\"cargoWeight\": 314,\n\t\t\"serviceStatus\": \"onRoute\",\n\t\t\"serviceProvided\": [\"garbageCollection\", \"wasteContainerCleaning\"],\n\t\t\"areaServed\": \"Centro\",\n\t\t\"refVehicleModel\": \"vehiclemodel:econic\",\n\t\t\"vehiclePlateIdentifier\": \"3456ABC\"\n\t}\n}\n```\n\n### Example of configuration file listing the JSON schemas\n\nIn the example, this JSON file is hosted at [`examples/smart-data-models.json`](https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json)\n\n`query` is a [JSONata expression](http://docs.jsonata.org/simple). In this example, it will match the input data above on `\"type\":\"Vehicle\"`\n\n```json\n[\n\t{\n\t\t\"query\": \"type\",\n\t\t\"cases\": {\n\t\t\t\"AeroAllergenObserved\": \"https://smart-data-models.github.io/data-models/specs/Environment/AeroAllergenObserved/schema.json\",\n\t\t\t...\n\t\t\t\"NoiseLevelObserved\": \"https://smart-data-models.github.io/data-models/specs/Environment/NoiseLevelObserved/schema.json\",\n\t\t\t\"Vehicle\": \"https://smart-data-models.github.io/data-models/specs/Transportation/Vehicle/Vehicle/schema.json\",\n\t\t\t\"WasteContainer\": \"https://smart-data-models.github.io/data-models/specs/WasteManagement/WasteContainer/schema.json\",\n\t\t}\n\t},\n\t{\n\t\t\"query\": \"...\",\n\t\t\"cases\": {\n\t\t\t...\n\t\t}\n\t}\n]\n```\n\n### Example of configuration file listing the JSONata transformations\n\nSame format than above.\nIn the example, this JSON file is hosted at [`examples/smart-data-transforms.json`](https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json)\n\n`query` is a [JSONata expression](http://docs.jsonata.org/simple).\n\n```json\n[\n\t{\n\t\t\"description\": \"Transformation from NGSI v2 models from 'Normalized response representation' to 'Simplified representation'\",\n\t\t\"query\": \"type and *.value\",\n\t\t\"cases\": {\n\t\t\t\"true\": \"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/NGSI-Normalised-to-keyValues.jsonata.js\"\n\t\t}\n\t},\n\t{\n\t\t\"description\": \"Transformation from Cesva-TA120 to NGSI v2 NoiseLevelObserved in Simplified representation\",\n\t\t\"query\": \"type='Cesva-TA120' and NoiseLevelObserved\",\n\t\t\"cases\": {\n\t\t\t\"true\": \"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/Cesva-TA120-to-NoiseLevelObserved.jsonata.js\"\n\t\t}\n\t}\n]\n```\n\n### Example of schema resolution from command line\n\nThe JSON input messages must each be on one single line, and wrapped into a Node-RED structure `{\"payload\":...}`\nSee the `jq` examples at the bottom on how to automatise the wrapping.\n\n```sh\necho '{\"payload\":{\"id\":\"vehicle:WasteManagement:1\",\"type\":\"Vehicle\",\"vehicleType\":\"lorry\",\"category\":[\"municipalServices\"],\"location\":{\"type\":\"Point\",\"coordinates\":[40.62785133667262,-3.164485591715449]},\"name\":\"C Recogida 1\",\"speed\":50,\"cargoWeight\":314,\"serviceStatus\":\"onRoute\",\"serviceProvided\":[\"garbageCollection\",\"wasteContainerCleaning\"],\"areaServed\":\"Centro\",\"refVehicleModel\":\"vehiclemodel:econic\",\"vehiclePlateIdentifier\":\"3456ABC\"}}' | \\\nnode ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | \\\njq .\n```\n\nOutput:\n\n```json\n{\n\t\"payload\": {\n\t\t\"id\": \"vehicle:WasteManagement:1\",\n\t\t\"type\": \"Vehicle\",\n\t\t\"vehicleType\": \"lorry\",\n\t\t\"category\": [\n\t\t\t\"municipalServices\"\n\t\t],\n\t\t\"location\": {\n\t\t\t\"type\": \"Point\",\n\t\t\t\"coordinates\": [\n\t\t\t\t40.62785133667262,\n\t\t\t\t-3.164485591715449\n\t\t\t]\n\t\t},\n\t\t\"name\": \"C Recogida 1\",\n\t\t\"speed\": 50,\n\t\t\"cargoWeight\": 314,\n\t\t\"serviceStatus\": \"onRoute\",\n\t\t\"serviceProvided\": [\n\t\t\t\"garbageCollection\",\n\t\t\t\"wasteContainerCleaning\"\n\t\t],\n\t\t\"areaServed\": \"Centro\",\n\t\t\"refVehicleModel\": \"vehiclemodel:econic\",\n\t\t\"vehiclePlateIdentifier\": \"3456ABC\"\n\t},\n\t\"error\": false,\n\t\"schemaUrl\": \"https://smart-data-models.github.io/data-models/specs/Transportation/Vehicle/Vehicle/schema.json\"\n}\n```\n\n---\n\n## node-red-contrib-json-multi-schema-transformer\n\n* *Context*: Node-RED node, or command line with `node ./index.js multi-schema-transformer`\n* *Purpose*: Ability to transform a JSON observation on the fly from whichever format to another format (e.g. one of the FIWARE NGSI types) using a specified JSONata URL. Schemas are automatically downloaded and cached the first time they are needed.\n* *Input*: A JSON observation in whichever format in the `msg.payload` property, and the corresponding JSONata URL on the `msg.schemaUrl` property (coming from json-multi-schema-resolver).\n  * Alternatively, a static default value for the schema URL can be set in the corresponding property.\n  * If no `msg.schemaUrl` is provided, and no value set in the default schema URL property, then no transformation is performed.\n* *Output*: The transformed JSON observation in the `msg.payload` property, the used JSONata in the `msg.transformUrl` (if any transformation was performed), and potential validation errors in the `msg.error` property.\n* *Implementation*: Based on [JSONata](https://github.com/jsonata-js/jsonata).\n\nIt is typically used with a *json-multi-schema-resolver* node in front.\n\n### Example of input data (schema-transformer)\n\nThis is an example of proprietary format, which we would like to transform into another format (a standard NGSI one).\n\nWe represent the example as a full Node-RED message, i.e. wrapped into a `{\"payload\":...}` structure.\n\n```json\n{\n\t\"payload\": {\n\t\t\"id\": \"TA120-T246177\",\n\t\t\"type\": \"Cesva-TA120\",\n\t\t\"NoiseLevelObserved\": {\n\t\t\t\"id\": \"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\n\t\t\t\"sonometerClass\": \"1\",\n\t\t\t\"location\": {\n\t\t\t\t\"coordinates\": [\n\t\t\t\t\t24.985891,\n\t\t\t\t\t60.274286\n\t\t\t\t],\n\t\t\t\t\"type\": \"Point\"\n\t\t\t},\n\t\t\t\"measurand\": [\n\t\t\t\t\"LAeq | 48.6 | A-weighted, equivalent, sound level\"\n\t\t\t],\n\t\t\t\"dateObserved\": \"2018-09-17T07:01:09.000000Z\",\n\t\t\t\"LAeq\": 48.6,\n\t\t\t\"type\": \"NoiseLevelObserved\"\n\t\t}\n\t}\n}\n```\n\n### Example of JSONata transformation\n\nIn the example, this JSONata file is hosted at [`Cesva-TA120-to-NoiseLevelObserved.jsonata.js`](https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/Cesva-TA120-to-NoiseLevelObserved.jsonata.js).\n\n```js\n{\n\t\"id\": NoiseLevelObserved.id,\n\t\"type\": NoiseLevelObserved.type,\n\t\"LAeq\": NoiseLevelObserved.LAeq,\n\t\"dateObservedFrom\": NoiseLevelObserved.dateObserved,\n\t\"dateObservedTo\": NoiseLevelObserved.dateObserved,\n\t\"location\": NoiseLevelObserved.location\n}\n\n```\n\nA more advanced example of JSONata transformation can be found in [`NGSI-Normalised-to-keyValues.jsonata.js`](https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/NGSI-Normalised-to-keyValues.jsonata.js).\n\n### Example of transformation from command line\n\nThe JSON input messages must each be on one single line, and wrapped into a Node-RED structure `{\"payload\":...}`\n\n```sh\necho '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}},\"error\":false,\"schemaUrl\":\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/Cesva-TA120-to-NoiseLevelObserved.jsonata.js\"}' | \\\nnode ./index.js json-multi-schema-transformer | \\\njq .\n```\n\nSame example, but using a static default value for the schema URL in the corresponding property:\n\n```sh\necho '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}},\"error\":false}' | \\\nnode ./index.js json-multi-schema-transformer --defaultSchemaUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/Cesva-TA120-to-NoiseLevelObserved.jsonata.js\"' | \\\njq .\n```\n\nOutput:\n\n```json\n{\n\t\"payload\": {\n\t\t\"id\": \"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\n\t\t\"type\": \"NoiseLevelObserved\",\n\t\t\"LAeq\": 48.6,\n\t\t\"dateObservedFrom\": \"2018-09-17T07:01:09.000000Z\",\n\t\t\"dateObservedTo\": \"2018-09-17T07:01:09.000000Z\",\n\t\t\"location\": {\n\t\t\t\"coordinates\": [\n\t\t\t\t24.985891,\n\t\t\t\t60.274286\n\t\t\t],\n\t\t\t\"type\": \"Point\"\n\t\t}\n\t},\n\t\"error\": false,\n\t\"transformUrl\": \"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/Cesva-TA120-to-NoiseLevelObserved.jsonata.js\"\n}\n```\n\n---\n\n## node-red-contrib-json-multi-schema-validator\n\n* *Context*: Node-RED node, or command line with `node ./index.js json-multi-schema-validator`\n* *Purpose*: Ability to validate a JSON observation (e.g. one of the FIWARE NGSI types) on the fly against a specified JSON Schema URL. Schemas are automatically downloaded and cached the first time they are needed.\n* *Configuration*: A `schemaVersion` property indicating which [version of JSON Schema version](http://json-schema.org/specification.html). See the [Ajv documentation](https://ajv.js.org/json-schema.html#json-schema-versions) for technical details.\n* *Input*: A JSON observation (e.g. one of the FIWARE NGSI types) in the `msg.payload` property, and the corresponding JSON Schema URL on the `msg.schemaUrl` property (coming from json-multi-schema-resolver).\n  * If no `msg.schemaUrl` is provided, no validation is performed.\n* *Output*: The unmodified JSON observation in the `msg.payload` property, the used schema in the `msg.validUrl` (if any validation was performed), and potential validation errors in the `msg.error` property.\n* *Implementation*: Based on [AJV](https://ajv.js.org).\n\nIt is typically used with a *json-multi-schema-resolver* node in front.\n\n### Example of input data (schema-validator)\n\nThis is an example of [standard payload](https://fiware-datamodels.readthedocs.io/en/latest/Environment/NoiseLevelObserved/doc/spec/index.html#noise-level-observed), which we want to validate against its [corresponding JSON Schema](https://smart-data-models.github.io/data-models/specs/Environment/NoiseLevelObserved/schema.json), which address is provided by the Node-RED property `msg.schemaUrl`.\n\n```json\n{\n\t\"payload\": {\n\t\t\"id\": \"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\n\t\t\"type\": \"NoiseLevelObserved\",\n\t\t\"LAeq\": 48.6,\n\t\t\"dateObservedFrom\": \"2018-09-17T07:01:09.000000Z\",\n\t\t\"dateObservedTo\": \"2018-09-17T07:01:09.000000Z\",\n\t\t\"location\": {\n\t\t\t\"coordinates\": [\n\t\t\t\t24.985891,\n\t\t\t\t60.274286\n\t\t\t],\n\t\t\t\"type\": \"Point\"\n\t\t}\n\t},\n\t\"schemaUrl\": \"https://smart-data-models.github.io/data-models/specs/Environment/NoiseLevelObserved/schema.json\"\n}\n```\n\n### Example of JSON Schema validation from command line\n\nThe JSON input messages must each be on one single line, and wrapped into a Node-RED structure `{\"payload\":...}`\n\n```sh\necho '{\"payload\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"type\":\"NoiseLevelObserved\",\"LAeq\":48.6,\"dateObservedFrom\":\"2018-09-17T07:01:09.000000Z\",\"dateObservedTo\":\"2018-09-17T07:01:09.000000Z\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"}},\"error\":false,\"transformUrl\":\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/Cesva-TA120-to-NoiseLevelObserved.jsonata.js\",\"schemaUrl\":\"https://smart-data-models.github.io/data-models/specs/Environment/NoiseLevelObserved/schema.json\"}' | \\\nnode ./index.js json-multi-schema-validator --schemaVersion='\\\"draft-2019-09\\\"' | \\\njq .\n```\n\nOutput:\n\n```json\n{\n\t\"payload\": {\n\t\t\"id\": \"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\n\t\t\"type\": \"NoiseLevelObserved\",\n\t\t\"LAeq\": 48.6,\n\t\t\"dateObservedFrom\": \"2018-09-17T07:01:09.000000Z\",\n\t\t\"dateObservedTo\": \"2018-09-17T07:01:09.000000Z\",\n\t\t\"location\": {\n\t\t\t\"coordinates\": [\n\t\t\t\t24.985891,\n\t\t\t\t60.274286\n\t\t\t],\n\t\t\t\"type\": \"Point\"\n\t\t}\n\t},\n\t\"error\": false,\n\t\"validUrl\": \"https://smart-data-models.github.io/data-models/specs/Environment/NoiseLevelObserved/schema.json\"\n}\n```\n\n---\n\n## Wiring/Piping all modules together\n\nThe three modules above may be used independently or in combination.\nHere is an example of JSON transformation, followed by a schema resolver, and finally a JSON Schema validation.\n\n### Wiring in Node-RED\n\nCf. screenshot at the top of this document.\n\n### Piping on command line\n\n```sh\nprintf '{\"payload\":{\"id\":\"TA120-T246177\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246177-NoiseLevelObserved-2018-09-17T07:01:09.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.985891,60.274286],\"type\":\"Point\"},\"measurand\":[\"LAeq | 48.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:09.000000Z\",\"LAeq\":48.6,\"type\":\"NoiseLevelObserved\"}}} \\n {\"payload\":{\"id\":\"TA120-T246183\",\"type\":\"Cesva-TA120\",\"NoiseLevelObserved\":{\"id\":\"TA120-T246183-NoiseLevelObserved-2018-09-17T07:01:15.000000Z\",\"sonometerClass\":\"1\",\"location\":{\"coordinates\":[24.9030921,60.161804],\"type\":\"Point\"},\"measurand\":[\"LAeq | 37.6 | A-weighted, equivalent, sound level\"],\"dateObserved\":\"2018-09-17T07:01:15.000000Z\",\"LAeq\":37.6,\"type\":\"NoiseLevelObserved\"}}}' | \\\nnode ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | \\\nnode ./index.js json-multi-schema-transformer | \\\nnode ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | \\\nnode ./index.js json-multi-schema-validator | \\\njq .\n```\n\n_Note_: This is the example used for `npm test`\n\nThe CLI functionnality is provided by [*node-red-contrib-mock-cli*](https://github.com/alexandrainst/node-red-contrib-mock-cli).\n\n### JSON in Node-RED format\n\n[`jq`](https://stedolan.github.io/jq/) may be used to break down and format a standard payload into a Node-RED payload:\n\nFor instance if the input is a list of observations wrapped into a JSON array:\n\n```sh\njq -c '.[] | {\"payload\":.}'\n```\n\nExample from an URL, doing a transformation followed by a validation:\n\n```sh\ncurl 'https://broker.fiware.urbanplatform.portodigital.pt/v2/entities?limit=10' | \\\njq -c '.[] | {\"payload\":.}' | \\\nnode ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | \\\nnode ./index.js json-multi-schema-transformer | \\\nnode ./index.js json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | \\\nnode ./index.js json-multi-schema-validator | \\\njq -c .\n```\n\n---\n\n## Docker\n\n* [![Docker](https://www.docker.com/sites/default/files/horizontal.png)](https://hub.docker.com/repository/docker/synchronicityiot/node-red-contrib-json-multi-schema)\n\n### Build\n\n```sh\ndocker build --tag synchronicityiot/node-red-contrib-json-multi-schema .\n```\n\n### Persistant cache\n\nTo allow keeping a local copy of the remote JSON configuration files, transformations, and schemas.\n\n```sh\ndocker volume create tmp-schemas\n```\n\n### Run\n\n```sh\ndocker run -v tmp-schemas:/tmp --rm synchronicityiot/node-red-contrib-json-multi-schema [name-of-node] --parameter='...'\n```\n\n\nExample for resolving and validating from a network HTTP request:\n\n```sh\ncurl 'https://broker.fiware.urbanplatform.portodigital.pt/v2/entities?limit=10' | \\\njq -c '.[] | {\"payload\":.}' | \\\ndocker run -i -v tmp-schemas:/tmp --rm synchronicityiot/node-red-contrib-json-multi-schema json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-transforms.json\"' | \\\ndocker run -i -v tmp-schemas:/tmp --rm synchronicityiot/node-red-contrib-json-multi-schema json-multi-schema-transformer | \\\ndocker run -i -v tmp-schemas:/tmp --rm synchronicityiot/node-red-contrib-json-multi-schema json-multi-schema-resolver --mappingsUrl='\"https://raw.githubusercontent.com/alexandrainst/node-red-contrib-json-multi-schema/main/examples/smart-data-models.json\"' | \\\ndocker run -i -v tmp-schemas:/tmp --rm synchronicityiot/node-red-contrib-json-multi-schema json-multi-schema-validator | \\\njq -c .\n```\n\n---\n\n## Serving schemas\n\nThe three nodes are all expecting configuration files and corresponding schemas to be provided by HTTP.\n\nWhile JSON Schemas are often publicly available (e.g. <https://schema.org> , <https://smart-data-models.github.io/data-models/> ), it might not be the case for the list of JSON Schemas itself, the list of transformations, or the JSONata transformations.\n\nAny HTTP server can be used to host those documents. This can also be done using Node-RED:\n\n### Local Node-RED hosting\n\nThe same Node-RED instance can be used to host the various lists and custom schemas, which are then accessible via `http://localhost:1880/*`\n\nHere is an example of full Node-RED flow: [Node-RED_example_of_HTTP_flow.json](examples/Node-RED_example_of_HTTP_flow.json)\n\n![Node-RED flow](examples/Node-RED_example_of_HTTP_flow.png)\n\nIn this example, the schemas are published at `http://localhost:1880/schemas/example.json` where `example.json` is the filename.\n\nRead more on the [Node-RED cookbook](https://cookbook.nodered.org/http/serve-json-content).\n\n---\n\n## Caching of schemas\n\nA disk copy of the downloaded JSON and JSONata documents is kept in cache on disk.\nThere is a distinct disk cache copy for each node instance.\n\nBy default, the cache path is `/tmp/` but that can be changed with the environment variable `SCHEMAS_CACHE_PATH`\nCached files have a `schema.[URL hash].[Node ID].tmp.js` format.\n\nIf schemas are updated without changing their URL, it is possible to either alter the URL slightly (like `https://example.net/a-schema.json?v2`), delete and recreate the node (so that the node gets a new ID), or purge the local disk cache manually (in which case it is necessary to restart Node-RED to clear the memory cache).\n","readmeFilename":"README.md"}