2. How the Worldwide Web Works
Hermoine and Harry can’t interact in a
Hermoine and Harry can’t interact in a
sophisticated way to share knowledge;
sophisticated way to share knowledge;
they can only edit and read each other’s
they can only edit and read each other’s
documents.
documents.
Reads pages Reads pages
Web browser Search engine Web browser
(e.g. Mozilla) (e.g. Google) (e.g. Internet explorer)
Accesses pages Discovers pages Accesses pages
using keywords
Web pages
3. Most Knowledge is Locked Away
Interface
Most knowledge is locked within system
Most knowledge is locked within system
components (e.g. database systems,
components (e.g. database systems,
handheld devices, sensor systems, etc)
handheld devices, sensor systems, etc)
on peoples’ computers. You can only
on peoples’ computers. You can only
System component access this sort of knowledge via the
access this sort of knowledge via the
interface to the component (where you
interface to the component (where you
supply ititwith input information or can
supply with input information or can
request information as output).
request information as output).
If you could look inside these
If you could look inside these
components you would find
components you would find
mechanisms so complex that only their
mechanisms so complex that only their
engineers understand them in detail. It
engineers understand them in detail. It
is very difficult to specify precisely and
is very difficult to specify precisely and
reliably what knowledge each contains.
reliably what knowledge each contains.
4. Worldwide Web Components
Modern Web browsers can connect to
Modern Web browsers can connect to
complex components using a Web form
complex components using a Web form
interface. Instead of simply reading
interface. Instead of simply reading
pages, Hermione can access a form
pages, Hermione can access a form
Interacts with form produced by some complex system
produced by some complex system
(about which she knows nothing); then
(about which she knows nothing); then
she can send input to that system by
she can send input to that system by
completing the form and sending itit
completing the form and sending
Web browser
back. The interaction is managed by a
back. The interaction is managed by a
form interface that mediates between
form interface that mediates between
the language understood by the Web
the language understood by the Web
Form Form browser and the inputs/outputs
browser and the inputs/outputs
output input understood by the complex component.
understood by the complex component.
Form interface This is a big improvement on simple
This is a big improvement on simple
Web pages but ititonly copes with one-
Web pages but only copes with one-
to-one interactions. Hermione couldn’t
to-one interactions. Hermione couldn’t
interact with several coordinated
interact with several coordinated
components (or with Harry) in this way.
components (or with Harry) in this way.
5. Components on Components
To allow more sophisticated
To allow more sophisticated
coordination, people write programs
coordination, people write programs
that coordinate. If Hermione was
that coordinate. If Hermione was
clever enough to write one of these
clever enough to write one of these
Interact with program
then she could use ititto coordinate
then she could use to coordinate
with Harry…
with Harry…
Component
…but the component coordinator is a
…but the component coordinator is a
coordinator
lot like any other component, so ititis
lot like any other component, so is
difficult for anyone else to find out
difficult for anyone else to find out
about or use Hermione’s clever
about or use Hermione’s clever
method for finding things out from all
method for finding things out from all
those components.
those components.
6. Thinking the Same Thing
Coordination is made even more
Coordination is made even more
difficult because the people who built
difficult because the people who built
the components (and the knowledge
the components (and the knowledge
locked inside them) often come from
locked inside them) often come from
different cultures. If Hermione wants to
different cultures. If Hermione wants to
coordinate components designed by
coordinate components designed by
Component Imperial Stormtroopers from a distant
Imperial Stormtroopers from a distant
coordinator galaxy then only some of the things
galaxy then only some of the things
they have in mind will be appropriate to
they have in mind will be appropriate to
her task – others may be wildly
her task – others may be wildly
inappropriate.
inappropriate.
This makes coordination brittle: ititworks
This makes coordination brittle: works
well for some tasks but may fail for
well for some tasks but may fail for
others because the knowledge being
others because the knowledge being
shared is so sensitive to the context in
shared is so sensitive to the context in
which ititis being used.
which is being used.
Design
Design
7. Coordination is Knowledge
There are formal languages in which
There are formal languages in which
we can describe precisely the
we can describe precisely the
Design interaction we want. These
interaction we want. These
descriptions are like Web pages (so
descriptions are like Web pages (so
we can invent ways to discover them,
we can invent ways to discover them,
view them, etc) but they also are
view them, etc) but they also are
Interaction Run Interaction
formal (so we can build programs that
formal (so we can build programs that
model interpreter
interpret them to run actual
interpret them to run actual
interactions).
interactions).
Now Hermione doesn’t need to write
Now Hermione doesn’t need to write
a new component coordinator every
a new component coordinator every
time she wants a different interaction
time she wants a different interaction
with Harry. Instead she designs a
with Harry. Instead she designs a
(much simpler) interaction model and
(much simpler) interaction model and
gives that to the interaction
gives that to the interaction
interpreter, which runs the model to
interpreter, which runs the model to
give her the interaction she
give her the interaction she
described.
described.
8. The OpenKnowledge Kernel
The OpenKnowledge kernel is a
The OpenKnowledge kernel is a
Download from program you (and Hermione, and
program you (and Hermione, and
www.openk.org Harry) can download and easily
Harry) can download and easily
install on your computer (it connects
install on your computer (it connects
automatically to the appropriate
automatically to the appropriate
interfaces).
interfaces).
The kernel contains an interaction
The kernel contains an interaction
model interpreter plus several other
model interpreter plus several other
things to help you interact with other
things to help you interact with other
people and with other components on
people and with other components on
the Internet.
the Internet.
9. Inside the Kernel
Interaction The OpenKnowledge kernel contains
The OpenKnowledge kernel contains
discoverer several unusual things, as well as an
several unusual things, as well as an
Interaction interaction model interpreter. It has a
interaction model interpreter. It has a
interpreter way of helping to align the
way of helping to align the
terminology used when interacting
terminology used when interacting
Reputation
(we call this ontology matching). It
(we call this ontology matching). It
communicator
has a way of discovering interaction
has a way of discovering interaction
Ontology models that other people have
matcher models that other people have
designed. It has a way of sharing
designed. It has a way of sharing
information on the reputation of those
information on the reputation of those
involved in interactions.
involved in interactions.
The good news is that you don’t need
The good news is that you don’t need
to understand the details of how
to understand the details of how
these work in order to use the kernel.
these work in order to use the kernel.
10. Discovering Interactions
Suppose that Harry wants to
Suppose that Harry wants to Hermione has an extensive
Hermione has an extensive
develop a new spell but doesn’t
develop a new spell but doesn’t database of spell recipes and
database of spell recipes and
know how. He uses the
know how. He uses the she has written an interaction
she has written an interaction
OpenKnowledge discovery
OpenKnowledge discovery model that allows a group of
model that allows a group of
mechanism to search across the
mechanism to search across the people to access the
people to access the
network of other OpenKnowledge
network of other OpenKnowledge group spell database and agree on their
database and agree on their
subscribers.
subscribers. interaction own, new spell.
own, new spell.
Harry asks the It finds one on
discovery system Hermione’s list of Hermione’s
to seek interactions interaction models OK kernel
on “spell design”.
Network connecting
and passes
OpenKnowledge users
it to Harry.
via the Internet
Harry’s Ron’s
OK kernel OK kernel
11. Interacting
Harry advertises the fact that he is
Harry advertises the fact that he is
interested in taking the role of “spell
interested in taking the role of “spell
collator” in the interaction he got
collator” in the interaction he got
from Hermione.
from Hermione.
Agreement
Ron and Hermione offer to take
Ron and Hermione offer to take
part, each in the role of “spell
part, each in the role of “spell
advisor”.
advisor”.
Then Harry’s OK kernel
Then Harry’s OK kernel
group spell
coordinates the interaction with
coordinates the interaction with
interaction
Ron and Hermione’s kernels.
Ron and Hermione’s kernels.
Coordination
12. Re-using Interactions
Since Hermione made her
Since Hermione made her
interaction model public, then
interaction model public, then
Malfoy can discover itit(just like
Malfoy can discover (just like
Harry did) and use ititto help him
Harry did) and use to help him
design spells with Snape and
design spells with Snape and
Gilderoy.
Gilderoy.
If ititturns out to be really useful
If turns out to be really useful
then lots of other wizarding folk will
then lots of other wizarding folk will
group spell use itit– a bit like the way that
use – a bit like the way that
interaction popular Web pages get used.
popular Web pages get used.
13. Choosing Your Partners
What prevents Hermione agreeing
What prevents Hermione agreeing
to interact with Snape and Malfoy
to interact with Snape and Malfoy
(who doubtless want to cook up an
(who doubtless want to cook up an
evil spell)? Before she agrees, she
evil spell)? Before she agrees, she
Agreement? can check the OpenKnowledge
can check the OpenKnowledge
identifiers for the other people
identifiers for the other people
? playing roles in the interaction.
playing roles in the interaction.
To help her decide we invented a
To help her decide we invented a
way of sharing information about
way of sharing information about
interactions judged “good” or “bad”
interactions judged “good” or “bad”
– a bit like ranking pages on the
– a bit like ranking pages on the
Web.
Web.
14. Spotting Dubious Characters
What happens ififHarry turns bad and
What happens Harry turns bad and
starts misbehaving when interacting with
starts misbehaving when interacting with
others? How would we detect him?
others? How would we detect him?
That’s where popularity monitoring
That’s where popularity monitoring
services (fed with data on “good” and
services (fed with data on “good” and
“bad” interactions) can help, in a way
“bad” interactions) can help, in a way
similar to Web page popularity rating
similar to Web page popularity rating
services. These help you guess how
services. These help you guess how
good someone else might be given the
good someone else might be given the
experiences of others and are
experiences of others and are
approximate guides only
approximate guides only
but ififyou are particularly worried about
but you are particularly worried about
trust for some interaction you want to
trust for some interaction you want to
design then you can build more specific
design then you can build more specific
safeguards into your interaction model.
safeguards into your interaction model.
15. Different Names; Same Thing
When Hermione designed her
When Hermione designed her
Voldemort interaction model she used
interaction model she used
“Voldemort” to refer to the most evil
“Voldemort” to refer to the most evil
person in the wizarding world. Other
person in the wizarding world. Other
group spell people who might use her interaction
people who might use her interaction
interaction model will have different ways of
model will have different ways of
naming that person (and of naming
naming that person (and of naming
lots of other things, perhaps). That’s
lots of other things, perhaps). That’s
The Dark why we provide a mechanism for
why we provide a mechanism for
Lord guessing when the thing referred to in
guessing when the thing referred to in
an interaction is the same, even
an interaction is the same, even
though the names are different.
though the names are different.
Knowing the interaction makes these
Knowing the interaction makes these
guesses more likely to be accurate.
guesses more likely to be accurate.
“The Dark Lord” probably wouldn’t be
“The Dark Lord” probably wouldn’t be
He Who Must the same as “Voldemort” outside of
the same as “Voldemort” outside of
Not be Named wizarding world interactions.
wizarding world interactions.
16. Who Designs Interactions?
Do you have to be as disciplined as
Do you have to be as disciplined as
an Imperial Stormtrooper and as
an Imperial Stormtrooper and as
clever as Hermione to design an
clever as Hermione to design an
interaction model?
interaction model?
If you want to be able to build
If you want to be able to build
absolutely any interaction model then
absolutely any interaction model then
the answer is (gulp) “yes”.
the answer is (gulp) “yes”.
However…
However…
There are ways of translating from
There are ways of translating from Alternatively you could be like Harry
Alternatively you could be like Harry
styles of interaction description that
styles of interaction description that and simply use the interactions that
and simply use the interactions that
lots of people use for more specific
lots of people use for more specific Hermione has so cleverly written.
Hermione has so cleverly written.
tasks (such as business process
tasks (such as business process Then you can forget all about
Then you can forget all about
modelling). If you are one of those
modelling). If you are one of those designing them.
designing them.
kinds of people then you can use
kinds of people then you can use
your style of description and translate
your style of description and translate
into the OpenKnowledge language.
into the OpenKnowledge language.
17. Useful Things People Might
Do With All This Technology
OpenKnowledge does something
OpenKnowledge does something • Help scientists studying proteins
new: ititallows people to share
new: allows people to share to share methods of analysis and
interactions and, through those, share
interactions and, through those, share data collation so they can make
knowledge that isn’t easily accessed
knowledge that isn’t easily accessed new discoveries faster.
on the traditional Worldwide Web. It
on the traditional Worldwide Web. It • Give organisations that respond
will only become revolutionary,
will only become revolutionary, to emergencies ways of sharing
however, ififclever people invent
however, clever people invent information in a more
interactions that are really useful for
interactions that are really useful for opportunistic but still coordinated
lots of other people. Here are some
lots of other people. Here are some way.
of the ideas we’ve been developing.
of the ideas we’ve been developing. • Share pictures in ways that allow
groups of people to interact with
Perhaps you will have better ideas.
Perhaps you will have better ideas. their collective “library”.
The very best ideas might be
The very best ideas might be
(technically) quite simple. • Turn centralised business
(technically) quite simple.
models into distributed models.
www.openk.org supplies you with
www.openk.org supplies you with • Supply more flexible ways of
deeper discussion, examples and
deeper discussion, examples and bringing medical knowledge
free source code.
free source code. closer to points of care.