doc/book/en/B0011-schema-stdlib.en.txt
changeset 1808 aa09e20dd8c0
parent 1693 49075f57cf2c
parent 1807 6d541c610165
child 1810 e95e876be17c
equal deleted inserted replaced
1693:49075f57cf2c 1808:aa09e20dd8c0
     1 .. -*- coding: utf-8 -*-
       
     2 
       
     3 Pre-defined schemas in the library
       
     4 ----------------------------------
       
     5 
       
     6 The library defines a set of entity schemas that are required by the system
       
     7 or commonly used in `CubicWeb` applications.
       
     8 Of course, you can extend those schemas if necessary.
       
     9 
       
    10 
       
    11 System schemas
       
    12 ``````````````
       
    13 The available system entities are:
       
    14 
       
    15 * `EUser`, system users
       
    16 * `EGroup`, users groups
       
    17 * `EEType`, entity type
       
    18 * `ERType`, relation type
       
    19 
       
    20 * `State`, workflow state
       
    21 * `Transition`, workflow transition
       
    22 * `TrInfo`, record of a transition trafic for an entity 
       
    23 
       
    24 * `EmailAddress`, email address, used by the system to send notifications
       
    25   to the users and also used by others optionnals schemas
       
    26 
       
    27 * `EProperty`, used to configure the application
       
    28 * `EPermission`, used to configure the security of the application
       
    29 
       
    30 * `Card`, generic documenting card
       
    31 * `Bookmark`, an entity type used to allow a user to customize his links within
       
    32   the application
       
    33 
       
    34 (The first 'E' in some of the names is the first letter of 'Erudi', 
       
    35 `CubicWeb`'s old name; it might be changed/removed some day.)
       
    36 
       
    37 Available cubes
       
    38 ```````````````
       
    39 
       
    40 An application is based on several basic cubes. In the set of available
       
    41 basic cubes we can find for example :
       
    42 
       
    43 * addressbook_: PhoneNumber and PostalAddress
       
    44 
       
    45 * basket_: Basket (like a shopping cart)
       
    46 
       
    47 * blog_: Blog (a *very* basic blog)
       
    48 
       
    49 * comment_: Comment (to attach comment threads to entities)
       
    50 
       
    51 * email_: archiving management for emails (`Email`, `Emailpart`,
       
    52   `Emailthread`)
       
    53 
       
    54 * event_: Event (define events, display them in calendars)
       
    55 
       
    56 * file_: File (to allow users to upload and store binary or text files)
       
    57 
       
    58 * folder_: Folder (to organize things but grouping them in folders)
       
    59 
       
    60 * keyword_: Keyword (to define classification schemes)
       
    61 
       
    62 * link_: Link (to collect links to web resources)
       
    63 
       
    64 * mailinglist_: MailingList (to reference a mailing-list and the URLs
       
    65   for its archives and its admin interface)
       
    66 
       
    67 * person_: Person (easily mixed with addressbook)
       
    68 
       
    69 * tag_: Tag (to tag anything)
       
    70 
       
    71 * task_: Task (something to be done between start and stop date)
       
    72 
       
    73 * zone_: Zone (to define places within larger places, for example a
       
    74   city in a state in a country)
       
    75 
       
    76 .. _addressbook: http://www.cubicweb.org/project/cubicweb-addressbook
       
    77 .. _basket: http://www.cubicweb.org/project/cubicweb-basket
       
    78 .. _blog: http://www.cubicweb.org/project/cubicweb-blog
       
    79 .. _comment: http://www.cubicweb.org/project/cubicweb-comment
       
    80 .. _email: http://www.cubicweb.org/project/cubicweb-email
       
    81 .. _event: http://www.cubicweb.org/project/cubicweb-event
       
    82 .. _file: http://www.cubicweb.org/project/cubicweb-file
       
    83 .. _folder: http://www.cubicweb.org/project/cubicweb-folder
       
    84 .. _keyword: http://www.cubicweb.org/project/cubicweb-keyword
       
    85 .. _link: http://www.cubicweb.org/project/cubicweb-link
       
    86 .. _mailinglist: http://www.cubicweb.org/project/cubicweb-mailinglist
       
    87 .. _person: http://www.cubicweb.org/project/cubicweb-person
       
    88 .. _tag: http://www.cubicweb.org/project/cubicweb-tag
       
    89 .. _task: http://www.cubicweb.org/project/cubicweb-task
       
    90 .. _zone: http://www.cubicweb.org/project/cubicweb-zone
       
    91 
       
    92 To declare the use of a component, once installed, add the name of the component
       
    93 to the variable `__use__` in the file `__pkginfo__.py` of your own component.
       
    94 
       
    95 .. note::
       
    96   The listed cubes above are available as debian-packages on `CubicWeb's forge`_.
       
    97 
       
    98 .. _`CubicWeb's forge`: http://www.cubicweb.org/project?vtitle=All%20cubicweb%20projects