{"id":17772237,"url":"https://github.com/monkeydom/tcmxmlwriter","last_synced_at":"2025-04-21T23:31:11.941Z","repository":{"id":137803249,"uuid":"2048291","full_name":"monkeydom/TCMXMLWriter","owner":"monkeydom","description":"elegant cocoa XML marshalling with a small memory footprint","archived":false,"fork":false,"pushed_at":"2022-08-16T07:31:05.000Z","size":83,"stargazers_count":74,"open_issues_count":4,"forks_count":7,"subscribers_count":5,"default_branch":"develop","last_synced_at":"2025-04-01T16:55:51.644Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/monkeydom.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2011-07-14T16:21:36.000Z","updated_at":"2024-04-21T18:44:52.000Z","dependencies_parsed_at":"2023-05-22T14:30:47.745Z","dependency_job_id":null,"html_url":"https://github.com/monkeydom/TCMXMLWriter","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeydom%2FTCMXMLWriter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeydom%2FTCMXMLWriter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeydom%2FTCMXMLWriter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeydom%2FTCMXMLWriter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/monkeydom","download_url":"https://codeload.github.com/monkeydom/TCMXMLWriter/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250150655,"owners_count":21383206,"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-10-26T21:38:33.051Z","updated_at":"2025-04-21T23:31:11.615Z","avatar_url":"https://github.com/monkeydom.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TCMXMLWriter - an elegant memory efficient XML Marshaller\n\n## Design Goals\n* small memory footprint during marshalling\n* elegant syntax\n* suitable for iOS \u0026 Mac\n* self contained, no other dependencies\n\n## Requirements\n* iOS 4.x or higher\n* Mac OS X 10.6.8 or higher, 64-bit only\n* will probably be upped to Lion + iOS 5.0 soon\n\n## License\n\n* [MIT](http://www.opensource.org/licenses/mit-license.php)\n\n## Usage\n\nYou need to include the `TCMXMLWriter.h/m` in your project.\n\nAfter that you initialize your `TCMXMLWriter` with either nothing (will write to memory) a file URL (will write as a stream to that URL) or a stream it will write to.\n\nThis is a example generating KML of New York:\n\n\tTCMXMLWriter *writer = [[TCMXMLWriter alloc] initWithOptions:TCMXMLWriterOptionPrettyPrinted];\n\t[writer instructXML];\n\t[writer tag:@\"kml\" attributes:@{@\"xmlns\" : @\"http://www.opengis.net/kml/2.2\"} contentBlock:^{\n\t\t[writer tag:@\"Document\" contentBlock:^{\n\t\t\t[writer tag:@\"Placemark\" contentBlock:^{\n\t\t\t\t[writer tag:@\"name\" contentText:@\"NYC\"];\n\t\t\t\t[writer tag:@\"description\" contentText:@\"New York City\"];\n\t\t\t\t[writer tag:@\"Point\" contentBlock:^{\n\t\t\t\t\t[writer tag:@\"coordinates\" contentText:@\"-74.006393,40.714172,0\"];\n\t\t\t\t}];\n\t\t\t}];\n\t\t}];\n\t}];\n\n\nThe attributes dictionary can include these types as value:\n\n* NSNumber \n\t* `-[NSNumber stringValue]` \n\t* when `TCMXMLWriterOptionPrettyBOOL` is specified, then BOOLs will be replaced with `-boolYESValue` and `-boolNoValue`, defaults to @\"yes\" and @\"no\"\n* NSDate (will be encoded using ISO8601 with GMT - e.g. 2011-07-18T17:47:59Z )\n* NSStrings which will be represented literally\n\nWhen `TCMXMLWriterOptionOrderedAttributes` is specified, the attributes will in -caseInsensitiveCompare: order instead of the random order defined by the `NSDictionary`.\n\nFor more api see the `TCMXMLWriter.h`\n\n## Acknowledgements\n* greatly inspired by the [ruby XML Builder](http://rubyforge.org/projects/builder/) framework\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonkeydom%2Ftcmxmlwriter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmonkeydom%2Ftcmxmlwriter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonkeydom%2Ftcmxmlwriter/lists"}