+ All Categories
Home > Technology > Whats Up With Ontopoly?

Whats Up With Ontopoly?

Date post: 17-Dec-2014
Category:
Upload: geir-ove-gronmo
View: 1,039 times
Download: 4 times
Share this document with a friend
Description:
A presentation that explains the new [hidden] enhancements made to Ontopoly, the Ontopia Topic Maps Editor, in release 5.0.
Popular Tags:
35
What’s up with Ontopoly? The Ontopia Topic Maps Editor, http://ontopia.wordpress.com/ 2010-01-22 Geir Ove Grønmo, [email protected]
Transcript
Page 1: Whats Up With Ontopoly?

What’s up with Ontopoly?

The Ontopia Topic Maps Editor, http://ontopia.wordpress.com/

2010-01-22Geir Ove Grønmo, [email protected]

Page 2: Whats Up With Ontopoly?

What happened?

– A lot happened between 4.1 and 5.0/5.1– It became extremely flexible

• Customizable UI• Embeddable• Extensible

– Self descriptive• All declarations made as topics, occurrences and

associations

Page 3: Whats Up With Ontopoly?

Customizable and embeddable

• Specific customer requirements meant that the editor had to become flexible– needed a generic menu editor

• One can do quite a lot to customize the UI

• Stripped down instance editor can easily embedded– uses AJAX, so no form request parameter

collisions

Page 4: Whats Up With Ontopoly?

Extensible

• Whole application built as a jar-file– all resources loaded through the class loader– standard Apache Wicket setup in web.xml

• Sub-class OntopolyApplication to customize– possible now, but needs some refactoring to

make it even easier to customize.

Page 5: Whats Up With Ontopoly?

Why did it happen?

• Most of these things happened because of a particular customer that deserves credit:

• Bergen Kommune– https://www.bergen.kommune.no/– had a lot of interesting real-world

requirements– and had the patience to turn them into

generic Ontopoly features

Page 6: Whats Up With Ontopoly?

Today

• It is pretty clear that very few noticed– what Ontopoly can do today

• Many “Hiddenhancements”

Page 7: Whats Up With Ontopoly?

It’s not perfect

• A few things are still missing• But the foundation is sound

Page 8: Whats Up With Ontopoly?

So, here’s an in-depth review

• Next slides explains the new features

Page 9: Whats Up With Ontopoly?

One instance editing component

• All editing done through same Wicket component– topic types and instances are equal– so is the topic map reifier topic

Page 10: Whats Up With Ontopoly?

What is a “field”?

• New behaviour: replaced type annotation with pattern matching agains field declarations

• A field is a pattern matching a subset of a topic’s characteristics– matches a subset of the topic’s characteristics– matching primarily by type

• role type, association type and other role types in the case of role fields

• datatype• and scope when we get that far

Page 11: Whats Up With Ontopoly?

Fields are first-class citizens

• Field definition types– identity field– name field– occurrence field– role field (and association field)

• Field definitions are now topics– to make it easier to say things about them– and make their declarations more explicit

• To make it possible to describe fields properly– field definitions had to be come first-class– avoids reification (of associations)– pattern matching– the stuff in “Advanced view” illustrates this

Page 12: Whats Up With Ontopoly?

Shortcuts (to fields)

• To allow faster access to all aspects of the model– not all links are enabled by default– because they are confusing when you don’t

need them– enable shortcuts on the Description page

Page 13: Whats Up With Ontopoly?

Field views

• Assigned to a subset of available fields• Configurable per view:– view mode– value view

• Behavior can be context dependent– Value view: if parent view is X then field view

is Y– View mode: if view is X then

• Embedded, Hidden, Not traversable or Read-only

Page 14: Whats Up With Ontopoly?

Embedded fields

• Possible to nest instance editors– arbitrary depth– context dependent (see previous slide)– locking of individual topics

• Not in n-ary association fields

Page 15: Whats Up With Ontopoly?

Multiple topic types

• Only available in Administration mode– For a reason

• Editing is done separately by topic type– see “Topic types” function box

Page 16: Whats Up With Ontopoly?

Configurable players

• Query that presents user with list of possible players– takes field and current topic as parameters

• Search interface control uses separate query

Page 17: Whats Up With Ontopoly?

Configurable player types

• Query that presents user with a list of possible topic types to create and instance of– displayed in * drop-down if multiple

Page 18: Whats Up With Ontopoly?

Configurable hierarchies

• Instance lists can be rendered as trees• Default is to use Techquila PSIs• Query can override default– should return two columns: parent, child– returns all parent child combination– must order by parent then child– enough to build and render a tree

Page 19: Whats Up With Ontopoly?

Sortable field values

• Fields can be made sortable– a check box in the advanced view– stores sort key as occurrence on topic and

scoped by field topic

• Use drag and drop to alter field value ordering

Page 20: Whats Up With Ontopoly?

Edit modes

• What players can be assigned to a field:– Existing values only– New values only– No edit– Normal– Owned values (cascading deletes)

• TODO: should be context dependent?

Page 21: Whats Up With Ontopoly?

Create actions

• When creating a new topic, what should happen?– Edit new topic in popup window– Go to new topic– None

• TODO: should be context dependent?

Page 22: Whats Up With Ontopoly?

View modes

• Given a view, then display in one or more view modes:– Embedded– Hidden– Not traversable (no links)– Read-only

• Can select multiple

Page 23: Whats Up With Ontopoly?

Value view

• Given current view, edit field in new view

• Maps a parent view to a child view

Page 24: Whats Up With Ontopoly?

Ontology annotation

• Not really new, but useful to mention here

• Makes meta-ontology topics visible

Page 25: Whats Up With Ontopoly?

Administration mode

• No restrictions on editing• Makes all topics visible

• Be careful!

Page 26: Whats Up With Ontopoly?

Improved locking

• Lock leasing• Shorter lock periods (4 min default)• Renewed every 3 min using ajax timers– only when page is open

• Prevents object from being locked when no longer being edited

• Locking enforced on nested embedded instances

Page 27: Whats Up With Ontopoly?

New fields editor

• On topic type page• Drag and drop field ordering– and field value ordering in sortable fields

• Can do the same using the instance editor– but not that user-friendly

Page 28: Whats Up With Ontopoly?

Association transformation

• Used to repair association instances– when the role types change after the

associations where created

• Button displayed on association type page

Page 29: Whats Up With Ontopoly?

Other stuff

• Tries to protect meta-ontology– unless in Adminstration mode

• Pluggable access strategy– to support authentication– and potentially authorization– not complete

Page 30: Whats Up With Ontopoly?

The future

• Plug-ins– event listeners– tabs– interface controls– triggers

• query for matching• update for modification

– customizability• drop the ontopoly.jar in and extend

– Could use jar manifests for discovery– Represented as topics in the topic map?

Page 31: Whats Up With Ontopoly?

The future

• Query fields• Query tabs/menu– tab or meny that displays the result of a query

• Batch editing– by selecting the rows in the queries results

• Merging topics• Duplicate suppression• Reification• Scope

Page 32: Whats Up With Ontopoly?

The future

• Interface controls should be more prominent– not only on association fields– but also on names and occurrences

• Support identity patterns– like prefixes in tolog– same feature could also be used with names

and occs

• Default values on occurrences and roles• Improve CSS to make it easier to

customize– tableless design

Page 33: Whats Up With Ontopoly?

The future

• Display n-ary fields as tables• Tool tips with descriptions– on topic links and field labels

• Adhoc validation (with TMCL hopefully)

Page 34: Whats Up With Ontopoly?

The future

• REST interface that exposes JSON– CRUD operations– would turn Ontopoly into a document

database– Makes it easy to do custom editors in

JavaScript

• External occurrences– accessed through REST (e.g. CMIS)– get external content and render as field value

Page 35: Whats Up With Ontopoly?

The future

• Bergen kommune went first• Features need funding• Who’s next?

• What would you like to see implemented?


Recommended