aspectWebML.webML.navigation.hypertextOrganization
Package hypertextOrganization


OverviewImage

The package hypertextOrganization provides concepts that enable the modularisation of the front-end of the application to receive a logical division.


Class Summary
ALTERNATIVE Alternatives contain sub-pages that are diplayed one at a time, in alternative.
AREA Areas are modules that are used to decompose large and complex siteviews. They are containers for PAGE elements and other sub-areas. Sub-areas are used to form a hierarchical organization of a siteview.

Constraints:
  1. MustNotHaveOutgoingLinks: not self.link->isEmpty()
  2. Area_must_have_either_defaultPage_or_defaultArea: defaultArea.oclIsUndefined()<>defaultPage.oclIsUndefined()
CUSTOMLINKPROPAGATIONS Determines the LINKSEQUENCE to calculate the CONTENTUNITs of the PAGE for a specific incoming LINK.
LINKSEQUENCE Defines a sequence of LINKs between the CONTENTUNITs of the PAGE. This sequence determines in which order the CONTENTUNITs are computed when the PAGE is entered
PAGE Pages are the actual interface elements that are delivered to the user.

Constraints:
  1. Page_cannot_be_contained_within_Area_and_Siteview_at_the_same_time: siteView.oclIsUndefined()<>area.oclIsUndefined()
  2. CustomLinkPropagationsIncomingLinkMustBeIncomingLinkOfPage: customlinkprogagations.incomingLink->forAll(l | l.to=self) OR self.contentunit->includesAll(self.customlinkpropagations.incomingLink.to->asSet())
  3. defaultCustomLinkPropagationsIncomingLinkMustBeIncomingLinkOfPage: defaultcustomlinkpropagation.incomingLink->forAll(l | l.to=self) OR self.contentunit->includesAll(self.defaultcustomlinkpropagation.incomingLink.to->asSet())
  4. NonContextualCustomLinkPropagationsIncomingLinkMustBeIncomingLinkOfPage: noncontextualcustomlinkprogagations.incomingLink->forAll(l | l.to=self) OR self.contentunit->includesAll(self.noncontextualcustomlinkpropagations.incomingLink.to->asSet())
  5. MustNotLinkContentUnitsAndContextUnits: self.link->forAll(l | not l.to.oclIsTypeOf(CONTENTUNIT) AND not l.to.oclIsTypeOf(CONTEXTUNIT))
  6. AutomaticLinksNotAllowed: self.link->forAll(l | l.type<>Hypertext.linkType::automatic)
  7. AreasLinkedWithNormalLinksOnly: self.link->forAll(l | l.to.oclIsTypeOf(Area) implies l.type = Hypertext.linkType::normal)
PORT A port collects Web service operations in form of operationunits.
SITEVIEW A siteview is the top level element for the locigal division of the front-end. It contains constructs as areas or pages.
SERVICEVIEW A serviceview is a collection of ports which expose the functionality of a Web Service through operations.


Copyright Andrea Schauerhuber, Cornelia Tomasek (Vienna University of Technology, 2007)
Note: This documentation is partly based upon WebRatio's WebML User Guide (for further information on WebRatio see http://www.webratio.com/), 'Designing Data-Intensive Web Applications' [S.Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera, 2003] (for further information see http://www.webml.org/webml/page2.do?ctx1=EN) and 'Model-driven Development of Context-Aware Web Applications' [S. Ceri, F. Daniel, M. Matera, F. M. Facca. ACM Transactions on Internet Technology, 2007, 7(1)]