SlideShare a Scribd company logo
Introduction
                      Model
                Conclusions




A Model for Open Semantic Hyperwikis

                   Philip Boulain

     Department of Electronics and Computer Science
              University of Southampton


             15th September 2009




               Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                             Model
                       Conclusions


Outline


  1   Introduction
         Context

  2   Model
        Nodes
        Functional

  3   Conclusions
        Composition
        Summary



                      Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                             Model     Context
                       Conclusions


Outline


  1   Introduction
         Context

  2   Model
        Nodes
        Functional

  3   Conclusions
        Composition
        Summary



                      Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                Model     Context
                          Conclusions


Broader project



     Looking at the potentially beneficial relationships between
         Open Hypermedia
              Interconnected documents
         Semantic Web
              Interconnected databases
         Wiki Wiki Web
              Communal editing systems




                         Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                              Model     Context
                        Conclusions


Hypermedia


    Long-standing field of research.
    How can documents expand beyond limitations of paper?
         Cross-referencing (hyperlinks).
         Sharing and re-use (composition and transclusion).
    “Essential feature” is “the process of tying two items
    together” (linking).



    V. Bush.
    As We May Think.
    The Atlantic Monthly, 176:101–108, Jul 1945.


                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                             Model     Context
                       Conclusions


Semantic Web

    World Wide Web is a distributed set of interlinked
    documents.
    The Semantic Web is distributed set of interlinked data.
    Discover and combine data from disparate sources as one
    may discover and browse web pages.
    Core technology is the Resource Description Framework
    (RDF).
    RDF describes things using triples: subject has predicate
    value object.
    Subjects, predicates, and non-literal objects named using
    URIs.


                      Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                  Model     Context
                            Conclusions


Wiki Wiki Web


         “A collection of Web pages which can be edited by anyone,
         at any time, from anywhere.”1
         Users can create pages with much of the structure and
         styling of HTML web pages.
             But usually in a bespoke ad-hoc markup.
         Linking is web-style, like <a href=""></a>.
             But some wikis offer the ability to show backlinks.
             They can only do this because they are not distributed.
             The wiki system is aware of the entire document space.




    1
        http://c2.com/cgi/wiki?WikiGettingStartedFaq
                           Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                       Nodes
                             Model
                                       Functional
                       Conclusions


Outline


  1   Introduction
         Context

  2   Model
        Nodes
        Functional

  3   Conclusions
        Composition
        Summary



                      Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Nodes



     Page, article, component. . . ‘node’ is domain-agnostic.
     The fundamental building block of a wiki.
     No sub-node addressing in RDF!

 Goal
 Things we want to address need URIs, not (URI,
 within-specifier) pairings.




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                         Nodes
                               Model
                                         Functional
                         Conclusions


Anatomy



                              Node title
                  DOM tree text node
     transclude
     o_ _ _ _ _
                  → native transclusion                                  link
                                                                                /
                        DOM element
                        element contents
                  attribute "value"




                        Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                            Nodes
                                  Model
                                            Functional
                            Conclusions


Links


  Example
  I would call [link type=Likes to=Perl Perl] an
  [em elegant] language.

        Links are nodes.
        Links also get embedded in nodes.
            Familiar to edit.
            Edit-time (native) transclusion of the anchor.
        Attributes are our primitive base case.




                           Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                                Nodes
                                    Model
                                                Functional
                              Conclusions


Phil Likes Perl

                Phil
        I would call
        → Phil.anchor.1
                                                        Phil.anchor.1
        an                                _ _ _ _/
                                                      Perl
             em
             elegant
        language.



                 Perl                                       Phil.link.1
        (interesting facts)           o              type      Likes
                                                     source Phil.anchor.1
        syntax    elegant                            target    Perl

                          Philip Boulain        A Model for Open Semantic Hyperwikis
Introduction
                                          Nodes
                                Model
                                          Functional
                          Conclusions


RDF Mapping



 Goal
 The graph of typed links should be isomorphic to a useful RDF
 graph.

     Typed links between pages are relations between them.
         (Phil, Likes, Perl)
     Attributes of a page are statements about it.
         (Perl, syntax, elegant)




                         Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                         Nodes
                               Model
                                         Functional
                         Conclusions


Identity



      Every node gets a URI, namespaced within the wiki.
      ‘The node Perl’ and ‘Perl the programming language’ are
      not the same!
      The node is http://wiki.example.org/node/Perl.
      But our statements are about
      http://wiki.example.org/resource/Perl.
           Might be owl:sameAs some external Perl.




                        Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Meta-identity



     So how do we refer to the node itself within the wiki?
     Perl.meta.
     It is http://wiki.example.org/node/Perl/meta
     It makes statements about
     http://wiki.example.org/node/Perl
     There is effectively a naming offset.




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Representations


     node URIs get representation predicates.
     (wiki:node/Perl, representation,
     http://wiki.example.org/content/Perl.html)
     ‘303 convention’ defines retrieval of . . . node/Perl.
         RDF requests go to data about the URI: one meta-level
         higher.
         Otherwise, normal content-negotiation to content.
     Can always be explicit if you want RDF-formatted content.
     Non-RDF resource requests are Not Found: we can’t
     represent Perl itself!



                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                         Nodes
                               Model
                                         Functional
                         Conclusions


Versioning



     Node contents and attributes are versioned.
     Links are nodes, so they’re versioned too.
     Link embedding/separation and edit-time transclusion
     mean one edit may change multiple nodes.
     Distinct identities for things like ‘version 3 of text about
     Perl’, not ‘version 3 of Perl’.




                        Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Transclusion




     Transclusion link subtype.
     Replaces display of source anchor content with target
     content.
     No part-of relation implied: content operation.
     Link embedding/separation leads to edit-time transclusion.




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Query endpoints




     source and target have a range of node identifiers.
     Not sufficient to represent arbitrary endpoint functions.
     sourceQuery and targetQuery have a range of embedded
     queries.




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Generic links




     CONTAINS query, which matches on document content.
     Implies an anchor at the point of the match when a source.
     Matches only the first instance, unless transcluding.




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Parametric nodes



     Generalisation of ‘templates’, which are macro
     pre-processing.
     Instantiate a page with arbitrary key/value pairs.
     Range of our links is ‘identifiers’, so parameters are part of
     the identity of the instantiation.
     There is a whole multidimensional space of possible
     instances, and each one is a first-class object.




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                    Nodes
                          Model
                                    Functional
                    Conclusions


Parametric node


                  Template.GoodNode
                   This node is featured
                   in topic
                         param
                         topic
                   in particular because
                   of its
                         param
                         virtue




                   Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                            Nodes
                                 Model
                                            Functional
                           Conclusions


Instance space

                                           virtue
               _                                                                  /


                    Template.GoodNode               Template.GoodNode
                      {topic→science,                 {topic→science,
                     virtue→citations}               virtue→grammar}

       topic

                    Template.GoodNode               Template.GoodNode
                         {topic→art,                     {topic→art,
                     virtue→citations}               virtue→grammar}


               


                          Philip Boulain    A Model for Open Semantic Hyperwikis
Introduction
                                        Nodes
                              Model
                                        Functional
                        Conclusions


Adaptive hypermedia




     Deliberately couple content with identity
     alternateNode for “different node about same thing”
     Annotate with information to select upon, e.g. detailLevel
     Alternation link subtype selects only one target.




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                       Composition
                             Model
                                       Summary
                       Conclusions


Outline


  1   Introduction
         Context

  2   Model
        Nodes
        Functional

  3   Conclusions
        Composition
        Summary



                      Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                    Composition
                          Model
                                    Summary
                    Conclusions


Desired composition




                         Haskell
             A functional language with lazy
             evaluation




                   Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                         Composition
                               Model
                                         Summary
                         Conclusions


Transclusion of parametric node



                                         FuncTempl {eval→lazy}
                                           A functional lan-
           Haskell                         guage with
                               _ _ _/
      (embedded link)                           param
                                                eval
                                           evaluation




                        Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                        Composition
                              Model
                                        Summary
                        Conclusions


Composite document (multiple transclusions)



             Haskell
                                              FuncTempl.Pre
        (embedded link 1)           _ _ _/   A functional lan-
        lazy
                                             guage with
        (embedded link 2)
                                    NN
                                       NN
                                          NN
                                            
                                              FuncTempl.Post
                                             evaluation




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Introduction
                                           Composition
                               Model
                                           Summary
                         Conclusions


Composite/‘fat’ link (multiple endpoints)



          Haskell
                                                           FuncTempl.Haskell
    (embedded       an- _ _ _ _ _ _ _ _ _
                                                            (multiple targets)
    chor)                                 h h                               
                                     h h          r
                                 h h            r                           
                             h h              r
                         h h                r
                    th h                  r                                 
                                       xr                                   
 A functional language with              lazy                      evaluation




                        Philip Boulain     A Model for Open Semantic Hyperwikis
Introduction
                                         Composition
                               Model
                                         Summary
                         Conclusions


Open Semantic Hyperwiki Model


     Defines a wiki with open hypermedia features.
         First-class links, with edit-time embedding.
         Transclusion, including while editing.
         Generic and functional links.
         Parametric nodes and links.
         Full versioning, including links.
     Defines how this operates as a semantic wiki.
         From hyperlinks to RDF relations.
     Prototyped in Weerkat: a highly flexible and modular wiki
     system.




                        Philip Boulain   A Model for Open Semantic Hyperwikis
Thanks for listening




  Questions?




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Thanks for listening




  Extra slides!




                       Philip Boulain   A Model for Open Semantic Hyperwikis
Version identity


  Semantic consistency. Content version is not resource version.
             All revisions of the Perl node are still about the
             same Perl.
  Navigational identity. Each version has distinct identity for
               linking. Version 3 of the Perl node is Perl3 , not
               Perl.meta3 .
  Semantic identity. Each version has a distinct URI. (Perl3 .meta,
              writtenBy, Phil) means “Phil wrote version 3 of the
              content for the Perl node”.




                          Philip Boulain   A Model for Open Semantic Hyperwikis
Version identity, cont.


   Node title     Content                       URI                     Represents
   Perl           Text about Perl               Perl                    Perl itself
   Perl3          v3 text re: Perl              Perl                    Perl itself
   Perl.meta      Text re: t. re: Perl          Perl/meta               Text re: Perl
   Perl.meta4     v4 t. re: t. re: Perl         Perl/meta               Text re: Perl
   Perl3 .meta    T. re: v3 t. re: Perl         Perl;3/meta             v3 t. re: Perl
   Perl3 .meta4   v4 t. re: v3 t. re: Perl      Perl;3/meta             v3 t. re: Perl


      Allow version on all non-namespace parts.
      Drop the last version to make a URI.



                          Philip Boulain   A Model for Open Semantic Hyperwikis
Instance identity



      Are two different parameterisations separate SemWeb
      resources?
      It’s exactly the same as versioning.
          Parameter substitution is a content operation, so the tail
          parameters don’t change semantic identity.
          But Perl {bar→baz}.meta represents the Perl {bar→baz}
          instance.




                         Philip Boulain   A Model for Open Semantic Hyperwikis
Parametric links


                     Template.Discussions
                 type    discussion
                 source param(node).meta
                 target  Discuss.param(node)


     If parameters can fill in attribute values, we get parametric
     and functional links.
     What about a link where both source and target are free
     variables?



                       Philip Boulain   A Model for Open Semantic Hyperwikis
Eager vs. lazy



     When does a parametric instance exist?
     Parametric links can potentially affect the hyperdocument
     outside of ther immediate content and relations.
     Eager: all instances considered to exist.
     Lazy: instances exist only if referred to.
     Which is most consistent and useful?




                        Philip Boulain   A Model for Open Semantic Hyperwikis
Eager vs. lazy, cont.


      Lazy: works just like templates. You have to ‘link to’ a
      parametric link with some parameters to make it work.
      Eager: works like free-variable rules. More consistent, and
      more powerful.
      Contrary to Semantic MediaWiki, which inherits
      templates-as-macro-processing!
      Template-macroing links is bad ontology modelling: use
      classes.
          A ‘Country’ template might have a ‘capital’ parameter.
          But templates don’t have capitals!




                        Philip Boulain   A Model for Open Semantic Hyperwikis

More Related Content

PPT
C&I 306 Powerpoint Self Presentation 9 19 09
DOCX
Estrategias de enseñanza online para el aprendizaj profundo
PPT
How to do more with iPhone Photography - TBEX 2014
PPT
Dit Koningskind, Friesland 29 mei 2010
PDF
Rd 025-2008.pdf- certificacion software
PDF
Take Better Pictures with your iPhone [AWBU 2014]
PDF
Frente amplio plan gobierno 2016 - Veronica Mendoza
C&I 306 Powerpoint Self Presentation 9 19 09
Estrategias de enseñanza online para el aprendizaj profundo
How to do more with iPhone Photography - TBEX 2014
Dit Koningskind, Friesland 29 mei 2010
Rd 025-2008.pdf- certificacion software
Take Better Pictures with your iPhone [AWBU 2014]
Frente amplio plan gobierno 2016 - Veronica Mendoza

Similar to A Model for Open Semantic Hyperwikis (20)

PPT
UMBEL: Subject Concepts Layer for the Web
PDF
A Controlled Natural Language Interface for Semantic MediaWiki
PPTX
Spring fundamentals
PPTX
From ontology to wiki
PDF
Representing Translations on the Semantic Web
PPT
The Semantic Web: status and prospects
PPTX
Semantic Web - Ontologies
PPTX
Bringing It All Together: Mapping Continuing Resources Vocabularies for Linke...
PDF
OntoWiki Application Framework & Erfurt API
PDF
Pal gov.tutorial2.session7.owl
PDF
Pal gov.tutorial2.session7
PDF
NIF - NLP Interchange Format
PPT
UMBEL Semantic Web Services
PDF
Enriching EMF Models with Scala (quick overview)
ODP
Processing ODF
ODP
Processing OpenDocument Format
ODP
NIF - Version 1.0 - 2011/10/23
PDF
Adobe Photoshop Lightroom Classic Crack Free Download
PDF
Adobe Photoshop 2025 Free crack Download
PDF
The Open-Closed Principle - Part 2 - The Contemporary Version - An Introduction
UMBEL: Subject Concepts Layer for the Web
A Controlled Natural Language Interface for Semantic MediaWiki
Spring fundamentals
From ontology to wiki
Representing Translations on the Semantic Web
The Semantic Web: status and prospects
Semantic Web - Ontologies
Bringing It All Together: Mapping Continuing Resources Vocabularies for Linke...
OntoWiki Application Framework & Erfurt API
Pal gov.tutorial2.session7.owl
Pal gov.tutorial2.session7
NIF - NLP Interchange Format
UMBEL Semantic Web Services
Enriching EMF Models with Scala (quick overview)
Processing ODF
Processing OpenDocument Format
NIF - Version 1.0 - 2011/10/23
Adobe Photoshop Lightroom Classic Crack Free Download
Adobe Photoshop 2025 Free crack Download
The Open-Closed Principle - Part 2 - The Contemporary Version - An Introduction
Ad

Recently uploaded (20)

PPTX
TLE Review Electricity (Electricity).pptx
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Web App vs Mobile App What Should You Build First.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
A Presentation on Artificial Intelligence
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Mushroom cultivation and it's methods.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Encapsulation theory and applications.pdf
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Approach and Philosophy of On baking technology
TLE Review Electricity (Electricity).pptx
A comparative study of natural language inference in Swahili using monolingua...
Web App vs Mobile App What Should You Build First.pdf
Programs and apps: productivity, graphics, security and other tools
A Presentation on Artificial Intelligence
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
SOPHOS-XG Firewall Administrator PPT.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Hindi spoken digit analysis for native and non-native speakers
Mushroom cultivation and it's methods.pdf
Zenith AI: Advanced Artificial Intelligence
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
A comparative analysis of optical character recognition models for extracting...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Group 1 Presentation -Planning and Decision Making .pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Encapsulation theory and applications.pdf
Assigned Numbers - 2025 - Bluetooth® Document
OMC Textile Division Presentation 2021.pptx
Approach and Philosophy of On baking technology
Ad

A Model for Open Semantic Hyperwikis

  • 1. Introduction Model Conclusions A Model for Open Semantic Hyperwikis Philip Boulain Department of Electronics and Computer Science University of Southampton 15th September 2009 Philip Boulain A Model for Open Semantic Hyperwikis
  • 2. Introduction Model Conclusions Outline 1 Introduction Context 2 Model Nodes Functional 3 Conclusions Composition Summary Philip Boulain A Model for Open Semantic Hyperwikis
  • 3. Introduction Model Context Conclusions Outline 1 Introduction Context 2 Model Nodes Functional 3 Conclusions Composition Summary Philip Boulain A Model for Open Semantic Hyperwikis
  • 4. Introduction Model Context Conclusions Broader project Looking at the potentially beneficial relationships between Open Hypermedia Interconnected documents Semantic Web Interconnected databases Wiki Wiki Web Communal editing systems Philip Boulain A Model for Open Semantic Hyperwikis
  • 5. Introduction Model Context Conclusions Hypermedia Long-standing field of research. How can documents expand beyond limitations of paper? Cross-referencing (hyperlinks). Sharing and re-use (composition and transclusion). “Essential feature” is “the process of tying two items together” (linking). V. Bush. As We May Think. The Atlantic Monthly, 176:101–108, Jul 1945. Philip Boulain A Model for Open Semantic Hyperwikis
  • 6. Introduction Model Context Conclusions Semantic Web World Wide Web is a distributed set of interlinked documents. The Semantic Web is distributed set of interlinked data. Discover and combine data from disparate sources as one may discover and browse web pages. Core technology is the Resource Description Framework (RDF). RDF describes things using triples: subject has predicate value object. Subjects, predicates, and non-literal objects named using URIs. Philip Boulain A Model for Open Semantic Hyperwikis
  • 7. Introduction Model Context Conclusions Wiki Wiki Web “A collection of Web pages which can be edited by anyone, at any time, from anywhere.”1 Users can create pages with much of the structure and styling of HTML web pages. But usually in a bespoke ad-hoc markup. Linking is web-style, like <a href=""></a>. But some wikis offer the ability to show backlinks. They can only do this because they are not distributed. The wiki system is aware of the entire document space. 1 http://c2.com/cgi/wiki?WikiGettingStartedFaq Philip Boulain A Model for Open Semantic Hyperwikis
  • 8. Introduction Nodes Model Functional Conclusions Outline 1 Introduction Context 2 Model Nodes Functional 3 Conclusions Composition Summary Philip Boulain A Model for Open Semantic Hyperwikis
  • 9. Introduction Nodes Model Functional Conclusions Nodes Page, article, component. . . ‘node’ is domain-agnostic. The fundamental building block of a wiki. No sub-node addressing in RDF! Goal Things we want to address need URIs, not (URI, within-specifier) pairings. Philip Boulain A Model for Open Semantic Hyperwikis
  • 10. Introduction Nodes Model Functional Conclusions Anatomy Node title DOM tree text node transclude o_ _ _ _ _ → native transclusion link / DOM element element contents attribute "value" Philip Boulain A Model for Open Semantic Hyperwikis
  • 11. Introduction Nodes Model Functional Conclusions Links Example I would call [link type=Likes to=Perl Perl] an [em elegant] language. Links are nodes. Links also get embedded in nodes. Familiar to edit. Edit-time (native) transclusion of the anchor. Attributes are our primitive base case. Philip Boulain A Model for Open Semantic Hyperwikis
  • 12. Introduction Nodes Model Functional Conclusions Phil Likes Perl Phil I would call → Phil.anchor.1 Phil.anchor.1 an _ _ _ _/ Perl em elegant language. Perl Phil.link.1 (interesting facts) o type Likes source Phil.anchor.1 syntax elegant target Perl Philip Boulain A Model for Open Semantic Hyperwikis
  • 13. Introduction Nodes Model Functional Conclusions RDF Mapping Goal The graph of typed links should be isomorphic to a useful RDF graph. Typed links between pages are relations between them. (Phil, Likes, Perl) Attributes of a page are statements about it. (Perl, syntax, elegant) Philip Boulain A Model for Open Semantic Hyperwikis
  • 14. Introduction Nodes Model Functional Conclusions Identity Every node gets a URI, namespaced within the wiki. ‘The node Perl’ and ‘Perl the programming language’ are not the same! The node is http://wiki.example.org/node/Perl. But our statements are about http://wiki.example.org/resource/Perl. Might be owl:sameAs some external Perl. Philip Boulain A Model for Open Semantic Hyperwikis
  • 15. Introduction Nodes Model Functional Conclusions Meta-identity So how do we refer to the node itself within the wiki? Perl.meta. It is http://wiki.example.org/node/Perl/meta It makes statements about http://wiki.example.org/node/Perl There is effectively a naming offset. Philip Boulain A Model for Open Semantic Hyperwikis
  • 16. Introduction Nodes Model Functional Conclusions Representations node URIs get representation predicates. (wiki:node/Perl, representation, http://wiki.example.org/content/Perl.html) ‘303 convention’ defines retrieval of . . . node/Perl. RDF requests go to data about the URI: one meta-level higher. Otherwise, normal content-negotiation to content. Can always be explicit if you want RDF-formatted content. Non-RDF resource requests are Not Found: we can’t represent Perl itself! Philip Boulain A Model for Open Semantic Hyperwikis
  • 17. Introduction Nodes Model Functional Conclusions Versioning Node contents and attributes are versioned. Links are nodes, so they’re versioned too. Link embedding/separation and edit-time transclusion mean one edit may change multiple nodes. Distinct identities for things like ‘version 3 of text about Perl’, not ‘version 3 of Perl’. Philip Boulain A Model for Open Semantic Hyperwikis
  • 18. Introduction Nodes Model Functional Conclusions Transclusion Transclusion link subtype. Replaces display of source anchor content with target content. No part-of relation implied: content operation. Link embedding/separation leads to edit-time transclusion. Philip Boulain A Model for Open Semantic Hyperwikis
  • 19. Introduction Nodes Model Functional Conclusions Query endpoints source and target have a range of node identifiers. Not sufficient to represent arbitrary endpoint functions. sourceQuery and targetQuery have a range of embedded queries. Philip Boulain A Model for Open Semantic Hyperwikis
  • 20. Introduction Nodes Model Functional Conclusions Generic links CONTAINS query, which matches on document content. Implies an anchor at the point of the match when a source. Matches only the first instance, unless transcluding. Philip Boulain A Model for Open Semantic Hyperwikis
  • 21. Introduction Nodes Model Functional Conclusions Parametric nodes Generalisation of ‘templates’, which are macro pre-processing. Instantiate a page with arbitrary key/value pairs. Range of our links is ‘identifiers’, so parameters are part of the identity of the instantiation. There is a whole multidimensional space of possible instances, and each one is a first-class object. Philip Boulain A Model for Open Semantic Hyperwikis
  • 22. Introduction Nodes Model Functional Conclusions Parametric node Template.GoodNode This node is featured in topic param topic in particular because of its param virtue Philip Boulain A Model for Open Semantic Hyperwikis
  • 23. Introduction Nodes Model Functional Conclusions Instance space virtue _ / Template.GoodNode Template.GoodNode {topic→science, {topic→science, virtue→citations} virtue→grammar} topic Template.GoodNode Template.GoodNode {topic→art, {topic→art, virtue→citations} virtue→grammar} Philip Boulain A Model for Open Semantic Hyperwikis
  • 24. Introduction Nodes Model Functional Conclusions Adaptive hypermedia Deliberately couple content with identity alternateNode for “different node about same thing” Annotate with information to select upon, e.g. detailLevel Alternation link subtype selects only one target. Philip Boulain A Model for Open Semantic Hyperwikis
  • 25. Introduction Composition Model Summary Conclusions Outline 1 Introduction Context 2 Model Nodes Functional 3 Conclusions Composition Summary Philip Boulain A Model for Open Semantic Hyperwikis
  • 26. Introduction Composition Model Summary Conclusions Desired composition Haskell A functional language with lazy evaluation Philip Boulain A Model for Open Semantic Hyperwikis
  • 27. Introduction Composition Model Summary Conclusions Transclusion of parametric node FuncTempl {eval→lazy} A functional lan- Haskell guage with _ _ _/ (embedded link) param eval evaluation Philip Boulain A Model for Open Semantic Hyperwikis
  • 28. Introduction Composition Model Summary Conclusions Composite document (multiple transclusions) Haskell FuncTempl.Pre (embedded link 1) _ _ _/ A functional lan- lazy guage with (embedded link 2) NN NN NN FuncTempl.Post evaluation Philip Boulain A Model for Open Semantic Hyperwikis
  • 29. Introduction Composition Model Summary Conclusions Composite/‘fat’ link (multiple endpoints) Haskell FuncTempl.Haskell (embedded an- _ _ _ _ _ _ _ _ _ (multiple targets) chor) h h h h r h h r h h r h h r th h r xr A functional language with lazy evaluation Philip Boulain A Model for Open Semantic Hyperwikis
  • 30. Introduction Composition Model Summary Conclusions Open Semantic Hyperwiki Model Defines a wiki with open hypermedia features. First-class links, with edit-time embedding. Transclusion, including while editing. Generic and functional links. Parametric nodes and links. Full versioning, including links. Defines how this operates as a semantic wiki. From hyperlinks to RDF relations. Prototyped in Weerkat: a highly flexible and modular wiki system. Philip Boulain A Model for Open Semantic Hyperwikis
  • 31. Thanks for listening Questions? Philip Boulain A Model for Open Semantic Hyperwikis
  • 32. Thanks for listening Extra slides! Philip Boulain A Model for Open Semantic Hyperwikis
  • 33. Version identity Semantic consistency. Content version is not resource version. All revisions of the Perl node are still about the same Perl. Navigational identity. Each version has distinct identity for linking. Version 3 of the Perl node is Perl3 , not Perl.meta3 . Semantic identity. Each version has a distinct URI. (Perl3 .meta, writtenBy, Phil) means “Phil wrote version 3 of the content for the Perl node”. Philip Boulain A Model for Open Semantic Hyperwikis
  • 34. Version identity, cont. Node title Content URI Represents Perl Text about Perl Perl Perl itself Perl3 v3 text re: Perl Perl Perl itself Perl.meta Text re: t. re: Perl Perl/meta Text re: Perl Perl.meta4 v4 t. re: t. re: Perl Perl/meta Text re: Perl Perl3 .meta T. re: v3 t. re: Perl Perl;3/meta v3 t. re: Perl Perl3 .meta4 v4 t. re: v3 t. re: Perl Perl;3/meta v3 t. re: Perl Allow version on all non-namespace parts. Drop the last version to make a URI. Philip Boulain A Model for Open Semantic Hyperwikis
  • 35. Instance identity Are two different parameterisations separate SemWeb resources? It’s exactly the same as versioning. Parameter substitution is a content operation, so the tail parameters don’t change semantic identity. But Perl {bar→baz}.meta represents the Perl {bar→baz} instance. Philip Boulain A Model for Open Semantic Hyperwikis
  • 36. Parametric links Template.Discussions type discussion source param(node).meta target Discuss.param(node) If parameters can fill in attribute values, we get parametric and functional links. What about a link where both source and target are free variables? Philip Boulain A Model for Open Semantic Hyperwikis
  • 37. Eager vs. lazy When does a parametric instance exist? Parametric links can potentially affect the hyperdocument outside of ther immediate content and relations. Eager: all instances considered to exist. Lazy: instances exist only if referred to. Which is most consistent and useful? Philip Boulain A Model for Open Semantic Hyperwikis
  • 38. Eager vs. lazy, cont. Lazy: works just like templates. You have to ‘link to’ a parametric link with some parameters to make it work. Eager: works like free-variable rules. More consistent, and more powerful. Contrary to Semantic MediaWiki, which inherits templates-as-macro-processing! Template-macroing links is bad ontology modelling: use classes. A ‘Country’ template might have a ‘capital’ parameter. But templates don’t have capitals! Philip Boulain A Model for Open Semantic Hyperwikis