{"action":"opened","issue":{"url":"https://api.github.com/repos/SynBioDex/libSBOLc2/issues/18","labels_url":"https://api.github.com/repos/SynBioDex/libSBOLc2/issues/18/labels{/name}","comments_url":"https://api.github.com/repos/SynBioDex/libSBOLc2/issues/18/comments","events_url":"https://api.github.com/repos/SynBioDex/libSBOLc2/issues/18/events","html_url":"https://github.com/SynBioDex/libSBOLc2/issues/18","id":120859042,"number":18,"title":"Add third parser handler for constructing nested SBOL data structure from flat RDF/XML structure","user":{"login":"bbartley","id":2539464,"avatar_url":"https://avatars.githubusercontent.com/u/2539464?v=3","gravatar_id":"","url":"https://api.github.com/users/bbartley","html_url":"https://github.com/bbartley","followers_url":"https://api.github.com/users/bbartley/followers","following_url":"https://api.github.com/users/bbartley/following{/other_user}","gists_url":"https://api.github.com/users/bbartley/gists{/gist_id}","starred_url":"https://api.github.com/users/bbartley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bbartley/subscriptions","organizations_url":"https://api.github.com/users/bbartley/orgs","repos_url":"https://api.github.com/users/bbartley/repos","events_url":"https://api.github.com/users/bbartley/events{/privacy}","received_events_url":"https://api.github.com/users/bbartley/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-12-07T20:21:30Z","updated_at":"2015-12-07T20:21:30Z","closed_at":null,"body":"The SBOL reader in document.cpp currently has two handler functions, parse_objects and parse_properties.  Because RDF/XML is initially parsed into libSBOL as a flat list of objects, a third handler is now needed to construct composite SBOL data structures (in the UML specification, composite objects are connected by black arrows).  Composite SBOL data structures consist of TopLevel objects decorated with OwnedObjects.   The third handler should iterate through each object in an SBOL Document's register, identify if it is a TopLevel object.  All remaining objects are therefore OwnedObjects which need to be attached to the TopLevel to form a composite data structure."}}