Below are the core components/concepts on which ActiveSiteNG works.
As the name suggests a ContentType is used to define the different type of contents that will be used in the site. The ContentType contains the fields contained in it along with list of predefined templates that are used to render the page for this content type
e.g. Content types can be News, Downloads, Jobs.
News can have fields like
Each field in a content type can be of the following types
A Document is an instance of a ContentType. A Document has a name, owner, creation dates, etc. A Document can have one or more versions in one or more language. Version is explain below.
Versions are used for version management of content like in SCM. A Document is only a container for a piece of content. The actual data for all fields of a Document (Headline, Date, Short description, etc in above example) is stored in a version. A Version also belong to a locale(or default). Only one version in a language can be online at a time for a given Document. The online version is what is displayed on the site.
Folders are used to define sections of the site and to arrange content pages under the same. Folder have a url path and label. Labels can be defined for multiple locales. Folder have a sequence to manage its order w.r.t to other folders which are its peers. Not to mention a folder can have sub folders and so on.
e.g. /home/about-us is a folder path for about-us folder under home folder
A page is a url given to a particular Document in ActiveSiteNG. A page belongs to have document, folder and has a name. It also has a jsp template which is used to render the related Document.