[h2]Introduction[/h2] I have installed Alfresco 5.0. community edition. I am following this link: http://ecmarchitect.com/alfresco-developer-series-tutorials/content/tutorial/tutorial.html. I read this couple times. I also purchased this e-book: Alfresco Developer Guide. Chapter 3 is Working with Content Models. This appears very similar to the article written.
Limitation: For now or at least for this objective, I have to work with the Alfresco 5.0. community edition.
[h2]Background & objective[/h2] I work as a developer in a J2EE product-project. Mostly deployed in JBoss (7.0) for now. Use Eclipse for our development. We have a separate sub-application to deal with documents. Our main product will communicate with this sub-app in a unique and consistent way, then this sub-app will interface with whatever the document management system there is, in this case Alfresco.
Our product has lots of entities (some are related to each other). Each of these entities can have documents associated with them. In the past, as far as I know, based on the needs of our clients, we have integrated (interfaced) with Documentum, KwikTag & Sharepoint. Now we have to interact with Alfresco. This means, Alfresco would be the document repository of our product or application.
We store about a dozen properties, that are custom to our application, on each such document. These properties, besides storing entity specific information, some of which also serve as a uniquely identifier of a document against an entity, in our application. Through our application, we insert documents with these properties, delete documents, update the properties of these documents, etc.
For programmatically communicating with Alfresco repository, typically we will have one user.
In our sub-application, I have put in open cmis (CMIS1.1) libraries. This is in the intention of communicating with Alfresco repository through CMIS.
[h2]My idea [/h2] What I have gathered so far by spending time reading the articles, books etc
Create a custom document type which extends the cm:document
Create an aspect with all our properties
Associate this aspect with our custom document type
Make sure the Alfresco applications such as the explorer, web application and/or share must know about this custom model. This is so that our client (admin) can manage the documents using the Alfresco application interfaces themselves.
Please let me know if you have a better recommendation.
[h2]Questions[/h2]
Is my idea in the right direction?
In its 2nd Chapter, the book recommends getting the SDK for doing custom modelling. Do I need this and why? Whereas the article does not emphasize much on this. Any comments would be helpful!
I have some confusion regarding the differences between Alfresco 5.0 and 4.2? In specific, for Alfresco 5.0, what are the (alfresco) applications that I can deploy (or make aware) this custom type and its aspect, so that these applications are aware of our custom type and aspect.
What is the difference between the (Alfresco) site and space? Are they same?
Space is said to be another name for folder. Is this correct?
Would it be appropriate to create a site for our own application? Can I create a user in Alfresco that can access this created site? Inside this site, can we create a space (or folder) or multiple folders to hold documents, each folder representing one of our entities?
How can I associate the custom document type with this (Alfresco) site that I am planning to create?
Just few words would help me a lot. I appreciate your help!
<blockquote>In its 2nd Chapter, the book recommends getting the SDK for doing custom modelling. Do I need this and why? Whereas the article does not emphasize much on this. Any comments would be helpful!</blockquote>
<blockquote> I have some confusion regarding the differences between Alfresco 5.0 and 4.2? In specific, for Alfresco 5.0, what are the (alfresco) applications that I can deploy (or make aware) this custom type and its aspect, so that these applications are aware of our custom type and aspect.</blockquote>
There are very few differences between the two versions, at least at a high level. In 5.0, Alfresco Explorer goes away and you are left with Alfresco Share.
<blockquote>What is the difference between the (Alfresco) site and space? Are they same?</blockquote>
A space is a folder. A site is a special type of folder. The Alfresco Share client renders site folders using a team or project collaboration metaphor.
<blockquote>Space is said to be another name for folder. Is this correct?</blockquote> Yes
<blockquote>Would it be appropriate to create a site for our own application? Can I create a user in Alfresco that can access this created site?</blockquote> Yes, you can create a user that has access to a site. But if that user isn't going to use discussions, wikis, calendars, or data lists, or if that user is really just going to access the repository from an API, it might be better to simply create a folder in the root of the repository and restrict it to your user.
<blockquote> Inside this site, can we create a space (or folder) or multiple folders to hold documents, each folder representing one of our entities?</blockquote> Yes, the "documentLibrary" folder within a Share site's root folder is functionality equivalent to any other folder in the repository, so it can contain folders and documents.
<blockquote>How can I associate the custom document type with this (Alfresco) site that I am planning to create?</blockquote>