jAPS 2.0 Model


Published on

This presentation describes the conceptual model of jAPS 2.0 platform and it is recommended to users and developers.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

jAPS 2.0 Model

  1. 1. jAPS 2.0 Model Version 1.0 09 May 2009 jAPS
  2. 2. Introduction ✔jAPS 2.0 is an Enterprise Accessible Information Platform that allows to create innovative solutions oriented to services and users collaboration ✔Before starting to develop a portal with jAPS its good to know and understand the conceptual model behind the system
  3. 3. Program This presentation describes the model and the objects constituting the foundations of jAPS: ● Pages, Tree Pages, Page Models ● Showlet ● Contents, Contents Model, Categories ● Resources ● Symbolic Links ● Some special Showlet
  4. 4. Pages jAPS page: my_1_page “My first jAPS page” ✔is like a blank sheet ✔Initially is uniquely defined by its code ✔has a title
  5. 5. Pages Tree jAPS pages are logically related to each other in a hierarchical tree structure, with no exceptions
  6. 6. The Page Model (1) ✔The Page Model defines the page characteristics ✔In a jAPS portal it's possible to configure multiples Page Models ✔Each Page have only one model ✔The Page Model defines two aspects: 1. The schema 2. The decoration
  7. 7. The Page Model (2) 1 2 3 5 + = 4 6 7 schema decoration Page model
  8. 8. The Page Model(3) With few page models it's home page model possible to define all the pages of a internal portal. page model service page model
  9. 9. Pause (1) ✔The page tree is the skeleton of the portal ✔The pages, altough “decorated” with the Pages Model, don't include information or functionality ✔We must now introduce objects that expose information and functionality
  10. 10. The Showlet (1) ✔jAPS Showlet is an object that allows to display on the pages of the portal information and/or functionality (services) ✔It's possible to insert a Showlet in each of the areas defined by the model associated to the page N.B.: The jAPS Showlet are similar to the portlet (standard JSR 168), but are much simpler and do not follow the standard. That's why they have a different name.
  11. 11. The Showlet (2) The Logic Showlets are: ✔the application logic that retrieves the information and performs the function ✔the logic of presentation, which translates the information into an output to be included in the page
  12. 12. Showlet: example MeteoShowlet Meteo [good, 15] Service Meteo CrayConnector{ Service getMeteo() } <temp> 15° Output Info Presentation Logic Application Logic
  13. 13. Pause (2) ✔The Showlet are quite general. They can virtually perform any function (just realize it...) ✔With the Objects seen so far, we can say that it's possible to build any portal: ● Pages Tree allows articulation of pages, however complex ● The Showlet allows to include information or service in any page
  14. 14. Pause (3) ✔To help developing a new portal we expect to have a lot of default Showlet. ✔jAPS contains some default Showlets: the most useful are cut to fit the common requirements ✔The most important are related to content management systems (CMS)
  15. 15. Content (1) ✔A jAPS Content is a structured information unit ✔The information can be used in different ways and contexts ✔The jAPS contents, produced by the editors, are collected in a Contents Archive
  16. 16. Content (2) PAY ATTENTION!!! ✔The jAPS Content Does Not include presentation characteristics (colors, effects, size) ✔jAPS Content Has No relation with Pages since it's not linked to the Pages Tree
  17. 17. Content Type (1) A Content Type is the definition of a class of Contents ✔The Content Type is a basic structure of information ✔Content Types can be defined as desidered, usually in a portal there are no more than 10 types, sufficient to contain all the informations ✔Examples: News, Event, Article, Download card, Product description, Route...
  18. 18. Content Type(2) Example of a Content Type structure: N o m e a ttrib u to T ip o a ttrib u to T ip o : N O T IZ IA T ito lo te s to s e m p lic e S in te s i te s to s e m p lic e C o rp o T e s to ip e rte s to D a ta d a ta Luogo te s to s e m p lic e F o to im m a g in e R ife rim e n ti lis ta d i lin k
  19. 19. Content Type (3) ✔In the definition of a Content Type, the attributes may be selected from simple types available (text, hypertext, date, ...) ✔Some attributes can be of Resources type. Resources are Images, documents ✔To handle special cases, it's possible to develop new types of attributes
  20. 20. Content Categories (1) ✔To organize the Content Archive it's possible to associate each content to one or more Categories ✔Categories are a classification, regardless of their type ✔Categories are also organized in a hierarchy tree Do not confuse categories with Types: Types define the structure, the categories are used to classify
  21. 21. Content Categories (2) Categories Examples: New: New: Content Type: Sport Singers-Pilots Singers-Pilots New 5-3 5-3 Sport/Calcio Sport/Rugby Sport/Petanque Article: Article: News Content Type: Ronaldo Ronaldo Article News/Cinema capellone capellone News/TV News/VIP News/Petanque
  22. 22. Resources, Resources Archive and Resources Category ✔Resources (images, documents text or multimedia) are stored in appropriate Archives ✔Each Resource can be related to one or more Content ✔Resources can also be arranged through appropriate Categories
  23. 23. Pause (4) ✔Editors can create and update Contents Resources ✔Editors do not need to worry about how, where and when the content will be published ✔The Archives of the jAPS CMS is actually one of the potential sources of information to be displayed on pages. In what way this is accomplished? Through Showlet, of course!
  24. 24. Formatting Content ✔In order to publish contents on the pages, you need a precedent formatting process which translates the informations together in a suitable output ✔ The information contained in the Content must be formatted in different ways ✔jAPS has a formatting engine for content-based models
  25. 25. The Contents Models (1) ✔The Content Model is a formatting scheme for a specific content type ✔For each content type it's possible to define more Contents models ✔The formatting engine receives an input content and a consistent model, produces output in the formatted content (eg, a fragment of XHTML)
  26. 26. The Contents Models (2) Content: Model: New NewHomePage A ttr i b u to Va lo re T it o lo N o m in a d e g li s c r u t a t o r i p e r le E le z io n i P o litic h e L a C o m m is s io n e E le t to r a le c o m u n a le h a p r o v v e d u t o a n o m in a r e g li s c r u t a t o r i p e r le p r o s s im e E le z io n i P o litic h e d e l 1 3 e 1 4 a p r ile S in t e s i 2008. L a C o m m is s io n e e le t to r a le h a p r o v v e d u t o a n o m in a r e ( v e r b a le n r . 2 d e l 1 9 / 0 3 / 2 0 0 8 ) g li s c r u t a t o r i p e r la E le z io n i P o litic h e d e l 1 3 e 1 4 Model: a p r ile 2 0 0 8 . P u b b lic h ia m o l'e le n c o d e i 7 4 4 s c r u t a t o r i n o m in a ti e r e la tiv a d e s t in a z io n e a lle NewComplet C o r p o T e s to s e z io n i e le tto r a li. D a ta 2 0 /0 3 /0 8 Luogo C a g lia r i F o to im m a g in e R if e r im e n ti E le z io n i P o lit ic h e 2 0 0 8 - P a g e : s p e c ia le e le z io n i Model: NewList
  27. 27. Publication of a Content on a Page ✔To publish a specific content in a specific location of a page we use a Showlet named “ViewContent” ✔This Showlet include: ● A configuration that allows you to specify the Content and the Content Model to be used. ● The logic to retrieve the content. ● The logic of the layout Engine
  28. 28. ContentView Showlet Configuration: Configuration: page: home_page page: home_page position: 55 position: showlet: ViewContent showlet: ViewContent contentId: GEN4 contentId: GEN4 modelid: 77 modelid: Lisa Home Page Welcome! Contents Contents Showlet Good news Archive Showlet Archive ViewContent ViewContent Bad news Meteo Service Layout Engine Layout Engine 15°
  29. 29. ContentList Showlet ✔To view a list of contents is available a Showlet named “ContentList” ContentList is configured with an extraction criteria (examples: the three most recent news in order of increasing data, the articles of a certain category sorted by title) It can be configured with the Content Model to be used to view content The result is dynamic (in the first instance: If you insert a news, the list changes when reloading the page)
  30. 30. Pause (5) ✔The Showlet “ContentView” allows to fill easily the pages with contents ✔With the flexibility introduced by the content models, there are few limits in the way an information can be presented ✔To complete the illustration of its potential, we must introduce a new jAPS concept
  31. 31. The jAPS Link (1) jAPS operates several types of links, depending on the type of destination: ● external link ● link to Pages ● link to Contents Links can appear in any Content within the attributes of a hypertext, or as specific attributes of type link The links also appear in the navigation menu
  32. 32. The jAPS Link (2) jAPS checks and ensures that internal links always exist (e.g., it prevents the deletion of a content referenced by a link in a different content) Links to Page and Links to Content are internally managed in a symbolic form and translated into real URLs only when pages are displayed in the web browser
  33. 33. Link to a Content(1) Elezioni 2008 Elezioni 2006 Contrariamente alle elezioni Per la prima volta nella storia del 2006, quest'anno i seggi dell'Italia, le elezioni politiche saranno istituiti nelle sedi... del 2006 hanno visto la ... The ability to insert a Link to a Content in another Content allows interesting correlations between the contents in the database, regardless of their publication on the pages But what does "link to a Content" mean?
  34. 34. Link to a Content (2) When a Link to a Content is shown on a page, what will the real target be? ✔jAPS has a set of rules for the resolution of Links to Content, which guarantee the achievement of the referenced content. Simplifying, the link can be translated in:  a link to the page on which the content is published , or, if the content is not published  in a link to a default page where the content is displayed dynamically
  35. 35. Link to a Content (3) ✔Another use of Link to a Content esoteric in appearence, but useful in jAPS, is "link to itself" ✔Through the Content Model it's possible to include a link to the same content that you want to format ●It is used when you view a summary of the Content (in a list, on the home page ...) and you need to link the full content (examples: "read the article," "continue>>" ... )
  36. 36. Link to a Content (4) Example: list of news jAPS identifies a destination, A list in the home page in this case the default page uses a model which includes for the News, and translates a link to the same content. the link. The default page is It is not necessary to indicate configured to display the landing page! dynamically the specific required content
  37. 37. Pause (6) ✔With the technique of symbolic links, jAPS guarantees the consistency of the internal links of the portal (dead links cannot exist!) ✔The Contents Link mechanism solves a large part of the navigation requirements on the portal, simplifying the implementation ✔Additional navigation needs are covered by another instrument: the Showlet type "Menu"
  38. 38. The Showlet “Menu” (1) jAPS provides tools to easily compose a broad class of Showlets oriented to web navigation What the following components have in common? ● Horizontal navigation bar ● Vertical Menu (simple or tree) ● “Bread Crumb” ● “local” Menu ● Site map
  39. 39. The Showlet “Menu” (2) from: www.japsportal.org
  40. 40. The Showlet “Menu” (3) ✔The components listed are made by lists (of type flat or tree) of Page Link ✔Each link has a text and a destination ✔The sequence of links can be chosen by the developer or may be related to the tree pages structure
  41. 41. the Showlet “Menu” (4) ✔The basic component supplied by jAPS allows to define lists of links to target pages selected by customizable rules ✔The rules can select: ● Pages ● Set of pages ✔The rules for selecting sets of pages operate on the Pages Tree structure
  42. 42. The Showlet “Menu” (5) Examples of rules for the selection of pages: ● All the “children” pages of a specific page ● Entire tree of pages from the Home Page ● All pages from Home Page to the Current Page It is easy to configure “local” menu
  43. 43. The Showlet “Menu” (6) Home Page Home page Result: Rules: Home Page Sport tree from home Sport Attualità Sport Until first level Attualità Spettacolo Spettacolo Calcio Vertical menu Bocce Rules: Result: Route from Home Home Page Attualità to this page Sport Bocce Spettacolo Home page >> Sport >> Bocce Bread Crumbs Menu
  44. 44. The Showlet “Menu” (7) ✔With jAPS components we build Showlet Menù through customization of the presentation and configuration ✔The menu “elements” are the title of the page, the destination link is generated by jAPS. We have not to write URLs! ✔The menu based on rules are dynamic: adding or removing pages results in an automatic update of the menu items
  45. 45. Final (1) ✔jAPS have additional features (eg, the search engine) ✔With the basic components of jAPS is possible to implement all the functions of an information portal without writing Java code ✔By contrast the philosophy of jAPS to leave complete freedom for characterization means that the entire presentation (XHTML, CSS and accessories) must be written ad hoc
  46. 46. Final (2) jAPS is designed to be easily extended in order to: ● add customized functionality ● extend its basic functionality
  47. 47. Thanks! www.japsportal .org < Do It The jAPS Way /> 47