JRapid Spec

From JRapid

(Redirected from AML)
Jump to: navigation, search

JRapid generates applications based on a model defined using AML (JRapid Application Modeling Language), a Model Driven Design approach.

The following specification provides the knowledge for writing any model with AML (JRapid Application Modeling Language).

Remember you can also use the JRapid Web-based Designer, a point-and-click graphical interface, for defining your application.

<app 
    name = NAME
    basepackage = BASEPACKAGE
    ((config|entity|enumset|panel|report)*)
/>
<config 
        uploadpath = UPLOAD_PATH
        ((labels|usescript|usestylesheet|usewidget|useview|restrict)*)
/>
<usescript
    location = LOCATION
/>
<usestylesheet
      location = LOCATION
/>
<usewidget 
           name = NAME
           jquery = JQUERY_NAME
           jqueryoptions = JQUERY_OPTIONS
           ((usescript|usestylesheet)*)
/>
<useview 
        name = name
        ((usescript|usestylesheet)*)
/>
<reference 
        name = NAME
        file = FILE
/>
<entity name = NAME
        label = LABEL
        menu = MENU
        stereotype = (User|Email|Language|LangValue|SavedFilter|Role|Login|Async)
        size = (small|medium|large)
        defaultlisting = LISTING
        transient = "transient"
        order = COMMA_SEPARATED_ORDER
        comboproperty = COMBOPROPERTY>
        auditlevel = AUDIT_LEVEL
        optimisticlock = "deny | warn"
        navigator = "navigator"
        cache = "cache"
        crosstab = "crosstab"

        (restrict?, description?, usescript|usestylesheet|(subset|listing|defaultset|
        (property|tab|column|subcolumn|row|html|embeddedlisting)*|filter|action|next)*)>
</entity>
<column 
        name = NAME
        label = LABEL
        width = CSS_STYLE_FOR_WIDTH
        displayif = FPATH
        labelposition (fieldset)
        (row*|property*|html*|embeddedlisting*)
/>
<row 
        name = NAME
        label = LABEL
        style = CSS_STYLE
        displayif = FPATH
        (column*|property*|html*|embeddedlisting*)
/>
<property
         name = NAME
         label = LABEL
         style = STYLE
         description = DESCRIPTION
         tooltip = TOOLTIP
         cache = "cache">
         unique = "unique" 
         primarykey = "primarykey" 
         enumset = ENUMSET
         required = "required"
         readonly = "readonly"
         widget = (select|combo|radio|selectmultiple|checkbox)
         comboproperty = PROPERTY
         maxlength = LENGTH
         minlength = MINLENGTH
         hint = "hint"
         class = CLASS
         display = (primary|secondary)
         type = (id|double|float|short|integer|long|boolean|string|text|longtext
                    |richtext|enum|date|time|datetime|timerange|timequantity|file
                    |password|image|email|phone|url|googledoc)>
         entity = ENTITY
         subset = SUBSET
         subsetparams = PARAMS
         collection = (set|list|sortedset)
         transient = "transient"
         embedded = (inline|detail|grid)
         labelposition = (left|top|fieldset)
         dimension = "row" | "column"
         childproperty = PROPERTY
         maxrows = ROWS
         minrows = ROWS
         listindex = LIST_INDEX
         listunique = LIST_UNIQUE
         setorder = SETORDER
         sort = SORT
         sortexpr = EXPR
         where = WHERE
         extendable = "extendable"
         sortable = "sortable"
         whennotinsubset = (donotshow|show|shownotvalid)
         default = DEFAULT
         expr = EXPR
         calculated = CALCULATED 
         calculatedtrigger = (onload|onchange|onchangenew)
         formula = FORMULA 
         displayif = CONDITION
         visibleif = CONDITION
         disabledif = CONDITION
         readonlyif = CONDITION
         checkif = CONDITION
         checkifmessage = MESSAGE
         displayproperties = PROPERTIES
         fixed = "fixed"
         hidden = "hidden"
         disabled = "disabled"
         invisible = "invisible"
         gridheader = "gridheader"
         gridvalue = "gridvalue" 
         width = WIDTH
         height = HEIGHT
         imagecopyof = IMAGECOPYOF
         fromyear = FROMYEAR
         toyear = TOYEAR
         autosuggest = "autosuggest"
         rememberlast = "rememberlast"
         icon = PATH_TO_ICON
         pattern = PATTERN
         (restrict?, enum*, displaycondition?, visiblecondition?, readonlycondition?,
         disabledcondition?, suggest*, dynamicvalue*, foreach?, dynamicforeach?, action*)
</property>
<displaycondition 
    expr = EL
    (param*)         
/>
<visiblecondition 
    expr = EL
    (param*) 
/>
<readonlycondition 
     expr = EL
     (param*) 
/>
<disabledcondition 
       expr = EL
       (param*) 
/>
<suggest 
    expr = HQL
/>
<dynamicvalue 
          expr = EL
          trigger = (onload|onchange|onchangenew)
          (param)
/>
<foreach 
         select = SELECT
         setproperty = PROPERTY
         property = PROPERTY
/>
<restrict 
     authentication = "basic"
     (allow*)
/>
<allow>
    privilege = PRIVILEGE
    action = ACTION
/>
<enumset 
        name = NAME
        privileges = PRIVILEGES
        (enum*) 
/>
<action
        name = NAME
        label = LABEL 
        type = "javascript" | "relatedentity" | "report" | "openentity" | "relatedlisting"
        location = "button" | "select" | "form" | "local" | "main"
        description = DESCRIPTION
        function = FUNCTION 
        functionparams = PARAMS
        entity = ENTITY
        listing = LISTING 
        subset = SUBSET 
        subsetparams = SUBSETPARAMS
        defaultset = DEFAULTSET 
        defaultsetparams = PARAMS
        report = REPORT
        pdf = "pdf"
/>
<listing (element child of entity) 
        name = NAME 
        subset = SUBSET
        view = VIEW
        layout = LAYOUT
        displayproperties = COMMA_SEPARATED_PROPERTIES 
        displayfilters = FILTERS
        noadd = "noadd"
        noremove = "noremove"
        (restrict?, tab*)
/>
<embeddedlisting 
                name = NAME 
                label = LABEL
                labelposition = LABELPOSITION 
                entity = ENTITY
                listing = LISTING
                subset = SUBSET
                subsetparams = SUBSETPARAMS
                defaultset = DEFAULTSET
                defaultsetparams = PARAMS
                displayif = DISPLAYIF
                (displaycondition?)
/>
<subset 
       name = NAME
       displayproperties = COMA_SEPARATED_PROPERTIES
       order = ORDER
       basesubset = SUBSET
       (restrict?, (param|condition|and|or|restriction)*) 
/>
<param 
        name = NAME
        entity = ENTITY
        type = TYPE
        collection = COLLECTION
        value = VALUE
/>
<condition 
          field = FIELD
          value = VALUE
          in = COLLECTION
          contains = ITEM
          isnull= "isnull"
          gt = VALUE
          lt = VALUE
          ge = VALUE
          le = VALUE
          ne = VALUE
          like = PATTERN
/>
<restriction
            expr = EXPR
            usedistinct = "usedistinct" 
            (param*)
/>
<and 
    (condition*, and*, or*, restriction*)
/>
<or 
    (condition*, and*, or*, restriction*)
/>
<next 
      type = TYPE
      function = FUNCTION 
      report = REPORT 
      panel = PANEL
      message = MESSAGE
      pdf = "pdf"
/>
<defaultset 
            name = NAME
            unique = UNIQUE
            (restrict?, param*)
/>
<filter 
       name = NAME
       entity = ENTITY
       type = TYPE
       property = PROPERTY
       label = LABEL
       subset = SUBSET
       display = DISPLAY
       flag = FLAG
       widget = WIDGET
       collection = COLLECTION
       enumset = ENUMSET
       (enum*, (condition|and|or|restriction)*)
/>
<panel
     name = NAME
     title = TITLE
     (accordeon*|header|footer)
/>
<header>
   <![CDATA[ HTML CONTENT ]]>
</header>
<footer>
   <![CDATA[ HTML CONTENT ]]>
</footer>
<column (element child of panel) 
        width = CSS_WIDTH
        (accordeon|listing|form|chart|crosstab*)
/>
<menu />
<accordeon 
      (accordeonitem*)
/>
<accordeonitem
      title = TITLE
      visible = "true"
      (listing|form|chart|crosstab|html)
/>
<listing (element child of panel) 
        name = NAME 
        entity = ENTITY
        listing = VIEW
        title = TITLE
        subset = SUBSET
        subsetparams = SUBSETPARAMS
        defaultset = DEFAULTSET
        defaultsetparams = DEFAULTSETPARAMS
        panelheight = HEIGHT
/>
<form
          entity = ENTITY
          name = NAME
          title = TITLE
          defaultset = DEFAULTSET
          defaultsetparams = DEFAULTSETPARAMS
          panelheight = HEIGHT
/>
<chart 
       chart = CHART 
       entity = ENTITY
       name = NAME
       title = TITLE
       rows = PROPERTY_LIST
       columns = PROPERTY_LIST
       measure = MEASURE
       panelheight = PANELHEIGHT
       onechart = TRUE
       vertical = TRUE
       stacked = TRUE
/>
<crosstab
          entity = ENTITY
          name = NAME
          title = TITLE
          panelheight = HEIGHT
          rows = PROPERTY_LIST
          columns = PROPERTY_LIST
          measure = MEASURE
/>
<report
         name = NAME
         file = FILE
         location = "application" | "repository"
         title = TITLE
         panelheight = HEIGHT
/>

See Also

Basic AML Definition

Other groups of pages

Personal tools