際際滷

際際滷Share a Scribd company logo
Interactive Knowledge Stack

A Software Architecture for
Semantic
Content Management Systems

 Fabian Christ
 July 2, 2012
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
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
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
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
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
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
Top-Down Requirements
Top-Down
                                                                    Functionality



                                                  Analysis
             Requirements
                                                Architecture



                                    IKS
                                   Alpha




   Fabian Christ : IKS - A Software Architecture for Semantic CMS                   8
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
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
Knowledge Management
 Functionality                                                         Functionality


                                                                        Knowledge
                                                                                                                        Presentation &
                                                                 Semantic User Interaction                                Interaction


                                                                    Knowledge Access


                                                                       Knowledge
                                                                   Extraction Pipelines
                                                                                                                        Semantic Lifting




                                                                                             Knowledge Administration
                                                                        Reasoning
                                                                                                                          Knowledge
                                                                                                                        Representation
                                                                        Knowledge                                       and Reasoning
                                                                          Models

                                                                        Knowledge
                                                                                                                          Persistence
                                                                        Repository


Fabian Christ : IKS - A Software Architecture for Semantic CMS                                                                             11
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
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
Bottom-Up
       Technology Development                                          Technology




                                     IKS
                                    Alpha



                INTERPRET                          KReS              Persistence
Bottom-Up




                                                                        Store


                       FISE


    Fabian Christ : IKS - A Software Architecture for Semantic CMS                  14
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
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
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
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
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
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
Development Team                                                People


  Distributed
         Germany, Turkey, Italy, Austria,
          Swiss, France, (Finland)

  Different Interests
         Researchers want to follow their
          own research topics
         Industrial partners want
          working software                                                Map 息 2009 Ezilon.com
         No central lead

  Know how
         Java, JavaScript, Web technologies
         Semantic web standards

Fabian Christ : IKS - A Software Architecture for Semantic CMS                                    21
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
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
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
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
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
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
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
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
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

More Related Content

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
  • 8. Top-Down Requirements Top-Down Functionality Analysis Requirements Architecture IKS Alpha Fabian Christ : IKS - A Software Architecture for Semantic CMS 8
  • 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
  • 11. Knowledge Management Functionality Functionality Knowledge Presentation & Semantic User Interaction Interaction Knowledge Access Knowledge Extraction Pipelines Semantic Lifting Knowledge Administration Reasoning Knowledge Representation Knowledge and Reasoning Models Knowledge Persistence Repository Fabian Christ : IKS - A Software Architecture for Semantic CMS 11
  • 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
  • 21. Development Team People Distributed Germany, Turkey, Italy, Austria, Swiss, France, (Finland) Different Interests Researchers want to follow their own research topics Industrial partners want working software Map 息 2009 Ezilon.com No central lead Know how Java, JavaScript, Web technologies Semantic web standards Fabian Christ : IKS - A Software Architecture for Semantic CMS 21
  • 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