doc/book/en/B0011-schema-stdlib.en.txt
changeset 292 2d9e83c34b23
parent 271 e150b92237d9
child 301 e47150482ac1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/book/en/B0011-schema-stdlib.en.txt	Tue Dec 23 13:50:56 2008 -0800
@@ -0,0 +1,75 @@
+.. -*- coding: utf-8 -*-
+
+Pre-defined schemas in the library
+----------------------------------
+
+The library defines a set of entities schemas that are required by the system
+or commonly used in `CubicWeb` applications.
+Of course, you can extend those schemas if necessarry.
+
+
+System schemas
+``````````````
+The system entities available are :
+
+* `EUser`, system users
+* `EGroup`, users groups
+* `EEType`, entity type
+* `ERType`, relation type
+
+* `State`, workflow state
+* `Transition`, workflow transition
+* `TrInfo`, record of a transition trafic for an entity 
+
+* `EmailAddress`, email address, used by the system to send notifications
+  to the users and also used by others optionnals schemas
+
+* `EProperty`, used to configure the application
+* `EPermission`, used to configure the security of the application
+
+* `Card`, generic documenting card
+* `Bookmark`, an entity type used to allow a user to customize his links within
+  the application
+
+Cubes available
+```````````````
+
+An application is based on several basic cubes. In the set of available
+basic cubes we can find for example :
+
+* `comment`, provides an entity type for `Comment` allowing us to comment others
+  site's entities
+
+* `mailinglist`, provides an entity type for `Mailinglist` which groups informations
+  in a discussion list
+
+* `file`, provides entity types for `File` et `Image` used to represent
+  files (text or binary) with additionnal informations such as MIME type or
+  encoding.
+  
+* `link`, provides an entity type for hypertext link (`Link`)
+
+* `blog`, provides an entity type weblog (`Blog`)
+
+* `person`, provides an entity type for a person (`Person`)
+
+* `addressbook`, provides an entity type used to represent phone 
+  numbers (`PhoneNumber`) and mailing address (`PostalAddress`)
+  
+* `classtags`, categorization system based on tags (`Tag`)
+
+* `classfolders`, categorization system based on folders hierarchy in order 
+  to create navigation sections (`Folder`)
+
+* `email`, archiving management for emails (`Email`, `Emailpart`,
+  `Emailthread`)
+
+* `basket`, basket management (`Basket`) allowing to group entities
+
+To declare the use of a component, once installed, add the name of the component
+to the variable `__use__` in the file `__pkginfo__.py` of your own component.
+
+.. note::
+  The listed cubes above are available as debian-packages on `CubicWeb's forge`_.
+
+.. _`CubicWeb's forge`: http://www.cubicweb.org/project?vtitle=All%20cubicweb%20projects