%%tabbedSection 
%%tab-JSR170
The Alfresco repository conforms to the Java Specification Request (JSR) 170, the Content Repository API for Java Technology Specification. The goals of JSR170 are to ensure that the repository interface is independent of the underlying architecture or storage technology.  For the educational community this means, for example, that repository systems that are compliant with JSR170 can harvest educational resources from other compliant repositories.\\

In JSR170 a repository is composed of one or more ''workspaces'', which are referred to as ''stores ''in Alfresco.

In Alfresco, each store is composed of a set of ''nodes ''which represent either a folder or a content item such as a document or multimedia resource.  The nodes are organised in a tree structure.  There is one root node, which has no parent node, while every other node has exactly one parent node.

Each node can be associated with one or more ''properties''.  Each property is associated with only one node.

/%
%%tab-Stores
Each store is identified by its name or ''StoreHandle''. A StoreHandle has 2 parts: the protocol and the identifier.  An example is {{workspace://default}} in which workspace is the protocol and default is the identifier. (This style of identifying workspaces is not part of JSR170 which simply specifies a string handle.)  The protocol and identifier are also referred to as ''schema ''and ''address'', respectively, in the Alfresco documentation.

A store is similar to a drive in a computer filesystem consisting of a hierarchy of folders containing resources.  The major difference is that the folders in Alfresco can be associated with a namespace and a set of properties that can be used for categorisation purposes, for example.  The phrase 'smart folders' is sometimes used in this context.

\\

!Hierarchical and non-hierarchical store representations

!Alfresco Default Stores

An administrator can use the Alfresco Node Browser to explore the node hierarchies.  Figure 1 shows the default stores that Alfresco creates at installation.

__Figure 1.  Node browser listing of default stores.__

[{Image src='node_browser.png' width='242' height='296' align='left' }]\\


{{user://alfrescoUserStore}} contains details about Alfresco users, including encrypted passwords.

\\

{{system://system}} not surprisingly contains information about the Alfresco system such as version and build details.

\\

{{workspace://lightWeightVersionStore }} and {{workspace://version2Store }} are used to support Alfresco's document versioning system.

\\

{{archive://SpacesStore}} is used to automatically store copies of deleted content. 

\\

{{workspace://SpacesStore}} is the default store for standard repository resources.

\\

{{avm://sitestore}} provides a "time machine" function.  From the Alfresco wiki: 

\\

%%quote 
Alfresco's AVM (Advanced Versioning Manager) versioned repository can act like a virtual time machine. For example, if you want to look at how a particular file appeared one month ago, you'll be able to see it against the backdrop of how everything else looked one month ago too. The state of the entire repository will be recorded in an efficient manner at each moment in its transaction history.
/%
 
\\

!workspace://SpacesStore

The default working store has a number of default children ''folders ''or ''spaces''.

\\

__Figure 2. workspace://SpacesStore children__

[{Image src='workspace_spacesstore_children.png' width='1048' height='147' align='left' }]

/%

 
%%tab-ContentModels
tab content 1
/%
%%tab-Aspects&Associations
tab content 2
/%
%%tab-Classifications&Categories
tab content 1
/%
%%tab-Users&Groups
tab content 1
/%
%%tab-Roles&Permissions
tab content 1
/%

/%