130 likes | 300 Views
Navigating the ontology, modeling the organization : Basic starting points for ontology work. Nicholas Rejack – nrejack@ufl.edu VIVO Implementation Fest – Boulder, CO Tuesday, May 15, 2012 – 1:30 – 3:00 PM . Goal of this presentation.
E N D
Navigating the ontology, modeling the organization: Basic starting points for ontology work Nicholas Rejack – nrejack@ufl.edu VIVO Implementation Fest – Boulder, CO Tuesday, May 15, 2012 – 1:30 – 3:00 PM
Goal of this presentation • Show you how to effectively model your basic institutional data • Provide a basic introduction to VIVO’s ontology • Demonstrate how to translate that into useful display, while maintaining separation of data and display models
Basic concepts Standard MVC division: Data model: OWL DL ontology Display logic: FreeMarker templates, CSS, Javascript Examples using VIVO 1.3 ontology
Ontology design principles Remain independent of specific domains Represent temporal relationships Restrain the overall number of classes Allow for local extensions Represent what we know (open world assumption) Provide a way to distinguish what is internal to an institution taken from: http://sourceforge.net/apps/mediawiki/vivo/index.php?title=VIVO_ontology_design_principles
Ontology development • Use pre-existing ontologies: FOAF, FAO (http://vivo.ufl.edu/listOntologies) • Import from BioPortal and other existing sources, create local extensions where needed • Changes are consensus-driven, open and public • Join the bi-weekly ontology call to stay updated and discuss/request changes • Call info: every other Weds at 11 AM Eastern • http://sourceforge.net/apps/mediawiki/vivo/index.php?title=Ontology_Calls
Ontology basics • Class hierarchy • “Is-a” relationships: taxonomy • Inheritance of superclassesadds data • Can belong to multiple classes (synthetic view of identity) • By convention: class names start with upper-case (ex: foaf:Person) • Once created, add individuals • Demonstration: traveling up and down the hierarchy • If classes don’t apply to your organization: make extensions (later presentation)
Modeling your organization • Warning: don’t mistake the ontology hierarchy with an organizational hierarchy! • Make sure you get the class right • Object properties: relate class individuals to each other • OPs have domains and ranges • Ex: core:subOrganizationWithin has a domain and range of foaf:Organization • Domain and range definitions affect reasoning • Demonstration: model your organizational hierarchy by defining subOrganization relationships
Modeling your organization 2 • Attaching employees: select department, not the root • Data properties: relate class individuals to a bare data element (such as int or str) • Also select a domain and a range datatype • UF example: use deptIDs, link people to matching organizationsand Grants
External organizations • Important for previous positions, etc. –inevitable • No data source exists to cover all (yet) • Guidelines: • Get the class right (Dartmouth College) • Don’t say more than you know • UF’s grant org cleanup • Example: sameas.org, dbpedia, US states
Controlling the display 1 • Internal vs. external entities: Institutional Internal class example(select in menu, then select in menu management) • Doesn’t affect search! • ufVivo:UFEntity (make positive assertions) • Class and property groups: • Use property groups on object/data properties to control groupings on the profile pages • Use classgroups to control grouping on index page • FreeMarker changes: beyond this presentation, CourseSection example
UF experience with stubs • PubMed fetch: add everyone, but assert “ExcludeEntity” to hide from search (no longer works) • Merge authors to “real” profiles (grad students) • We expect: people we see appearing more times are UF people • Future: assert UFEntity on people to filter returns, know who we are talking about • Keep old data
Interaction between types and application • Filtering takes place on classtypes • Ex: filter Roles from search results • Adding new subclasses of Role through interface adds “inferenced” classes (Thing, Role) • But, if you lose “inferenced” superclasses you can have bad results- subclasses of Role turning up in search • Harvested data doesn’t come with “inferences” built-in
Questions? • Visual diagrams: • http://sourceforge.net/apps/mediawiki/vivo/index.php?title=Ontology_Visual_Diagrams • Contact: Nicholas Rejack(nrejack@ufl.edu)