{"id":18893459,"url":"https://github.com/jcomellas/hl7parser","last_synced_at":"2025-04-15T00:31:46.217Z","repository":{"id":12808267,"uuid":"15483170","full_name":"jcomellas/hl7parser","owner":"jcomellas","description":"HL7 parser with segment code generators in C","archived":false,"fork":false,"pushed_at":"2013-12-27T22:46:57.000Z","size":212,"stargazers_count":11,"open_issues_count":0,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T12:51:14.123Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jcomellas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-12-27T22:37:06.000Z","updated_at":"2024-03-21T05:29:08.000Z","dependencies_parsed_at":"2022-08-25T20:01:16.763Z","dependency_job_id":null,"html_url":"https://github.com/jcomellas/hl7parser","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcomellas%2Fhl7parser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcomellas%2Fhl7parser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcomellas%2Fhl7parser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcomellas%2Fhl7parser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jcomellas","download_url":"https://codeload.github.com/jcomellas/hl7parser/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248984331,"owners_count":21193727,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T08:13:49.859Z","updated_at":"2025-04-15T00:31:45.579Z","avatar_url":"https://github.com/jcomellas.png","language":"C","readme":"# HL7 Parser\n\n## Overview\n\nThe parser is divided into two parts:\n\n  1. Low-level functions that implement a tokenizer, lexer, parser,\n     callback (SAX-like) parser for the [HL7](http://www.hl7.org/) protocol.\n  2. Custom segment accessors (code-generated by `hl7segdef.py`).\n\nThis HL7 parser was designed for a memory-constrained hardware environment\nand thus avoids allocating memory as much as possible. This makes its\ninterface weird at times, and care must be taken to avoid overwriting memory\nthat is in use by a message (e.g. modifying a parsed buffer while the\nresulting message is still in use).\n\n## Requirements\n\nThe HL7 parser has no runtime dependency other than the standard C library,\nbut it requires [qmake](http://qt-project.org/wiki/Category:Tools::qmake)\nfrom the [Qt project](http://www.qt-project.org/) to generate its makefiles.\n\n## Installation\n\nTo install qmake in Ubuntu/Debian you can run:\n```\napt-get install libt4-dev qt4-qmake\n```\nThen run:\n```\ncd hl7parser\n./configure\nmake\nsudo make install\nsudo ldconfig\n```\nThis will install the dynamic libraries and headers for the project in\n`/usr/local`. You can test the behavior of the library by using the\nfollowing programs:\n```\nbin/test_lexer\nbin/test_cbparser\nbin/test_parser\nbin/test_segment\n```\n\n## Custom segments\n\nThe segment accessors are defined in an XML file (`hl7segdef.xml`) and are\nauto-generated by a Python script (`hl7segdef.py`). The code used to access\nthe segments is already included in the project (see the `src/seg_*.c` and\nthe `include/hl7parser/seg_*.h` files). If you need to modify the segment\ndefinitions, just remove these files, modify the XML file and run the script\nlike this:\n```\npython ./hl7segdef.py \u003cfile name\u003e\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcomellas%2Fhl7parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjcomellas%2Fhl7parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcomellas%2Fhl7parser/lists"}