SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
The ECM world from the
point of view of Alfresco
You may remember me
● Open Source ECM Specialist at Sourcesence
● Author and Technical Reviewer at Packt Publishing
○ Alfresco 3 Web Services (2010)
○ GateIn Cookbook (2012)
● Alfresco Community (nickname OpenPj)
○ Alfresco Wiki Gardener
○ Global Moderator of the italian forum
○ Top 10 supporter (english and italian)
● PMC Member and Mentor at the Apache Software Foundation
○ Mentor for the Google Summer Of Code 2013
● JBoss Community
○ Content editor for jboss.org
○ Project Leader and Committer for PortletSwap (JBoss Portal)
Overview
● What is Enterprise Content Management (ECM)?
○ Java Content Repository (JCR)
● What is Alfresco?
○ Architecture
○ Spaces and Rules
○ RESTful API
● Demo
● Resources
Enterprise Content Management
Enterprise content management (ECM) is a formalized means of
organizing and storing an organization's documents, and other
content, that relate to the organization's processes. The term
encompasses strategies, methods, and tools used throughout the
lifecycle of the content.
Wikipedia
http://en.wikipedia.org/wiki/Enterprise_content_management
What is a repository?
● contents are kept is an organized way
○ ER model is the old way
○ Node graph is the new way
■ properties (metadata)
■ associations
■ renditions
● is from Latin repositorium
○ table of service
○ vessel
○ chamber
○ where to keep and find your things!!!
Enterprise Content Management
ECM

Enterprise services

Public API

Repository
Storage

Users +
groups
(LDAP, IDM)

Workflow
Engine
What is a repository? - You use it!!!
● Some simple examples:
○ SMTP servers
○ Google Drive
○ Dropbox

● Some Open Source repository implementations:
○ exoJCR
○ Apache JackRabbit
● Some Open Source ECM systems for critical usage:
○ Alfresco
○ Nuxeo
○ Hippo
What is a repository? - Decoration

apply
metadata

CMIS
JCR
REST
SOAP
IMAP
EMAIL
FTP

Repository

retrieve content using
metadata
Query Languages:
CMIS
JCR SQL
XPath
Lucene
Full Text (Google style)

Indexes
What is a repository? - Architecture
APIs (CMIS, REST, FTP, WebDAV, IMAP)
Model
Storage
Content Store
+
Indexes

Database
What is a repository? - Model
● different point of view of how managing data
○ no more Relational databases (ER)
● based on the JCR Repository Model (JSR-283)
○ workspaces
○ identifiers
○ users
○ nodes and node types (contents)
■ properties and property types
■ associations (shared nodes)
What is a repository? - Model
● A node is a generic content stored in a repository
○ type
○ properties
○ associations
○ binary streams (optional)
■ renditions
■ text document
■ Video
■ Image
What is a repository? - Graph
Properties
(metadata):

Type
Node

- name
- description
- mimetype
- tags
- categories
Renditions

Binary 1

Binary 2

Binary 3
What is a repository? - JCR Model
Repository
Workspace
1
Workspace
2
Workspace
3

Root node

A
D

B
E

C
G
Why use a repository?
● you can scale out easily
● storing very large amounts of data
● storing simple data structures, such as simple JSON
● looking up data by keys rather than using queries
● searching for data based upon relevance
● evolving schemas and/or data structures
● caching data in-memory for performance
Alfresco
● Open Source ^__^
● Community Edition
○ new features
○ wide community support
● Enterprise Edition
○ supported with SLA
○ complete release test
● Cloud-ready
● Collaboration
● CMIS
Alfresco
Alfresco Storage Architecture
JVM
Alfresco

Database

File System
Binari

File System
Indici
Alfresco - Concepts
● Aspects
○ an aspect is a tag that can decorate contents
■ adding new properties
■ adding new behaviors (trigger)
● WebScripts
○ create your own REST API
● Collaboration & Security
Alfresco - Concepts - Spaces
● Spaces
○ contains contents
○ rules for executing actions
■ event
■ actions
Alfresco - Concepts - Spaces
● Spaces can be used for implementing a specific ECM
design pattern such as Drop Zones
DEMO
Resources
Homepage:
http://www.alfresco.com
Wiki:
http://wiki.alfresco.com
Documentation:
http://docs.alfresco.com
Thank you for your
attention!

Questions?

http://www.open4dev.com

Más contenido relacionado

La actualidad más candente

Mobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameter
Mobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameterMobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameter
Mobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameter
telestax
 
Publishing skos concept schemes with skosmos
Publishing skos concept schemes with skosmosPublishing skos concept schemes with skosmos
Publishing skos concept schemes with skosmos
AIMS (Agricultural Information Management Standards)
 
Concept net150529
Concept net150529Concept net150529
Concept net150529
KangSe Lee
 
The NoSQL movement @ DotNetToscana
The NoSQL movement @ DotNetToscanaThe NoSQL movement @ DotNetToscana
The NoSQL movement @ DotNetToscana
Matteo Baglini
 

La actualidad más candente (20)

Mobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameter
Mobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameterMobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameter
Mobicents Summit 2012 - Alexandre Mendonca - Mobicents jDiameter
 
NIF Data Ingest
NIF Data IngestNIF Data Ingest
NIF Data Ingest
 
MySQL - NDB Cluster
MySQL - NDB ClusterMySQL - NDB Cluster
MySQL - NDB Cluster
 
Web Archiving: A Brief Introduction
Web Archiving: A Brief IntroductionWeb Archiving: A Brief Introduction
Web Archiving: A Brief Introduction
 
DBpedia Viewer - LDOW 2014
DBpedia Viewer - LDOW 2014DBpedia Viewer - LDOW 2014
DBpedia Viewer - LDOW 2014
 
Caltech DIBS: Digital Borrowing System
Caltech DIBS: Digital Borrowing SystemCaltech DIBS: Digital Borrowing System
Caltech DIBS: Digital Borrowing System
 
Log stage zero-cost structured logging
Log stage  zero-cost structured loggingLog stage  zero-cost structured logging
Log stage zero-cost structured logging
 
Publishing skos concept schemes with skosmos
Publishing skos concept schemes with skosmosPublishing skos concept schemes with skosmos
Publishing skos concept schemes with skosmos
 
Enabling access to Linked Media with SPARQL-MM
Enabling access to Linked Media with SPARQL-MMEnabling access to Linked Media with SPARQL-MM
Enabling access to Linked Media with SPARQL-MM
 
Legislation.gov.uk
Legislation.gov.ukLegislation.gov.uk
Legislation.gov.uk
 
Concept net150529
Concept net150529Concept net150529
Concept net150529
 
TPDL 2016 Doctoral Consortium - Web Archive Profiling
TPDL 2016 Doctoral Consortium - Web Archive ProfilingTPDL 2016 Doctoral Consortium - Web Archive Profiling
TPDL 2016 Doctoral Consortium - Web Archive Profiling
 
Andriy Kushnarov. BOND: a giant drupal in a huge company. DrupalCamp Kyiv 2011
Andriy Kushnarov. BOND: a giant drupal in a huge company. DrupalCamp Kyiv 2011Andriy Kushnarov. BOND: a giant drupal in a huge company. DrupalCamp Kyiv 2011
Andriy Kushnarov. BOND: a giant drupal in a huge company. DrupalCamp Kyiv 2011
 
Core Data
Core DataCore Data
Core Data
 
Nosql
NosqlNosql
Nosql
 
The NoSQL movement @ DotNetToscana
The NoSQL movement @ DotNetToscanaThe NoSQL movement @ DotNetToscana
The NoSQL movement @ DotNetToscana
 
TEI CONFERENCE 2016 LINHD Presentation
TEI CONFERENCE 2016 LINHD PresentationTEI CONFERENCE 2016 LINHD Presentation
TEI CONFERENCE 2016 LINHD Presentation
 
Indexing, searching, and aggregation with redi search and .net
Indexing, searching, and aggregation with redi search and .netIndexing, searching, and aggregation with redi search and .net
Indexing, searching, and aggregation with redi search and .net
 
Data driven pages in a word press site - Srikanth Meenakshi
Data driven pages in a word press site - Srikanth Meenakshi Data driven pages in a word press site - Srikanth Meenakshi
Data driven pages in a word press site - Srikanth Meenakshi
 
Archivematica in Czech Libraries
Archivematica in Czech LibrariesArchivematica in Czech Libraries
Archivematica in Czech Libraries
 

Similar a The ECM world from the point of view of Alfresco - Linux Day 2013 - Rome

2016_04_04_CNI_Spring_Meeting_Microservices
2016_04_04_CNI_Spring_Meeting_Microservices2016_04_04_CNI_Spring_Meeting_Microservices
2016_04_04_CNI_Spring_Meeting_Microservices
Jason Varghese
 

Similar a The ECM world from the point of view of Alfresco - Linux Day 2013 - Rome (20)

Apache ManifoldCF @ Linux Day 2012
Apache ManifoldCF @ Linux Day 2012Apache ManifoldCF @ Linux Day 2012
Apache ManifoldCF @ Linux Day 2012
 
The Oxford Common File Layout: A common approach to digital preservation
The Oxford Common File Layout: A common approach to digital preservationThe Oxford Common File Layout: A common approach to digital preservation
The Oxford Common File Layout: A common approach to digital preservation
 
2016_04_04_CNI_Spring_Meeting_Microservices
2016_04_04_CNI_Spring_Meeting_Microservices2016_04_04_CNI_Spring_Meeting_Microservices
2016_04_04_CNI_Spring_Meeting_Microservices
 
Archival Technologies
Archival TechnologiesArchival Technologies
Archival Technologies
 
PERICLES Information Packaging Techniques
PERICLES  Information Packaging TechniquesPERICLES  Information Packaging Techniques
PERICLES Information Packaging Techniques
 
Changing Platforms
Changing PlatformsChanging Platforms
Changing Platforms
 
TDWG VoMaG Vocabulary management workflow, 2013-10-31
TDWG VoMaG Vocabulary management workflow, 2013-10-31TDWG VoMaG Vocabulary management workflow, 2013-10-31
TDWG VoMaG Vocabulary management workflow, 2013-10-31
 
ArchivesSpace-Archivematica-DSpace Workflow Integration
ArchivesSpace-Archivematica-DSpace Workflow IntegrationArchivesSpace-Archivematica-DSpace Workflow Integration
ArchivesSpace-Archivematica-DSpace Workflow Integration
 
Ontology Access Kit_ Workshop Intro Slides.pptx
Ontology Access Kit_ Workshop Intro Slides.pptxOntology Access Kit_ Workshop Intro Slides.pptx
Ontology Access Kit_ Workshop Intro Slides.pptx
 
JCDL 2016 Doctoral Consortium - Web Archive Profiling
JCDL 2016 Doctoral Consortium - Web Archive ProfilingJCDL 2016 Doctoral Consortium - Web Archive Profiling
JCDL 2016 Doctoral Consortium - Web Archive Profiling
 
Enhancing Design with Adaptive Content
Enhancing Design with Adaptive ContentEnhancing Design with Adaptive Content
Enhancing Design with Adaptive Content
 
OCFL v1.0
OCFL v1.0OCFL v1.0
OCFL v1.0
 
JIO and WebViewers: interoperability for Javascript and Web Applications
JIO and WebViewers: interoperability  for Javascript and Web ApplicationsJIO and WebViewers: interoperability  for Javascript and Web Applications
JIO and WebViewers: interoperability for Javascript and Web Applications
 
Oslo Vancouver Onboarding
Oslo Vancouver OnboardingOslo Vancouver Onboarding
Oslo Vancouver Onboarding
 
Globe global search system oer asia_chibajapan_2012_10_15
Globe global search system oer asia_chibajapan_2012_10_15Globe global search system oer asia_chibajapan_2012_10_15
Globe global search system oer asia_chibajapan_2012_10_15
 
Presentation 16 may keynote karin bredenberg
Presentation 16 may keynote karin bredenbergPresentation 16 may keynote karin bredenberg
Presentation 16 may keynote karin bredenberg
 
SAICSIT 2011 Postgraduate Symposium Presentation
SAICSIT 2011 Postgraduate Symposium PresentationSAICSIT 2011 Postgraduate Symposium Presentation
SAICSIT 2011 Postgraduate Symposium Presentation
 
Best Practices with Sitecore
Best Practices with SitecoreBest Practices with Sitecore
Best Practices with Sitecore
 
OOR Architecture - Towards a Network of Linked Ontology Repositories
OOR Architecture - Towards a Network of Linked Ontology RepositoriesOOR Architecture - Towards a Network of Linked Ontology Repositories
OOR Architecture - Towards a Network of Linked Ontology Repositories
 
Video game controlled vocabulary in wikidata
Video game controlled vocabulary in wikidataVideo game controlled vocabulary in wikidata
Video game controlled vocabulary in wikidata
 

Más de Piergiorgio Lucidi

Más de Piergiorgio Lucidi (17)

Embracing InnerSource for your adaptive Digital Transformation
Embracing InnerSource for your adaptive Digital TransformationEmbracing InnerSource for your adaptive Digital Transformation
Embracing InnerSource for your adaptive Digital Transformation
 
Introducing the ASF at Microsoft Build 2020 - Italian Dev Community
Introducing the ASF at Microsoft Build 2020 - Italian Dev Community Introducing the ASF at Microsoft Build 2020 - Italian Dev Community
Introducing the ASF at Microsoft Build 2020 - Italian Dev Community
 
Smart Alfresco ECM Program Strategy for Your New Success Story
Smart Alfresco ECM Program Strategy for Your New Success StorySmart Alfresco ECM Program Strategy for Your New Success Story
Smart Alfresco ECM Program Strategy for Your New Success Story
 
Design your own BPM Program Strategy with Alfresco Process Services
Design your own BPM Program Strategy with Alfresco Process ServicesDesign your own BPM Program Strategy with Alfresco Process Services
Design your own BPM Program Strategy with Alfresco Process Services
 
Smart Content Migration using Apache ManifoldCF
Smart Content Migration using Apache ManifoldCFSmart Content Migration using Apache ManifoldCF
Smart Content Migration using Apache ManifoldCF
 
Alfresco Process Services Live Demo @ Red Hat Open Source Day 2017 Italy
Alfresco Process Services Live Demo @ Red Hat Open Source Day 2017 ItalyAlfresco Process Services Live Demo @ Red Hat Open Source Day 2017 Italy
Alfresco Process Services Live Demo @ Red Hat Open Source Day 2017 Italy
 
The Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's SuccessesThe Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's Successes
 
Implementing portlets using Web Scripts
Implementing portlets using Web ScriptsImplementing portlets using Web Scripts
Implementing portlets using Web Scripts
 
Alfresco Day Roma 2015 - Sourcesense
Alfresco Day Roma 2015 - SourcesenseAlfresco Day Roma 2015 - Sourcesense
Alfresco Day Roma 2015 - Sourcesense
 
Alfresco Summit 2014 - Crafter CMS - Case European Bank
Alfresco Summit 2014 - Crafter CMS - Case European BankAlfresco Summit 2014 - Crafter CMS - Case European Bank
Alfresco Summit 2014 - Crafter CMS - Case European Bank
 
Super Size Your Search
Super Size Your SearchSuper Size Your Search
Super Size Your Search
 
Integrating Alfresco with Portals
Integrating Alfresco with PortalsIntegrating Alfresco with Portals
Integrating Alfresco with Portals
 
Alfresco WebScript Connector for Apache ManifoldCF
Alfresco WebScript Connector for Apache ManifoldCFAlfresco WebScript Connector for Apache ManifoldCF
Alfresco WebScript Connector for Apache ManifoldCF
 
Apache ManifoldCF
Apache ManifoldCFApache ManifoldCF
Apache ManifoldCF
 
Hippo CMS - A first look
Hippo CMS - A first lookHippo CMS - A first look
Hippo CMS - A first look
 
Spring Ldap
Spring LdapSpring Ldap
Spring Ldap
 
Spring In Alfresco Ecm
Spring In Alfresco EcmSpring In Alfresco Ecm
Spring In Alfresco Ecm
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 

The ECM world from the point of view of Alfresco - Linux Day 2013 - Rome

  • 1. The ECM world from the point of view of Alfresco
  • 2. You may remember me ● Open Source ECM Specialist at Sourcesence ● Author and Technical Reviewer at Packt Publishing ○ Alfresco 3 Web Services (2010) ○ GateIn Cookbook (2012) ● Alfresco Community (nickname OpenPj) ○ Alfresco Wiki Gardener ○ Global Moderator of the italian forum ○ Top 10 supporter (english and italian) ● PMC Member and Mentor at the Apache Software Foundation ○ Mentor for the Google Summer Of Code 2013 ● JBoss Community ○ Content editor for jboss.org ○ Project Leader and Committer for PortletSwap (JBoss Portal)
  • 3. Overview ● What is Enterprise Content Management (ECM)? ○ Java Content Repository (JCR) ● What is Alfresco? ○ Architecture ○ Spaces and Rules ○ RESTful API ● Demo ● Resources
  • 4. Enterprise Content Management Enterprise content management (ECM) is a formalized means of organizing and storing an organization's documents, and other content, that relate to the organization's processes. The term encompasses strategies, methods, and tools used throughout the lifecycle of the content. Wikipedia http://en.wikipedia.org/wiki/Enterprise_content_management
  • 5. What is a repository? ● contents are kept is an organized way ○ ER model is the old way ○ Node graph is the new way ■ properties (metadata) ■ associations ■ renditions ● is from Latin repositorium ○ table of service ○ vessel ○ chamber ○ where to keep and find your things!!!
  • 6. Enterprise Content Management ECM Enterprise services Public API Repository Storage Users + groups (LDAP, IDM) Workflow Engine
  • 7. What is a repository? - You use it!!! ● Some simple examples: ○ SMTP servers ○ Google Drive ○ Dropbox ● Some Open Source repository implementations: ○ exoJCR ○ Apache JackRabbit ● Some Open Source ECM systems for critical usage: ○ Alfresco ○ Nuxeo ○ Hippo
  • 8. What is a repository? - Decoration apply metadata CMIS JCR REST SOAP IMAP EMAIL FTP Repository retrieve content using metadata Query Languages: CMIS JCR SQL XPath Lucene Full Text (Google style) Indexes
  • 9. What is a repository? - Architecture APIs (CMIS, REST, FTP, WebDAV, IMAP) Model Storage Content Store + Indexes Database
  • 10. What is a repository? - Model ● different point of view of how managing data ○ no more Relational databases (ER) ● based on the JCR Repository Model (JSR-283) ○ workspaces ○ identifiers ○ users ○ nodes and node types (contents) ■ properties and property types ■ associations (shared nodes)
  • 11. What is a repository? - Model ● A node is a generic content stored in a repository ○ type ○ properties ○ associations ○ binary streams (optional) ■ renditions ■ text document ■ Video ■ Image
  • 12. What is a repository? - Graph Properties (metadata): Type Node - name - description - mimetype - tags - categories Renditions Binary 1 Binary 2 Binary 3
  • 13. What is a repository? - JCR Model Repository Workspace 1 Workspace 2 Workspace 3 Root node A D B E C G
  • 14. Why use a repository? ● you can scale out easily ● storing very large amounts of data ● storing simple data structures, such as simple JSON ● looking up data by keys rather than using queries ● searching for data based upon relevance ● evolving schemas and/or data structures ● caching data in-memory for performance
  • 15. Alfresco ● Open Source ^__^ ● Community Edition ○ new features ○ wide community support ● Enterprise Edition ○ supported with SLA ○ complete release test ● Cloud-ready ● Collaboration ● CMIS
  • 18. Alfresco - Concepts ● Aspects ○ an aspect is a tag that can decorate contents ■ adding new properties ■ adding new behaviors (trigger) ● WebScripts ○ create your own REST API ● Collaboration & Security
  • 19. Alfresco - Concepts - Spaces ● Spaces ○ contains contents ○ rules for executing actions ■ event ■ actions
  • 20. Alfresco - Concepts - Spaces ● Spaces can be used for implementing a specific ECM design pattern such as Drop Zones
  • 21. DEMO
  • 23. Thank you for your attention! Questions? http://www.open4dev.com