1 / 10

caCORE Software Development Kit

caCORE Software Development Kit. George Komatsoulis 25-Feb-2005. Development Sasikumar Thangaraj 1 Michael Connolly 1 Joshua Phillips 1 Jennifer Zeng 1 Sailaja Mashetty 1 Shaziya Mushin 1 Aruna Tibriwal 1 Ye Wu 1 Ying Long 1 Andrew Shinohara 1 Ram Chilukuri 2 Christopher Ludet 2

zarek
Download Presentation

caCORE Software Development Kit

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. caCORE Software Development Kit George Komatsoulis 25-Feb-2005

  2. Development Sasikumar Thangaraj1 Michael Connolly1 Joshua Phillips1 Jennifer Zeng1 Sailaja Mashetty1 Shaziya Mushin1 Aruna Tibriwal1 Ye Wu1 Ying Long1 Andrew Shinohara1 Ram Chilukuri2 Christopher Ludet2 Gilberto Fragoso3 1 Science Application International Corp (SAIC) 2 Oracle Corp 3 NCICB Guide Sasikumar Thangaraj1 Michael Connolly1 Elizabeth Lucchesi1 Joshua Phillips1 Jill Hadfield3 Denise Warzel3 Ram Chilukuri2 Krishnakant Shanbhag3 George Komatsoulis3 Program Management Tara Akhavan1 George Komatsoulis3 Denise Warzel3 Frank Hartel3 Krishnakant Shanbhag3 Peter Covitz3 caCORE SDK Project Team

  3. caCORE and the SDK • caCORE is designed around 4 principles: • Model Driven Architecture • Open APIs • Use of controlled vocabularies • Registered metadata • Systems that utilize these criteria are said to be ‘caCORE-like’ • These principles correspond to the caBIG ‘Silver’ compatibility level. • The caCORE SDK is designed to allow a moderately experienced Java programmer to create a ‘Silver’ compatible software system. • Although helpful, UML Modeling experience is not required to use the toolkit.

  4. What is (semantic) metadata

  5. Components of the toolkit • UML Modeling Tool • Not supplied as part of the toolkit • We use Enterprise Architect (EA) at NCICB, but any modeling tool that supports XMI 1.3 will work (see the Developer’s Guide for details). • Semantic Connector • Assists with the semantic integration component by searching for concepts and annotating the XMI representation of a UML model. • Distributed with the toolkit, but will not be fully functional until the release of caCORE 3.0 in March. Until then, NCICB will run the semantic connector for groups with properly annotated UML models. • UML Loader • Takes the semantically annotated XMI file and loads it into the caDSR. • The UML loader is not included in this distribution; for now, all UML loading will be done at NCICB. • Code Generator • Input is an XMI representation of a UML model • Creates the ‘caCORE-like’ software system. • Distributed with the toolkit, fully functional.

  6. Object Agent Valid Values (where relevant) Data Element Concept Agent NSCNumber Value Domain java.lang.Integer Property NSCNumber Representation Code Data Element Agent NSCNumber Semantic Integration • UML Class = ISO Object Class • Example: Agent • ISO Object Classes are mapped to 1 or more concepts from EVS • UML Class Attribute = ISO Property • Example: nSCNumber • ISO Properties are mapped to 1 or more concepts from EVS • UML Class + UML Class Attribute = ISO Data Element Concept • Agent:nSCNumber • ISO DEC’s are mapped to 2 or more concepts (from OC + Property) • UML (Java) Datatype = ISO Value Domain (at least initially) • Example: java.lang.Integer • Enumerated value domains curated after initial UML loading • UML Class + UML Class Attribute + Datatype/Valid Values = ISO Common Data Element • Example: Agent:nSCNumber: java.lang.Integer

  7. Semantic Integration (II) • Some Concepts: • C1708: An active power or cause (as principle, substance, physical or biological factor, etc.) that produces a specific effect. • C41243: A unique drug identifier issued by the Nomenclature Standards Committee of the U.S. Food and Drug Administration. • C99999: A spy • C99998: Identification Number given to a spy by the National Security Agency • Some Applications: • A: caBIO: Agent.nSCNumber • Agent = C1708 • nSCNumber = C41243 • Value Domain = java.lang.Integer • B: Another application: Drug.nomenclatureStandardsCommitteeCode • Drug = C1708 • nomenclatureStandardsCommitteeCode = C41243 • Value Domain = java.lang.Integer • C: CIA Agent Information System: Agent:nSCNumber • Agent = C99999 • nSCNumber = C99998 • Value Domain = java.lang.String • Semantic Integration is based on concept codes, not name.

  8. UML loaded CDEs are self-harmonizing • At loading time, the UML loader searches for other CDEs that are described by the same set of concept codes. • If a matching CDE is found, the loader ‘designates’ the existing CDE, and puts the existing CDE into an additional classification scheme corresponding to the new project. • New versions of a software project work in a similar fashion, ‘designating’ existing CDEs where relevant and placing the CDE in an additional classification scheme.

  9. http://ncicb.nci.nih.gov/core/SDK

More Related