Your SlideShare is downloading. ×
Semtech web-protege-tutorial
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Semtech web-protege-tutorial


Published on

Slides for the hands on WebProtégé tutorial held at Semtech 2013.

Slides for the hands on WebProtégé tutorial held at Semtech 2013.

Published in: Education, Technology

  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Collaborative Editing ofLightweight OntologieswithWebProtégéNatasha NoyMatthew HorridgeTaniaTudoracheStanford University
  • 2. Download the slides
  • 3. Plan•Introduction•What is collaborative ontology editing?•A guided tour of WebProtégé•Hands-on exercise•Discussion, Roadmap and Wrap up
  • 4. What is Protégé?• An open-source ontology editor• developed at Stanford University• has more than 200,00 registered users• has dozens of plugins for• visualization• inference• import and export• ….• has an API for developers
  • 5. A bit of Protégé history• Started more than 20 years ago• Has gone through many iterations• Was the first editor to support OWL 1• Informed the design of OWL 2• Has a thriving user community:• conferences• mailing list• short courses
  • 6. Protégé short course:Vienna, September 2-4Text
  • 7. The “Classic” ProtégéNot what this tutorial is about!
  • 8. WebProtégé•A Web-based application•edit ontologies in your Web browser•nothing to install•Supports distributed editing•multiple editors can make changes at thesame time•Includes many collaboration features•discussion, watches, feeds
  • 9. Plan•Introduction•Collaborative ontology editing•Hands-on•WebProtégé in large projects•Discussion, Roadmap and Wrapup
  • 10. Collaborative Ontology Development
  • 11. Collaborative Ontology DevelopmentCollaboration: several users contribute to thedevelopment of one ontology– Small group → larger community– Larger ontologies that concern a certain community– Individual process → social processEach community does it its own way
  • 12. Use cases of collaborative development inbiomedical domain• Gene Ontology (GO)• NCI Thesaurus• BiomedGT• OBI, BIRNLex, RadLex• Open Biomedical Ontologies (OBO)• International Classification:– of Diseases (ICD-11)– of Traditional Medicine (ICTM)– of Patient Safety (ICPS)
  • 13. The NCI Thesaurus collaborativedevelopment process●Simultaneous editing in Protégéclients●Custom UI for restricting userinput and enforcing businessrules●Development cycle begins afterbaseline●~20 full-time editors makingchanges; 1 “lead editor” whoapproves the changes, andassigns new tasks●Released version on NCIwebsite and BioPortalReference ontology for cancer biology, translational science, and clinicaloncology
  • 14. ICD-11● 11th Revision of the InternationalClassification of Diseases● Over 10.000 categories used for coding,billing, statistics, policy making all over theworld● Collaborative and international effort● Current version: published as books● Goal for the new version: use a more formalrepresentation and published in electronicalformat; use Web-based collaboration andsocial platforms for editing
  • 15. Construction of ICD-10:Revision Process in the 20thCentury● 8 Annual Revision Conferences (1982- 89)● 17 – 58 Countries participated– 1- 5 person delegations– Mainly Health Statisticians● Manual curation– List exchange– Index was done later● "Decibel” Method of discussion● Output: Paper Copy● Work in English only● Limited testing in the field
  • 16. ICD-11 process today● Over 250 domain experts from around the world● Organized in groups, which edit different parts of the ontology
  • 17. ICD-11 process today (cont.)● Each night a snapshot of the commonly edited ontology ispublished in a public platform to encourage feedback fromthe larger community● Editorial workflow● Centrally overseen by WHO● Peer-reviewed process for the content and structure● WebProtégé used as the collaborative ontologydevelopment platform
  • 18. Other ways of collaborating: Wikis● Wikis are well known; Wikipedia● Semantic Wikis – add semantic extensions to the wikiplatforms● Assign a wiki page to an entity in the ontology (e.g. theclass “Mountain”)● Export/import RDF
  • 19. Semantic Wiki: MoKiSource:
  • 20. The challenge with wikisSource: Hoehndorf, Robert, et al. "BOWiki: an ontology-based wiki for annotation of data and integration of knowledge in biology."BMC bioinformatics 10.Suppl 5 (2009): S5.
  • 21. Using sourceforge to manage change proposals for the Gene Ontology
  • 22. myexperiment: social platform for sharing scientific workflows
  • 23. Other collaboration processes● Use source control repositories – SVN, CVS– Text based mechanisms– Hard to merge local copies in the shared copy● Locking mechanisms (lock parts of an ontology for editing)● Use specialized (domain dependent) ontology repositories,e.g., BioPortal
  • 24. BioPortal● An open repository of biomedical ontologies developed by NCBO atStanford● Publishing of ontologies, versioning (over 350 ontologies)● Discussions and structured proposals● Mappings, views● Storing metadata● Search over all ontologies● Browsing different versions of an ontology● All content and functionality also available as REST Web services →mash-up of applications● Technology is domain independent●
  • 25. BioPortal Statistics
  • 26. Ontology list in BioPortal
  • 27. NCI Thesaurus details in BioPortal
  • 28. Useful features for collaboration● Tools for discussion and reaching consensus– Add notes to ontology entities (classes, properties, individuals,axioms)– Add reviews and change proposals anywhere in the ontology– Document the decision process and final decisions● Complete Change history– Establish provenance– Retrieve ontology snapshots at any time– Implement different conflict resolution mechanisms● Personalized views of an ontology based on:– User’s role and tasks– User’s level of expertise
  • 29. Useful features for collaboration (cont.)● User roles and access control– Fine-grained control for editing and viewing rights– Sharing of ontologies● Publishing released versions of an ontology in a centrallocation,e.g. a repository● Scalability, reliability and robustness
  • 30. WebProtégéA QuickTour of the UI
  • 31. Creating an Account ICreate a new account
  • 32. Creating an Account IIEmail address - used for notifications such as ontology changesUser name - displayed next to changes you make and notes that you post
  • 33. The “Home Screen”Side barProject list. Click projectname to openCreate projectDownload projectSign In/Sign OutTrash projectUpload project
  • 34. The Side BarAll public projects plus your projects that are not in the trashYour projects that are in the trashOnly projects owned by you that are not in the trash
  • 35. ProjectsA project encompasses: A collection of ontologiesNotes & discussions and watchesSome user interface settingsSome sharing settingsA list of revisions and a log of changes
  • 36. Creating a ProjectCreate New ProjectProject name - does not need to be uniqueProject description - appears in the project list
  • 37. Uploading a ProjectUpload ProjectProject name - does not need to be uniqueProject description - appears in the project listLocal OWL file name
  • 38. SharingShare link (top right corner)
  • 39. Public Projects➊ Select public➋ Assign permissions for anyone including guests➌ Assign more fine-grained access for specific usersEnter names in list and press “Add”
  • 40. Private Projects➊ Select publicAccess is restricted to specific users➋ Assign more permissions for specific users.Enter names in list and press “Add”
  • 41. Class tree Editor (similar for properties and individuals) Notes & DiscussionsProject feedEditing Class Descriptions
  • 42. Adding SubclassesCreate subclasses buttonEnter one or more names. Press CTRL+Enter to accept and close(one class name per line)
  • 43. Editing Class DescriptionsDisplay name - corresponds to the value of rdfs:label hereIRI - Internationalized Resource Identifier. Auto-generated, globally unique“Property values”(Class expressions under the hoodowl:subClassOf)Annotation assertionsValues can be class names, datatype names,individual names, numbers, dates and stringsLanguage editor for plain literalsDelete row
  • 44. Auto-CompletionType in name. Popup shows possible matches.Dublin Core and SKOS properties “recognised”
  • 45. On-the-Fly CreationNew property warning(helps prevent typos!)Press the tab key and enter value to create property(property type will be determined from the value)
  • 46. Editing Individual DescriptionsClass tree Editor Notes & DiscussionsProject feed
  • 47. Display name - corresponds to the value of rdfs:label hereIRI - Internationalized Resource Identifier. Auto-generated, globally unique“Property values”(Annotations, property assertions orclass expressions under the hood -owl:subClassOf)Type assertions(rdf:type)Values can be class names, datatype names,individual names, numbers, dates and stringsDelete rowSame individuals(owl:sameAs)Editing Individual Descriptions
  • 48. Icon Cheat SheetClassIndividual (named)Datatype (xsd:integer, xsd:double etc.)Property (object/data property)Annotation propertyNumberDate-TimeLiteralLink (http:)IRI
  • 49. Hands OnOnline Newspaper
  • 50. ModellingTaskBuild an ontology to describe an online newspaperor news website e.g. or Become familiar with WebProtégéand some aspects of collaborative ontology editing
  • 51. ContentArticles:title, author, date published, edited by, keywords/topics,published in section, media (pictures, video), external linksetc.Advertisements:Standard ad, personal ad, Service ad etc.Model different kinds of articles and their properties. For example,
  • 52. StructureNewspaper:date published, issue, front matter etc.Sections:Domestic News,World News, Editorial, Magazine, Letters,Commentary,Television Listings,Advertisements,Appointments/Jobs, Sport, Business etc.Sections and subsectionsModel the structure of a news paper - different sections and how theyfit together. For example,
  • 53. PeopleEmployees:Columnist, Editor, Section Editor, Reporter, InternationalReporter, Managername, contact details: email, phone number, roleOther people:Politician, President,Actor etc. Individual people, e.g.Barack Obama.Model the people who contribute to the news paper and people whoare the subject of articles. For example,
  • 54. Custom entry forms for editing the ontologycontent● Easy to create user interfaces for the domain experts● Use common entry forms, but still keep the ontology“intelligence” behind it● A form widget (e.g., text field) is linked to a property in theontology● Easy to create custom forms with different views fordifferent users● Hides complex ontology stuff
  • 55. Form configuration in WebProtégéForm-based editing and configuration of the user interface for the development of ICD-11
  • 56. Examples of form-based editing
  • 57. Importing BioPortal terms intoWebProtégé(1) Search term in BioPortal ontologies(2) Getsearchresults(3) Browsedetails ofresults(4) Import into WebProtégé withsingle click
  • 58. WebProtégé – Make UpProtégé CollaborationFrameworkWebProtégéWebProtégé ServerGWT RPCServer sideClient sideJavaJavaJava atdevelopment timeJavaScript atrun- time2 parts: server and clientServer is completelyimplemented in Java and makesAPI calls to the OWL-API andother librariesClient side is developed in Java,and later compiled by GWT intoJavaScriptCommunication between serverclient is done via GWT RPC orsimple HTTP calls
  • 59. WebProtégé is pluggableWebProtégé User Interface(GWT)PortletsEvent manager Other managersWebProtégé Server (Java)Access policiesservice...OntologyServiceNotes andchanges Servicepluggablepluggable
  • 60. Extending WebProtégéPlug-in infrastructure very similar to Protégés: create yourown tabs and portletsExtend: AbstractTab or AbstractEntityPortletImplement your own RPCs, if neededReuse existing portlet codeWriting a tab – as easy as creating an empty class thatextends AbstractTab
  • 61. Resources●Online WebProtégé server:●WebProtégé documentation:●WebProtégé paper: “WebProtégé: A Collaborative Ontology Editor and KnowledgeAcquisition Tool for the Web”, Tania Tudorache, Csongor Nyulas, Natalya F. Noy,Mark A. Musen, Semantic Web Journal (SWJ) 4 (Number 1 / 2013), 89 - 99●WebProtégé in use: “Will Semantic Web Technologies Work for the Development ofICD-11?”, T. Tudorache, S. M. Falconer, C. I. Nyulas, N. F. Noy, M. A. Musen. The 9thInternational Semantic Web Conference, ISWC 2010 (In-Use track), Shanghai,China, Springer. Published in 2010.●Other References: