{"_id":"@amida-tech/blue-button-xml","_rev":"7-b871a3d1d62f969955b8149927c1d2f4","name":"@amida-tech/blue-button-xml","dist-tags":{"latest":"1.8.10"},"versions":{"1.8.3":{"name":"@amida-tech/blue-button-xml","version":"1.8.3","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 0.12.0"},"dependencies":{"libxmljs":"^0.19.7","lodash":"^4.17.21","moment":"^2.29.2"},"devDependencies":{"grunt":"^1.5.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^27.5.1"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","gitHead":"3a9033272ceab8fd34346dc16e9ea05c68394fad","_id":"@amida-tech/blue-button-xml@1.8.3","_nodeVersion":"16.14.2","_npmVersion":"8.6.0","dist":{"integrity":"sha512-yHTCLvOLR+D1oMln6PAbddhRGHpQTAsl5kuqUFXxvt96IGftAUqZfHHJ+m87TnlFZvvciE8SbgAGhtbNw2uq4Q==","shasum":"b2183c858f6ffb3066e2640732d6384bf8af88d3","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.3.tgz","fileCount":44,"unpackedSize":2167905,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8cVSZbAw75qLIfOtjV2CcN1xVppgjjYIji7/ZHtTenQIgR4VpJ5hzd5GSLNQnnCGHCHWULwAPY3VLqC/8rdwBWeA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWbW4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqa1A/+MI6f7LMYRSrIEnn8Nl7zwTGca29aQwF7XJNfx+hBvVVq9SlM\r\nDhlItZm1Usg4xzjFFXJgQEnoHmPtjMv2k7gpFdZ5hFdqQ8e8C4KOIa9CS+gB\r\nwVh5Pvjo1dC7V3jnT0d7Pl9eMunxxoY4AQtrK0UsMC5OtnfTerU5RUQ6Xyaf\r\npu8H94JakGoEZjwofQvwgt+5mUGFxAXNfw2TDXqLmoeQ0eEq1WAYnFm2FFIV\r\njUMAOPvRTwSiHE/XUS1HxxmJD38NqWIoeMl6p9bygr8ZUZ4QSYFwbwNzVWtu\r\nl8LqcXfSLEfcXVyeH7Bs9v7h2oNlHkea5ZiaVq6zlgLxK1fQ/S+/r8Uyu8PP\r\nFT9nDTCnqLTmrVXUerVt5SREUSVa7++blwszhlHmxRp/7TPMxA6+mQrnW4KC\r\nofD3wUbSPSjnI0J8JBFkNQH4IIKpTLeqGOIWtFQJoKDkcp/YKxZYmaKYJ9/4\r\nQwC5mJpT3CPKlJZz7e2IMHAM6Ya2ZnOVs0prqtnT4ZiVzMm3wHOjf+OlzEIp\r\nUxcwryeI+ISYpQr2jAADuzyuywsapKVlOoP/vLeEtUOmFUjtZyx84rEOFOnK\r\nRoBJj/ehkOsTWPcWAE2YTCCIGuK7Qzkbmbv1qmRmUm95h4kGSBw5f07Ulgdl\r\nsVX8GF2AUdgfkAon+xigr17E8dkpzu5CIlc=\r\n=WDJa\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.3_1650046392496_0.05939248862556501"},"_hasShrinkwrap":false},"1.8.4":{"name":"@amida-tech/blue-button-xml","version":"1.8.4","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 14.19.2"},"dependencies":{"libxmljs":"^0.19.10","lodash":"^4.17.21","moment":"^2.29.3"},"devDependencies":{"grunt":"^1.5.3","grunt-contrib-connect":"^3.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^27.5.1"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","gitHead":"d21b74e272c04e651c057e14cd16d92560685013","_id":"@amida-tech/blue-button-xml@1.8.4","_nodeVersion":"16.14.2","_npmVersion":"8.8.0","dist":{"integrity":"sha512-NhwBF/oLMku73BbMHtzamvfDhzu6xda2W01hR8agNodAgjuCuOYy4oPv7L22Jg2pji1NWmXHHd1rFOTjdHVCuw==","shasum":"c696f64fe17be45a5f54181055396e41a94de6de","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.4.tgz","fileCount":44,"unpackedSize":2168081,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCHw8jTN4/5vharlPeUM7w3yqHkrIJfKwVjtFS1WpX3QQCIFGCt6vJVjoNtAr+aUglEjMTW10ZUjVeQWTSFQNjH4Fu"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieuRnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpgRQ//eTB2ExPJ25vePh+bFIJU5ffeQzic3c8bKJUG+UMdSgW0Kvm/\r\nDXvtR6dDQgVbcYsCL1/92yDP8mr5jwE41UkrSevM+58ofmYsJyE26xaExeny\r\nt+ke+J2ME/f3n2B3TMioGTUSN+VzNDroZlzC3YI3qaHnMG/tlrld1GKE1W9/\r\n91x9c/M/ZXqywgXfG+etzhlTb5xnCiOIIA6N6+zlsy736Q7pqfc0RbDNPxxQ\r\nxcnMIVEk2PpQFhK6SbYF0a+VE4/IDrW+8U6A8s7yZYNNbuDoA1/A4UFJ8F7R\r\nCo0lrKCJ+RxzKFH3Pb1bnHVV4Ack00MxDl0NyH0Dv7GNUFZqqqGn3bprDde6\r\ni4pw/zxhTiDiY19NKAAcB1jmbewmERKmLM9NsD5q5sxtSR+HQK/ZX1JGDvBm\r\n8dxHXMUse1FeQTWjQvjfHW3ZU4wko3fKJEKj08exhJztmuzdv9r2kCjfOsmC\r\nCzAKGYimxhpI57tRzABYyWp6lL82O4uUEybb4TsiB3U+6UMq3JvHZQfyCJ7s\r\nnPHJX69GW9pNLZBClYZtWV8H+jeuvtfdi4mYXg5EiDQrgTlVU9R4NAlensyB\r\n+s7OmAJWOzumBXu7uFsqumThDDUoXPclqZxSieDxgHNqIDquG5ZrNLt38hCK\r\nPK6jFZYYtw0DgW3ectsTX62vaVt/xtWqZ+w=\r\n=nKow\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.4_1652221030971_0.7433254314909754"},"_hasShrinkwrap":false},"1.8.5":{"name":"@amida-tech/blue-button-xml","version":"1.8.5","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 14.19.3"},"dependencies":{"libxmljs":"^0.19.10","lodash":"^4.17.21","moment":"^2.29.4"},"devDependencies":{"grunt":"^1.5.3","grunt-contrib-connect":"^3.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^27.5.1"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","gitHead":"b3dc2bdecd75f8eb20764e4c882fa725457807c0","_id":"@amida-tech/blue-button-xml@1.8.5","_nodeVersion":"16.14.2","_npmVersion":"8.12.1","dist":{"integrity":"sha512-buSxgMxOrxI9gCiNUoWoI+mK8nLlF3AaFlkQ4zket6i/7yJIgFkvRtSnNa8t6XsjDoFEHLYsdO+Dcdujj1sITg==","shasum":"427659092b15fc1e0bc9121115bb33b7adb126e4","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.5.tgz","fileCount":44,"unpackedSize":2168170,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHwcez84CXxJ2tWXZ9cPt1bLXjGw8Zknk+U31FaeWc7kAiB7++x7YC7iY9fs4ANP/xCzw3KG8MKEyrWTjCM9u+2djA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6YK4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpMvA/+LbBdwkLMOhCDzTVkkSRmohRq8BmRHsWbw1aYnoawrFJD8PR4\r\nSx4dlywtfDOySJsFz4AZsrntt6eLs0f7ab2GraPxmGaV0eZEjggv8zz35KbE\r\nn3DSx5llr5agyjhlP/e2A/ssbdl2uzDJEwf8t1ZCIbuFBZ3GwOyzszjRfG0a\r\nOa8T6NfxGN7FluTh7XbK+/Np2picUWzOSc9CFZNO+q63+ylib2NMK6ewK7em\r\njK4K6/suGs7Jn+KAgaQSmBClBV9E3hFTO/jRdA7MJBNWy0BS+SN5WF4VKRcl\r\n7JR4Bf4GwuLkXXvVo9R3hxC4ByyO5LsQwHAgK+0AiDB2QFgIDwkpS3CDbI2x\r\nRUB2xOire/eDCRCRpHX/K64dnJJTAf9NlG8l50vYavW5c5dzXhFBJaFlSdJA\r\nqjwZ+rJO4wPcBiU9ZAtcRMAzvHxKxWY6hFHrM74W8zMpq4RaiZHVITm8f+nU\r\nBHC/v7OIbk/mKQikdeT5uEOV5qNdsr12RcQP6D/fhlnyky+zVB0pyLboFHF1\r\n7MSrP0jW92jQK4CgkgZycL2vxCsGaGK+PH4Lj5CicWiL696mgVJ8TR/cuN+Q\r\na9b5ubOP5QOniC1a6fYPAIIrxBORL0UpT30ymVjAj0+XjdIoiG2OaYWZGl2k\r\nb9ImFKAP1ooJcPvmdDGrRPhtPz4NvLG1aN0=\r\n=0k6R\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.5_1659470519947_0.9490629260053625"},"_hasShrinkwrap":false},"1.8.6":{"name":"@amida-tech/blue-button-xml","version":"1.8.6","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 14.19.3"},"dependencies":{"@manhydra/libxmljs":"^0.19.11","lodash":"^4.17.21","moment":"^2.29.4"},"devDependencies":{"grunt":"^1.5.3","grunt-contrib-connect":"^3.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^29.3.1"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","gitHead":"6f9b6a64991a05f80c54406c73385ac370de497c","_id":"@amida-tech/blue-button-xml@1.8.6","_nodeVersion":"16.18.1","_npmVersion":"9.1.2","dist":{"integrity":"sha512-Tx+KB8OQDWanP1YL9lICC5wAN+iDNUZXwnyHVoLhc+4dcUyUDS4mtMRtfEKVYVE577VgTdU3vStw7g389VDxvw==","shasum":"e5f8222f4e5a807a32040461cbc70aeb4f8af258","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.6.tgz","fileCount":44,"unpackedSize":2168190,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBdCL0vu8fxfH8KBydgExU+o6Y5hqI/LR3n0sYp2q7mLAiEA7yehIgEtMo6rgjvmMCly70uP1/NiEjR5Y/q/2+jCnhY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhR8CACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoqYRAAoUPSbRIZyzuWQnBsIxzXCwS+u1ekFUnlpbVvK4pepBonnYwB\r\nWcqemiAEzj2oUIxT09wzgLn/OiTUUTaPUU4eZ2ftrgMhQDY3Nan/UN3z7Mo6\r\nyWUMvY/vQgKuYcMYV30W8dJFveQ9Up6xcamBAdgUVhyzgbFo91GxrdVbwnIq\r\nAuTQy814zAezJVMx+/mp9JI3U3fzexT/R0DMwnXz0EJ02dTZvrbg2C4aROk9\r\nV0xokEK5h0IuwuU8rZg+f/nknrls5sgI2Lierpr4ir3oLb6gCvLaLL1Sg1mo\r\nOvI+YuAke8RR8hbkLOrsaybWmeQQx2wNFXEzjjUv1YZanuw+yj60RCZQ1wCW\r\nAjtSnZqx7SFdhisXlT6dvtC+DosDKBlPZzKERlFRQJkyhCgPbY+U07eDPyYd\r\nOSnCZ9Fan6/fKvT05lzajvOxcZ71h1h1lcrO1p3VoCCfMCuWUrMx6rDfqcQ3\r\n/z2ieuq91kyfnMyMNtDmgWbUUkctdjhSB7v0Fa7AaxtFgTCL81b13v5Ukzvj\r\n7exqFByf0LWwEQMFS6ioLERQD8cPW3Iuhpz8k2ZSJXSTdykhuuu4VLbVQVpJ\r\n8UCJ2ga1ssQbzybX0JHR2msJIXB6efaMbhC7vHGJOFvP0O18Ly4V9P4BrpuC\r\nX6slZbG9VFypLiuFoC0+B6fVykC4hor0u1M=\r\n=M9OJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.6_1669668610527_0.5034810300215025"},"_hasShrinkwrap":false},"1.8.7":{"name":"@amida-tech/blue-button-xml","version":"1.8.7","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 14.19.3"},"dependencies":{"@manhydra/libxmljs":"^0.19.12","lodash":"^4.17.21","moment":"^2.29.4"},"devDependencies":{"grunt":"^1.5.3","grunt-contrib-connect":"^3.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^29.3.1"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","gitHead":"88d77031327b5db927000cd5ad232b152845bd25","_id":"@amida-tech/blue-button-xml@1.8.7","_nodeVersion":"16.18.1","_npmVersion":"9.1.2","dist":{"integrity":"sha512-BdeOV5kHT4egItf3nABOx0v75fyxceDFvCJTDPX9UctFy8CJA/VflIJC24qC/K3u+M7QeejmTAD78WztiCzyvw==","shasum":"f8a2ac45f29278e46b8e7d9e392df876f2e4d651","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.7.tgz","fileCount":44,"unpackedSize":2168190,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBXxSd3+gkzFBfq1Xkbs1a2fsB+4G8X5ZtgR+PaR91cwIhALAIN67e0HRcWQTE9WZ3gUu35ztj4pP5lQC5uOGuxu37"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhSBMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq0Ew//YyDDtQ6KCqsahsssZdmFo90zPbXA3oH9pWuK01nMvRJWwbYB\r\nAUVRKpkNPGMezurm0EXhsSkkl/pr9fSeuPxVGa3UrbBfBiF4UfKXHf8lbope\r\n9orcIaMNpi8JJpCSl/vGQolnb0mKL8QV7//23WUCCO+kKkpzPLPB/w4aYAqP\r\nrLyCxxwWzMNiQ+0wK1RxCAiWPzb13nhXYqlJpZVwnbCLxc7ytDGfPF8hfA5E\r\n1Zns4V3onsOht0p8vAyWKZ5Z6+vRvssBAvbVXod3sRwaO+ClVUa+Xk/V+fLg\r\nEp42v4ZIxvFjABcfNTEWJO+DzleZOkwoLDmtwMpBSP/CHQasOAS3xuyMVcme\r\npOwKePPp1FzjM8DTlxdWv2U9jG6Jan+CKVT7AJ7k2kDRAJ46t+FlYyD6Zpt5\r\nYySFj/72hkZ0fNFYAQh2creAuMAAUKuS0LvOg3aCDU/77Rm8TcyCOA0p0sgt\r\nR1ZXQZorasYnPAVJ6mP75SjuQhoBQ6uMFaCkkF5uPZ+Wm3evU4viggz5eaC9\r\nwalo12AK+MvdI0epEpJT9WovX2GxfdOAqyVrCs34Hrz/iYh3L31fsAnouJyL\r\nxvMMwfIDLyUR+LH1gK8lmDdCIsvtLo2lg/x9lbAMrop6n4v9Ra9O2nnd1mbB\r\nuw9FhDDhS1M4VKtUr/607H21C/dP4f9qQTU=\r\n=CvTO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.7_1669668940107_0.03601676238337115"},"_hasShrinkwrap":false},"1.8.8":{"name":"@amida-tech/blue-button-xml","version":"1.8.8","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 14.19.3"},"dependencies":{"libxmljs":"^1.0.11","lodash":"^4.17.21","moment":"^2.29.4"},"devDependencies":{"grunt":"^1.6.1","grunt-contrib-connect":"^4.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^29.7.0"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","_id":"@amida-tech/blue-button-xml@1.8.8","gitHead":"599cdb59a6feb52a985458712ad6ca881e02a5a3","_nodeVersion":"18.18.2","_npmVersion":"10.2.0","dist":{"integrity":"sha512-mImrEH/Fx5c778f9qlpZYiL8TtTzi4jWBxrxXFsv6UVnzAlR43u+eVarNBu7apRzqJDxrcBQpfSOHfSAY9+b5w==","shasum":"bb590afe96f155cd35b859a06c0b405f7c2859a4","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.8.tgz","fileCount":44,"unpackedSize":2168163,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCucZ3uwMj44+iL2KW0mSVrpULsW0/PvHdgddEAoyZh9QIhAO/yKCZMwwGaDtvo1ReTstpvpyS/yXonxzplJTeo6ynA"}]},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.8_1699880526981_0.22547069906456585"},"_hasShrinkwrap":false},"1.8.9":{"name":"@amida-tech/blue-button-xml","version":"1.8.9","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 18.20.0"},"dependencies":{"libxmljs":"^1.0.11","lodash":"^4.17.21","moment":"^2.30.1"},"devDependencies":{"grunt":"^1.6.1","grunt-contrib-connect":"^4.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^29.7.0"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","_id":"@amida-tech/blue-button-xml@1.8.9","gitHead":"caa5c1e61750dd3bb78a966e4e23b19545062c12","_nodeVersion":"18.19.1","_npmVersion":"10.5.0","dist":{"integrity":"sha512-EJGot/VF3eQjIHdiKml0MR6uOtpjJ+CEifNJ2CxEENw8LU8kfoQQsfCEgxczroyB6wh+Ow9thR7txw0AhnqdvQ==","shasum":"d16c3991f8fcc13ca2db1636480facb89f9c7855","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.9.tgz","fileCount":45,"unpackedSize":2168593,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFLoUOs7ETxAKIYNihi7tNX1yvYOxx2Y37mdwk4IGnYKAiEArtpCMt95WTX9YoU105sWsnMNTCbv+KHK+Qmlm4NID50="}]},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.9_1712344289409_0.34631733423114786"},"_hasShrinkwrap":false},"1.8.10":{"name":"@amida-tech/blue-button-xml","version":"1.8.10","description":"Blue Button XML Parsing Infrastructure","main":"./index.js","browser":{"./lib/xml.js":"./browser/lib/xml.js"},"directories":{"doc":"docs","lib":"lib"},"scripts":{"test":"grunt"},"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"license":"Apache-2.0","engines":{"node":">= 18.20.0"},"dependencies":{"libxmljs":"^1.0.11","lodash":"^4.17.21","moment":"^2.30.1"},"devDependencies":{"grunt":"^1.6.1","grunt-contrib-connect":"^4.0.0","grunt-contrib-jshint":"^3.2.0","grunt-contrib-watch":"^1.1.0","grunt-jsbeautifier":"^0.2.13","grunt-run":"^0.8.1","jest":"^29.7.0"},"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"keywords":["bluebutton","blue-button","xml","parsing"],"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"homepage":"https://github.com/amida-tech/blue-button-xml","_id":"@amida-tech/blue-button-xml@1.8.10","gitHead":"9138c02d6ae27687d99357c823d7f5148dc791b0","_nodeVersion":"18.20.1","_npmVersion":"10.7.0","dist":{"integrity":"sha512-5B6J2zQvJiAflLUchHfUHtK58cyfau3GmgTmChumy56LVAmhm+oA0teigtzf3iSdLFj3SLL6RPEJyEWXbgPgFw==","shasum":"e81742c22c6731f513ad3cdbd0935758b866a638","tarball":"https://registry.npmjs.org/@amida-tech/blue-button-xml/-/blue-button-xml-1.8.10.tgz","fileCount":45,"unpackedSize":2168604,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0wO1mHcc1d1hWr00fxDh5uXPrvFBHvhyki7AFM3RlbgIgPIhRzr3BCVrwiAN69aCazWXcxotrkSxS5q/s03SH4mE="}]},"_npmUser":{"name":"manhydra","email":"marc.sylvestre@manhydra.com"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/blue-button-xml_1.8.10_1715350704433_0.9798950946067453"},"_hasShrinkwrap":false}},"time":{"created":"2022-04-15T18:13:12.425Z","1.8.3":"2022-04-15T18:13:12.809Z","modified":"2024-05-10T14:18:24.887Z","1.8.4":"2022-05-10T22:17:11.210Z","1.8.5":"2022-08-02T20:02:00.220Z","1.8.6":"2022-11-28T20:50:10.774Z","1.8.7":"2022-11-28T20:55:40.371Z","1.8.8":"2023-11-13T13:02:07.263Z","1.8.9":"2024-04-05T19:11:29.616Z","1.8.10":"2024-05-10T14:18:24.666Z"},"maintainers":[{"name":"manhydra","email":"marc.sylvestre@manhydra.com"}],"description":"Blue Button XML Parsing Infrastructure","homepage":"https://github.com/amida-tech/blue-button-xml","keywords":["bluebutton","blue-button","xml","parsing"],"repository":{"type":"git","url":"git+https://github.com/amida-tech/blue-button-xml.git"},"contributors":[{"name":"Matthew McCall","email":"matt@amida-tech.com"},{"name":"Afsin Ustundag","email":"afsin.ustundag@us.pwc.com"},{"name":"Matt Martz","email":"matt.martz@amida-tech.com"},{"name":"Christopher Best","email":"bestchris@gmail.com"},{"name":"Marc Sylvestre","email":"marc.sylvestre@manhydra.com"}],"author":{"name":"Dmitry Kachaev","email":"dmitry@amida-tech.com"},"bugs":{"url":"https://github.com/amida-tech/blue-button-xml/issues"},"license":"Apache-2.0","readme":"Blue Button XML\n=================\n\nBlue Button XML Parsing Infrastructure\n\n[![NPM](https://nodei.co/npm/@amida-tech/blue-button-xml.png)](https://nodei.co/npm/@amida-tech/blue-button-xml/)\n\n[![Build Status](https://travis-ci.org/amida-tech/blue-button-xml.svg)](https://travis-ci.org/amida-tech/blue-button-xml)\n[![Coverage Status](https://coveralls.io/repos/amida-tech/blue-button-xml/badge.png)](https://coveralls.io/r/amida-tech/blue-button-xml)\n\nThis library provides the following functionality\n* Parse XML documents and find XML elements using [XPath](http://www.w3.org/TR/xpath) via [libxmljs](https://github.com/polotek/libxmljs) (node.js) or [DomParser](http://www.w3schools.com/dom/dom_parser.asp) (browsers).\n* Use [XPath](http://www.w3.org/TR/xpath) based formalism to simplify XML to JSON transforms.\n\nblue-button-xml is primarily designed to support [blue-button](https://github.com/amida-tech/blue-button) parsers to convert CCDA or C32 based XML health data into JSON according to the model in [blue-button-model](https://github.com/amida-tech/blue-button-model). Full XML to JSON transformations such as [xml2s](https://github.com/Leonidas-from-XIV/node-xml2js) are not appropriate for such conversions since not all data in the XML files are clinically significant or useful and often normalization is necessary.  blue-button-xml formalism simplifies selection and normalization of XML elements into a JSON model.\n\nThis library is primarily implemented for [node.js](http://nodejs.org) and is available via [npm](https://www.npmjs.org/doc/cli/npm.html). A browser version is also available via [bower](http://bower.io/). The browser version is created using [browserify](http://browserify.org) and can be used in the same way that you would use it in [node.js](http://nodejs.org).\n\n## Quick up and running guide\n\n### Prerequisites\n\n- Node.js (v14.19+) and NPM\n- Grunt\n\n```\n# Install dependencies\nnpm i\n\n# Install grunt\nnpm i -g grunt\n\n# Test\ngrunt\n\n```\n\n## Usage\n\nRequire blue-button-xml module\n``` javascript\nvar bbxml = require(\"@amida-tech/blue-button-xml\");\n```\nand load some XML content in an `example.xml`\n``` xml\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document>\n  <root name=\"example\">\n    <element ready=\"true\">82</element>\n    <element ready=\"false\">16</element>\n  </root>\n</document>\n```\n``` javascript\nvar data = fs.readFileSync('example.xml', 'utf-8');\n```\n\n### XML Utilities\n\nParse data into an XML object\n``` javascript\nvar doc = bbxml.xmlUtil.parse(data)\n```\nUse [XPath](http://www.w3.org/TR/xpath) to find XML elements\n``` javascript\nvar nodes = bbxml.xmlUtil.xpath(doc, \"//element[@ready='true']/text()\");\n```\nConvert text or attribute nodes to values\n``` javascript\nvar value = bbxml.processor.asString(nodes[0]);\nconsole.log(value); // 82\n```\n\n### XML to JSON Conversion Infrastructure\n\nDefine hieararchical parsers, JSON keys, JSON values and cardinality using `component` and `processor`\n``` javascript\nvar component = bbxml.component;\nvar processor = bbxml.processor;\n\nvar element = component.define(\"element\");\nelement.fields([\n  [\"value\", \"1..1\", \"text()\", processor.asFloat],\n  [\"flag\", \"0..1\", \"@ready\", processor.asBoolean]\n]);\n\nvar compA = component.define(\"compA\");\ncompA.fields([\n  [\"name\", \"0..1\", \"@name\", processor.asString],\n  [\"element\", \"1..*\", \"element\", element]\n]);\n\nvar root = component.define(\"root\");\nroot.fields([\n  [\"data\", \"1:1\", \"//document/root\", compA]\n]);\n```\nTransform XML content into JSON\n``` javascript\nvar instance = root.run(xmlfile);\nvar r = instance.toJSON();\nconsole.log(r);\n\n{\n  \"data\": {\n      \"name\": \"example\",\n      \"element\": [{\n         \"value\": 82,\n         \"flag\": true\n      }, {\n         \"value\": 16,\n         \"flag\": false\n      }]\n  }\n}\n```\nAdd some normalization for a component\n``` javascript\nelement.cleanupStep(function() {\n  if (this.js && this.js.flag && this.js.value) {\n    this.js.value = this.js.value + 10\n  }\n});\n```\nTransform to verify normalization\n``` javascript\nvar instance2 = root.run(xmlfile);\nvar r2 = instance2.toJSON();\nconsole.log(r2.data.element[0].value); // 92\n```\n\n## Component Fields\n\nComponent `fields` method is used specify JSON properties and accepts an array.  Each element is itself an array with a maximum lenght of 5\n\n* Index 0: This specifies the JSON key where XML data will be stored.  Multiple hieararcy keys such as `propa.prob` is accepted.\n* Index 1: This specifies the cardinality.  `1..1`, `0..`, `1..*`, and `0..*` respectively specify required object or value, optional object or value, required array of objects or values, and optional array of objects and values.  `*` can be replaced with a maximum value.  Cardinality errors are listed in `errors` property of results.\n* Index 2: This is an XPath from the current XML element.  Any valid XPath expression can be used here provided it finds a node consistent with the type as specified in Index 3.\n* Index 3: This can be either another component in which case this JSON property is an object or an array of objects, or a function in which case JSON property is a value or an array of values.  The following functions for value types are provided\n  * `processor.asString`\n  * `processor.asFloat`\n  * `processor.asBoolean`\n  * `processor.asTimestamp`\n  * `processor.asTimestampResolution`\n* Index 4: This specifies names for [vendor specific specializations](#vendorField).\n\n## Normalization\n\nNormalization can be added to each component\n``` javascript\ncompA.cleanupStep(compAStep1);\ncompA.cleanupStep(compAStep2);\n```\nwhere 'compAStep1' and 'compAStep2' are functions that can remove or modify existing fields or add new fields\nafter the primary parsing step.  Normalization steps are executed in order.\n\n`this.js` is available inside the normalization functions as the result before normalization.  `this.js` includes all the JSON keys and values defined for the component and normalization is done by changing `this.js`.\n\nBy default all `null` and `undefined` values are removed as the first normalization step.  Currently this normalization cannot be removed.\n\n`bbxml.cleanup` provides the following common normalizations: `renameField`, `replaceWithObject`, `extractAllFields`, `replaceWithField`, sn `removeField`.\n\n## Extending\n\nAn existing component can be extended to create a new component that includes all the fields and\ncleanup steps of the existing component\n``` javascript\nvar compB = compA.define(\"compB\");\ncompB.fields([\n  [\"addlElement\", \"0..*\", \"h:addlElement\",  addlElement]\n]);\ncompB.cleanupStep(compBStep3);\n```\nblue-button-xml generates a JSON object from this definition with 'name', 'element', and 'addlElememt'.\nNormalization steps will include 'compAStep1', 'compAStep2', and 'compBStep3'.\n\n## Vendor Specific Fields\n\nAny field in the component can be redefined for a specific key\n``` javascript\nvar compA = component.define(\"compA\");\ncompA.fields([\n    [\"name\", \"0..1\", \"@name\"],\n    [\"name\", \"0..1\", \"@displayName\", undefined, 'vendor'],\n    [\"vendorField\", \"0..1\", \"@vendorField\", undefined, 'vendor'],\n    [\"element\", \"1..1\", \"h:element\", element]\n]);\n```\nAnd if 'vendor' key is passed in the run step from the API, blue-button-xml uses the vendor specific \"name\" and \"vendorField\"\n``` javascript\nroot.run(doc, 'vendor');\n```\n\n## Vendor Specific Normalization\n\nNormalization steps can be included only for specific vendors\n``` javascript\ncompA.cleanupStep(compAStep4, ['vendor1', 'vendor2']);\n```\nand compAStep4 will only be used if 'vendor1' or 'vendor2' is passed from `run`.\n\nNormalization steps can also be excluded for specific vendors\n``` javascript\ncompA.cleanupStep(compAStep5, undefined, ['vendor1', 'vendor2']);\n```\nand compAStep5 will not be executed if 'vendor1' or 'vendor2' is passed from `run`.  For\nno key or other keys compAStep5 will be executed.\n\n## License\n\nLicensed under [Apache 2.0](./LICENSE).\n\nProject was influenced by and used some code from:\n\n[Josh Mandel's ccda-to-json library](https://github.com/jmandel/ccda-to-json) licensed under [Apache 2.0](https://github.com/jmandel/ccda-to-json/blob/master/LICENSE).\n","readmeFilename":"README.md"}