# HG changeset patch # User Sandrine Ribeau # Date 1229965152 28800 # Node ID 20d5eae54d57fc1208cdadc9a269186c5e40929c # Parent d7bb01e5be9dfda9802ca165872db627995c9206 [doc] Rename component with cube. diff -r d7bb01e5be9d -r 20d5eae54d57 doc/book/en/A02b-components.en.txt --- a/doc/book/en/A02b-components.en.txt Mon Dec 22 17:35:07 2008 +0100 +++ b/doc/book/en/A02b-components.en.txt Mon Dec 22 08:59:12 2008 -0800 @@ -1,26 +1,26 @@ .. -*- coding: utf-8 -*- -.. _components: +.. _cubes: -Components ----------- +Cubes +----- -What is a component -~~~~~~~~~~~~~~~~~~~ +What is a cube +~~~~~~~~~~~~~~ -A component is a model grouping one or more entity types and/or views associated +A cube is a model grouping one or more entity types and/or views associated in order to provide a specific feature or even a complete application using -others components. -You can decide to write your own set of components if you wish to re-use the -entity types you develop. By default, LAX comes with its owns set of components +others cubes. +You can decide to write your own set of cubes if you wish to re-use the +entity types you develop. By default, LAX comes with its owns set of cubes that you can start using right away. Standard library ~~~~~~~~~~~~~~~~ -A library of standard components is part of the `LAX` release (look at -``lax/skel/ginco-apps``). Components provide entities and views. With +A library of standard cubes is part of the `LAX` release (look at +``lax/skel/ginco-apps``). Cubes provide entities and views. With ``lax-0.4``, you should get a set of application entities and system entities you can re-use. @@ -28,48 +28,48 @@ * addressbook: PhoneNumber and PostalAddress -* ebasket: Basket (like a shopping cart) +* basket: Basket (like a shopping cart) -* eblog: Blog (a *very* basic blog) +* blog: Blog (a *very* basic blog) -* eclassfolder: Folder (to organize things but grouping them in folders) +* classfolder: Folder (to organize things but grouping them in folders) -* eclasstags: Tag (to tag anything) +* classtags: Tag (to tag anything) -* efile: File (to allow users to upload and store binary or text files) +* file: File (to allow users to upload and store binary or text files) -* elink: Link (to collect links to web resources) +* link: Link (to collect links to web resources) -* emailinglist: MailingList (to reference a mailing-list and the URLs +* mailinglist: MailingList (to reference a mailing-list and the URLs for its archives and its admin interface) -* eperson: Person (easily mixed with addressbook) +* person: Person (easily mixed with addressbook) -* etask: Task (something to be done between start and stop date) +* task: Task (something to be done between start and stop date) -* ezone: Zone (to define places within larger places, for example a +* zone: Zone (to define places within larger places, for example a city in a state in a country) The available system entities are: -* ecomment: Comment (to attach comment threads to entities) +* comment: Comment (to attach comment threads to entities) Adding comments to BlogDemo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -To import a component in your application just change the line in the +To import a cube in your application just change the line in the ``app.conf`` file. For example:: - included-yams-components=ecomment + included-yams-cubes=ecomment will make the ``Comment`` entity available in your ``BlogDemo`` application. Change the schema to add a relationship between ``BlogEntry`` and -``Comment`` and you are done. Since the ecomment component defines the +``Comment`` and you are done. Since the comment cube defines the ``comments`` relationship, adding the line:: comments = ObjectRelation('Comment', cardinality='1*', composite='object') @@ -78,13 +78,13 @@ Clear the datastore and restart. -Component structure -~~~~~~~~~~~~~~~~~~~ +Cube structure +~~~~~~~~~~~~~~ -A complex component is structured as follows: +A complex cube is structured as follows: :: - mycomponent/ + mycube/ | |-- schema.py | @@ -111,7 +111,7 @@ We can also define simple Python module instead of directories (packages), for example: :: - mycomponent/ + mycube/ | |-- entities.py |-- hooks.py @@ -145,6 +145,6 @@ [WRITE ME] -* explain the component architecture +* explain the cube architecture -* add comments to the blog by importing the comments component +* add comments to the blog by importing the comments cube diff -r d7bb01e5be9d -r 20d5eae54d57 doc/book/en/B142-install.en.txt --- a/doc/book/en/B142-install.en.txt Mon Dec 22 17:35:07 2008 +0100 +++ b/doc/book/en/B142-install.en.txt Mon Dec 22 08:59:12 2008 -0800 @@ -63,13 +63,13 @@ This skeleton directory is a working `AppEngine` application. You will recognize the files ``app.yaml`` and ``main.py``. All the rest is the `LAX` framework and its third-party libraries. You will notice that -the directory ``cubes`` is a library of reusable components. +the directory ``cubes`` is a library of reusable cubes. The main directories that you should know about are: - - ``cubes`` : this is a library of reusable yams components. To use - those components you will list them in the variable - `included-yams-cubes` of ``app.conf``. See also :ref:`components`. + - ``cubes`` : this is a library of reusable yams cubes. To use + those cubes you will list them in the variable + `included-yams-cubes` of ``app.conf``. See also :ref:`cubes`. - [WHICH OTHER ONES SHOULD BE LISTED HERE?] Dependencies @@ -112,7 +112,7 @@ 'erudi'". They disappear after the first run of i18ncompile. .. note:: The command myapp/bin/laxctl i18nupdate needs to be executed - only if your application is using components from ginco-apps. + only if your application is using cubes from ginco-apps. Otherwise, please skip it. You will never need to add new entries in the translation catalog. Instead we would diff -r d7bb01e5be9d -r 20d5eae54d57 doc/book/en/index.txt --- a/doc/book/en/index.txt Mon Dec 22 17:35:07 2008 +0100 +++ b/doc/book/en/index.txt Mon Dec 22 08:59:12 2008 -0800 @@ -16,7 +16,7 @@ * an engine driven by the explicit :ref:`data model ` of the application, * a query language name :ref:`RQL ` similar to W3C's SPARQL, * a :ref:`selection+view ` mechanism for semi-automatic XHTML/XML/JSON/text generation, -* a library of reusable :ref:`components ` (data model and views) that fulfill common needs, +* a library of reusable :ref:`cubes ` (data model and views) that fulfill common needs, * the power and flexibility of the Python_ programming language, * the reliability of SQL databases, LDAP directories, Subversion and Mercurial for storage backends.