The Interactive Knowledge Stack (IKS) project developed a software architecture for semantic content management systems between 2009-2012 with funding from the European Union. The architecture was influenced by functional requirements, emerging technologies, and supporting distributed development teams. It used a modular, service-oriented design with OSGi bundles and RESTful interfaces to provide functions like content enhancement, entity management, and ontology reasoning.
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Interactive Knowledge Stack - A Software Architecture for Semantic Content Management Systems
1. Interactive Knowledge Stack
A Software Architecture for
Semantic
Content Management Systems
Fabian Christ
July 2, 2012
2. Interactive Knowledge Stack - IKS
• Started in January 2009 – ends in December 2012
• Funded in part by a €6.58m grant from the European Union
• Consortium of 7 research and 6 industrial partners
Fabian Christ : IKS - A Software Architecture for Semantic CMS 2
3. IKS Project Goals
• A software architecture for semantically enabled
content management systems.
SCMS -
Semantic Content Management System
Semantic User Interface
Content Knowledge
Presentation &
User Interface Semantic User Interaction Interaction Service Layer
RESTful Interface
Content Access Knowledge Access
Apache Apache Apache Apache
Knowledge
Stanbol Stanbol Stanbol Stanbol
Extraction Pipelines Ontology Manager
Enhancer EntityHub Reasoners
Semantic Lifting
Knowledge Administration
Content Administration
Content
Apache Apache
Management Apache
Stanbol Stanbol
Stanbol Rules
ContentHub FactStore
Stanbol
Enhancement
Reasoning Engines
Knowledge Apache
Representation Stanbol
CMS Adapter Component Layer
Content Knowledge and Reasoning
Data Model Models
Content Knowledge
Persistence
Repository Repository
• An open-source community to bring semantic technologies
to content management system platforms.
Fabian Christ : IKS - A Software Architecture for Semantic CMS 3
4. IKS Features
• User Interface Library
& Widgets
• Content Lorem
Hans
Enhancement dolor
• Entity
Linked
Management
Data
Cloud
• Ontology Management & Reasoning
• Indexing & Search
Fabian Christ : IKS - A Software Architecture for Semantic CMS 4
5. Short Demo of IKS 7.0
Content Enhancement Demo
with Apache Stanbol
and a VIE-based user interface.
IKS Demo Server
http://dev.iks-project.eu
Fabian Christ : IKS - A Software Architecture for Semantic CMS 5
6. Influence Factors
on the IKS Software Architecture
The design of the IKS software architecture
is influenced by three factors:
Functionality • Implement functional requirements
• Use state-of-the-art web technologies
Technology
• Support semantic web standards
• Support distributed development
People
where people can work independently
Fabian Christ : IKS - A Software Architecture for Semantic CMS 6
7. What is Semantic CMS? Functionality
Traditional CMS Semantic CMS
Atomic Unit • Document • Entity
Meta Data as • Strings • Defined Entity
Types
• Linked Entities
Search for • Strings • Entities and their
relations
Manage • Documents and • Entities and their
their workflow domain model
Fabian Christ : IKS - A Software Architecture for Semantic CMS 7
9. Functional Layers from the
Description of Work Functionality
Presentation and
Interaction
Semantic Lifting
Knowledge
Representation
and Reasoning
Persistence
Fabian Christ : IKS - A Software Architecture for Semantic CMS 9
10. Content Management
Functionality Functionality
Content
User Interface
Content Access
Content Administration
Content
Management
Content
Data Model
Content
Repository
Fabian Christ : IKS - A Software Architecture for Semantic CMS 10
12. Design IKS Functionality
Functional Building Blocks
Semantic User Interface
Content Knowledge
Presentation &
User Interface Semantic User Interaction Interaction
Content Access Knowledge Access
Knowledge
Extraction Pipelines
Semantic Lifting
Knowledge Administration
Content Administration
Content
Management
Reasoning
Knowledge
Representation
Content Knowledge and Reasoning
Data Model Models
Content Knowledge
Persistence
Repository Repository
Fabian Christ : IKS - A Software Architecture for Semantic CMS 12
13. Influence Factors
on the IKS Software Architecture
The design of the IKS software architecture
is influenced by three factors:
• Content enhancement, entity management,
Functionality
ontology management, reasoning, …
• Use state-of-the-art web technologies
Technology
• Support semantic web standards
• Support distributed development
People
where people can work independently
Fabian Christ : IKS - A Software Architecture for Semantic CMS 13
14. Bottom-Up
Technology Development Technology
IKS
Alpha
INTERPRET KReS Persistence
Bottom-Up
Store
FISE
Fabian Christ : IKS - A Software Architecture for Semantic CMS 14
15. Do Not Replace –
But Extend Technology
• No need to replace existing systems for content management
• IKS components offer service oriented integration
Extend by Using Semantic Services
IKS
Traditional
Technology
CMS
Stack
Fabian Christ : IKS - A Software Architecture for Semantic CMS 15
16. Service Orientation Technology
• The IKS offers RESTful web service interfaces
• Each feature is available via a simple HTTP request
Enhancer Entity Manager
Ontology Manager Open Linked Data
IKS
Reasoner
Store Search
Fabian Christ : IKS - A Software Architecture for Semantic CMS 16
17. RESTful Interfaces Technology
• “Representational State Transfer (REST) [is an] architectural
style for distributed hypermedia systems.”
Key Aspects
• Stateless services
• Resource oriented organization of data and services
Resource
/enhancer
Client IKS
Stateless
Service Call
Source: Roy Thomas Fielding, Architectural Styles and the Design of Network-based Software
Architectures, PhD Thesis, http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm, 2000
Fabian Christ : IKS - A Software Architecture for Semantic CMS 17
18. Representation
of Resources Technology
• REST applied to HTTP
• Each resource has an URI
• By accessing the URI the resource can be retrieved in different
representations (formats)
GET /enhancer
Host: localhost:8080 HTML
Accept: text/html
GET /enhancer
Host: localhost:8080
Accept: application/json
JSON
Fabian Christ : IKS - A Software Architecture for Semantic CMS 18
19. RESTful Integration Technology
• RESTful interfaces make integration easy
• Required technology for sending HTTP requests is available in
any traditional CMS
• Support for standards like the Resource Description Framework
(RDF), JSON for Linked Data (JSON-LD)
HTTP
Request
RESTful API
IKS
Traditional
HTTP Technology
CMS
Response Stack
as RDF,
JSON-LD
Fabian Christ : IKS - A Software Architecture for Semantic CMS 19
20. Influence Factors
on the IKS Software Architecture
The design of the IKS software architecture
is influenced by three factors:
• Content enhancement, entity management,
Functionality
ontology management, reasoning, …
• RESTful HTTP interfaces
Technology
• Standards like RDF, JSON-LD, …
• Support distributed development
People
where people can work independently
Fabian Christ : IKS - A Software Architecture for Semantic CMS 20
22. OSGi for Flexibility People
• IKS components are OSGi bundles
REST API R
Export »bundle«
»bundle« E
Enhancement
Enhancer
Engine
Team 1 Import
Team 2
R R R
»bundle«
»bundle« »bundle«
Entityhub Contenthub Ontology
Manager
Team 3 Team 4 Team 5
Fabian Christ : IKS - A Software Architecture for Semantic CMS 22
23. Common Basis People
R R R
»bundle«
»bundle« »bundle«
Entityhub Contenthub Ontology
Manager
Dependency
Management
E E E
»bundle« »bundle« »bundle«
Library A Library B Library C
Fabian Christ : IKS - A Software Architecture for Semantic CMS 23
24. Different Release
Configurations People
R R R
»bundle« »bundle« »bundle«
IKS
Variant 1 Ontology Reasoner Rules
Manager
R R R
»bundle« »bundle« »bundle«
IKS
Variant 2 Enhancer Entityhub Contenthub
Fabian Christ : IKS - A Software Architecture for Semantic CMS 24
25. Summary on Influence Factors
The IKS software architecture for
semantic content management systems supports
• Content enhancement, entity management,
Functionality
ontology management, reasoning, …
• RESTful HTTP interfaces
Technology
• Standards like RDF, JSON-LD, …
• OSGi bundles for distributed development
People
• OSGi bundlists for releases packaging
Fabian Christ : IKS - A Software Architecture for Semantic CMS 25
26. IKS Software Architecture
User Interface Layer
VIE
VIE
Widgets
RESTful Service Layer
Apache Apache Apache Apache Apache
Stanbol Stanbol Stanbol Stanbol Stanbol
Enhancer Reasoners Ontology Manager EntityHub FactStore
Apache
Apache
Stanbol
Stanbol Rules
ContentHub
Stanbol
Enhancement
Engines Apache
Stanbol
CMS Adapter
Common
Bundles
Library A Library B ...
Bundle Layer
Fabian Christ : IKS - A Software Architecture for Semantic CMS 26
27. Integration Patterns at Service Level
• Search based on enhanced content
1. Apache Stanbol Entityhub to specify entities of interest
2. Apache Stanbol Enhancer to retrieve metadata for entities
3. Apache Stanbol Contenthub storage service to store content
plus enhancements
4. Apache Stanbol Contenthub keyword search service to search
for previously stored content and enhancements
Client
3. + 4.
1. 2.
R R R
»bundle« »bundle« »bundle«
Entityhub Enhancer Contenthub
Fabian Christ : IKS - A Software Architecture for Semantic CMS 27
28. Iterative Development
Top-Down
Analysis
Requirements
Architecture
IKS 3.0, 4.0, …, 7.0
IKS
Middle- IKS
8.0
Out Alpha
INTERPRET KReS Persistence
Bottom-Up
Store
FISE
Fabian Christ : IKS - A Software Architecture for Semantic CMS 28
29. Lessons Learned
Pros Cons
• Each partner was able to • Less integration at
contribute his functionality component level
• No central lead • No shared storage
• Ship stable configurations • Sometimes duplicate
• Allow lab mode for functionalities
components • Collection of features
• Adopters select instead of a consistent
functionality they like to stack
use
• Modularity big plus from
industrial perspective
• Impact
Fabian Christ : IKS - A Software Architecture for Semantic CMS 29
30. Thank you
for your attention.
Follow me @fctwitt
s-lab – Software Quality Lab
Universität Paderborn
Zukunftsmeile 1
33102 Paderborn
Tel.: (05251) 60 5390 / 5391
http://s-lab.upb.de
info@s-lab.upb.de
Fabian Christ : IKS - A Software Architecture for Semantic CMS 30