cancel
Showing results for 
Search instead for 
Did you mean: 

Nodes, sites, content, spaces?

jocylincouch
Champ in-the-making
Champ in-the-making
I'm new to Alfresco, so I may be asking a highly nooby question however I have dilligently searched for the answer, but I don't know enough to understand yet.

I need to use CMIS in Python to create a place to store content derived from data in a project sheet; i.e. all the structure is there, the doc templates are there, the permissions are correctly set and the workflows are there.

I've been playing around with the CMIS interface for a bit and now I need to know what I need to create.

My understanding leads to believe I need to create a new site for a project in which the documents, templates and  file structure live, all with the appropriate ACLs set. Is this the best way to do it and can it be done with CMIS – I can't see how to do it.

Also I don't fully understand what nodes are in this context – my understanding leads me to believe that the other way could be to create a node (not sure how in cmis yet) and then assign the ??:site property (can't find the reference I've seen) to it.

If anyone can post a howto, or an explanation of how all these things fit together that would be great, thanks.
4 REPLIES 4

afaust
Legendary Innovator
Legendary Innovator
Hello,

in short, a "node" in Alfresco is basically a generic term for all kinds of objects in CMIS (can be document, folder or item). Every time you upload a document, create a folder etc. you are creating an Alfresco node. If you are only using CMIS to talk to Alfresco, it's better not to worry about nodes at all and stick to the CMIS vocabulary.

A site in Alfresco is just a special type of a folder, so you could create a new site via the createFolder operations in CMIS using the CMIS type "F:st:site". BUT: It is not recommended to create a site via CMIS as this will not initialize a site properly - for a site to be fully useable in Alfresco, there are secondary operations that are required (create roles, page and dashboard configurations, setup permission) that are not handled via CMIS.

Currently, there is no definitive way to support creating a site via CMIS. All potential solutions require that you prepare your Alfresco system somehow so that it automatically performs the missing steps when you do a "createFolder" operation with type "F:st:site". E.g. you could write a policy / rule / action in Alfresco that automatically performs all the secondary operations to make the site fully functional.

Note: The Alfresco Public API in version 1.0 does not yet support site creation as well, but this may very well be a feature that will be added in future versions.

Regards
Axel

jocylincouch
Champ in-the-making
Champ in-the-making
Thanks AFaust for the reply. This raises a couple of questions; would you effectively set up a set of nodes as templates – and then use CMIS to copy the structure to a new space or do something else entirely?

It sounds like CMIS may not be the right tool for this; unless I autogenerate all the appropriate XML and load it in and then use CMIS for the triggers? Can you poiint me to some docs on how to configure Alfresco so that when I do create a site in CMIS it is configured correctly?

afaust
Legendary Innovator
Legendary Innovator
Hello,

there is no single documentation for what you are trying to do, because it is a very custom thing to do.

You could be working with:
<ul>
<li><a href="http://docs.alfresco.com/4.2/tasks/tgs-spacetemplates.html">Space Templates</a></li>
<li><a href="http://docs.alfresco.com/4.2/tasks/tuh-contentrule-create.html">Content Rules</a></li>
<li><a href="http://ecmarchitect.com/alfresco-developer-series-tutorials/behaviors/tutorial/tutorial.html">Policies</a></li>
</ul>
and many more concepts…

Parts of a site could be set up via templates (e.g. the folder structure), but the XML files will always have to be created specifically because they contain some variable identifiers.

Regards
Axel

jocylincouch
Champ in-the-making
Champ in-the-making
Ok. Could you point me to the documentation which tells me what properties I would need to set on a node to make it a visible site please? My understanding is that I:
1. Set up my content model with appropriate aspects
2. Drive with cmis.

Therefore, where's the docs which tell me what I need to do to a node to make it into a visible site in Java? Does that make sense?