BEdita is a system to manage and publish content, a shared platform that will increase the value of your informative patrimony, a full featured Content Management Framework.
1. BEdita
A system to manage and publish content,
a shared platform that will increase the
value of your informative patrimony
Christiano Presutti | ChannelWeb
ChannelWeb / Chialab | BEdita 1
2. The open system BEdita [bi'εdita] was created to publish,
archive, manage, look through content, that continuously
grow in number, breed and interconnect…
BEdita was made to manage web sites, printed
material, multimedia archives, interactive services,
weblogs, newsletters…
Technically, BEdita is a web development framework that comes with a full
featured CMS out-of-the-box.
Details about OS platform, 3rd party software and licensing are reported below, at the end.
ChannelWeb / Chialab | BEdita 2
3. Definitions
A development framework is a software base system that
may include support programs, code libraries or other
software glued together in a software project.
Various parts of the framework may be exposed through an
Application Program Interface.
A Content Management System (or CMS) is a collection of
procedures used to manage work flow in a collaborative
environment. CMSs are used for storing, controlling,
semantically enriching, and publishing.
ChannelWeb / Chialab | BEdita 3
4. Architecture
Two main elements:
a back–end web application: built to handle content and
semantic relations, with a modern/ergonomic User Interface,
featuring chromatic association between object types
a front–end API: services, specs, conventions to build Web,
desktop or mobile frontend applications, using the native
REST/XML interface.
ChannelWeb / Chialab | BEdita 4
5. Features
i18n: content and User Interface in every language
(ISO-693-3, gettext, custom structure and a dedicated
“Translations” module)
Object oriented design: every content can be tagged, geo–
tagged, categorized, translated, published on different nodes
Object evolution: possibility to create new object types, or
new custom properties for existing types
Modularity: BEdita implements modules to perform specific
tasks and to manage different object types
ChannelWeb / Chialab | BEdita 5
6. Features
free semantic relations between objects
authentication: internal or external (supporting LDAP, OpenID
and SSO systems)
native newsletter module
integrated statistics, on content and publications
web analytics: integration with external providers like Google
analytics, Piwik or generic logfile analyser
access granularity: users and groups (dynamic privileges)
XML/REST, JSON: native interface to access and publish data
nicknames: unique alphanumeric semantic ID for URLs/apps
(friendly URLs)
ChannelWeb / Chialab | BEdita 6
7. Standards
W3C web technologies standards
Dublin Core – metadata of objects/content
RSS / Atom – automatic feeds generation
Sitemap – automatic map generation (supporting the new sitemap protocol)
REST – webservices system
CMIS – Content Management Interoperability Services (OASIS
interop. standard in progress)
Import/export filters – XML (dublin core metadata standard), VCard (command
line), OpenDocument (in progress)
I18N related – ISO 639-3 (language abbreviations), Unicode UTF-8, …
ChannelWeb / Chialab | BEdita 7
20. BEdita is a comprehensive solution for…
editors
publishers
designers
media and communication industry
online marketeers authors
developers
ChannelWeb / Chialab | BEdita 20
21. How can I provide a flexible tool for so many different
different professionals?
ChannelWeb / Chialab | BEdita 21
22. > focusing on content and users’ needs
ChannelWeb / Chialab | BEdita 22
23. What matters is not the amount of information you can
store, but the ability to:
‣ find
‣ access
‣
‣
transfer
manage
IT
‣ re-use
ChannelWeb / Chialab | BEdita 23
24. Information should be structured, conveyed and organized.
Every bit of information should be encapsulated into a
semantic frame, through which move/translate content
to–and–from men and machines.
ChannelWeb / Chialab | BEdita 24
25. How did we build a semantic frame?
ChannelWeb / Chialab | BEdita 25
26. i) typing objects
Not only generic “content”, but defined objects.
documents comments
events
questionnaires
books
galleries
biographies publications
ChannelWeb / Chialab | BEdita 26
32. A powerful feature of BEdita
To easily create and manage specialized objects
game
bycicle work of
art
recipe
possum
Like staminal cells, they have the capacity to differentiate into specialized cell
types (semantic content) with characteristics consistent with a particular
tissue (information archive) and organ (project)
ChannelWeb / Chialab | BEdita 32
33. But specialized objects are not enough.
Relations between them create contest, interaction, value.
ChannelWeb / Chialab | BEdita 30
33
34. …and relations are not the same, they’re semantic
(every single connection between objects is meaningful)
author
review
source
illustrator price
description
ChannelWeb / Chialab | BEdita 34
35. The powerful features of BEdita:
1. easily create specialized objects
2. easily create semantic relations between objects
Easily create services
built upon objects and semantic relations that occur between them
ChannelWeb / Chialab | BEdita 35
37. Objects and relationships – through the open system
BEdita – together define the informative patrimony that will
be:
‣ published and presented to people
‣ shared through the network, indexed by SEs
‣ accessible to people working on it
‣ (re)used for existing services or new ones
‣ stored and saved
…
ChannelWeb / Chialab | BEdita 37
38. An example
How BEdita can support people in the editorial workflow:
designer, editor, publisher, developer
ChannelWeb / Chialab | BEdita 38
39. The designer
People dealing with presentation of complex information
can use semi-processed material, already catalogued, split
and documented
Think about the way you recycle
The designer will focus on appealing interfaces and clever
environments.
ChannelWeb / Chialab | BEdita 39
40. The editor (subeditor, copy,…)
Throughout a single application, featuring solid interface
logics and homogeneous paradigms, he/she will manage
every single information, promote activities, communicate
with co-workers, harvest data, publish and observe the
work-flow.
A unique interface for his/her job.
draft locked
noted
fixed
on sale
scheduled trashed
ChannelWeb / Chialab | BEdita 40
45. The publisher 1
Distribution: the same content will feed various projects, i.e.
manifold publications/websites at the same time
Optimization: the same editorial office will control services
and contents. One single tool to design and manage the
production chain
Training: training of people is long lasting, shared;
experience is easily conveyed or handed out, users gain
homogeneous skills
ChannelWeb / Chialab | BEdita 45
46. The publisher 2
Value of data: the informative patrimony is structured,
meaningful and ubiquitously accessible
Innovation: data defines not only the foundation of the
“information building”, but the whole architecture, interiors
and facilities.
The publisher will focus on his core job and plan brand new
tools and services
Sharing: easily transfer, share or sell content.
ChannelWeb / Chialab | BEdita 46
47. The developer
Background: he/she is provided with a flexible inter-
operating programming environment, based on the best and
most utilized development tools
(cakePHP, JQuery, Smarty templating, RSS/Atom,…)
Services: BEdita provides all major gears behind a website/
online service out-of-the-box
Innovation: freed from all common basic tasks, he can
invent new ways, create new objects, define new relations
between them.
ChannelWeb / Chialab | BEdita 47
48. An actual scenario:
a publisher manages 4 different websites, 2 paper
issues, 3 newsletters, several editions of the book, a
weblog, the releated e-commerce, the calendar of events,
subscriptions, possums etc.
ChannelWeb / Chialab | BEdita 48
49. Each service needs an editorial office, a production
environment, a software.
ChannelWeb / Chialab | BEdita 49
50. Environments are separated.
Content should be translated, adapted and checked
before the output phase.
Every time a person moves between these separated
environments he/she must adapt and learn, because of
the differences in tools, interfaces and rules.
?
ChannelWeb / Chialab | BEdita 50
51. A comprehensive view is difficult to achieve and every
single service is strictly dependent on the related
software.
Connections between different environments are normally
based on generic links.
ChannelWeb / Chialab | BEdita 51
52. BEdita provides the ability to manage mixed and valuable
services (e-commerce, subscriptions, FAQs, bookings) and
content, all in a single working environment.
ChannelWeb / Chialab | BEdita 52
53. BEdita was designed and released freely, under a open
source licence (AGPL v.3), in order to promote
hybridization and crossbreeding.
It follows standards and it’s built to interoperate with
other systems.
Now we wish that the character of diversity in its trunk…
ChannelWeb / Chialab | BEdita 53
56. Requirements
LAMP architecture – cross-platform components (Mac/Win/
UNIXes...) – Unix (Linux), Apache and MySQL recommended
on productions systems
MySQL5 with referential integrity, views, stored procedures (other RDBMS
supported) – PHP5: OO syntax, extensive use of exceptions
3rd party integrated software
CakePHP – web application development framework
(provides MVC, i18n/l10n, Unit Testing, DB migrations, security paradigms,
caching, data validation)
Smarty – PHP templating library (View in MVC scenario)
jQuery – unobtrusive Javascript library (provides AJAX, drag'n'drop,
DOM manipulation
phpThumb, TinyMCE and more
ChannelWeb / Chialab | BEdita 56
57. Licensing
Dual licensing business model:
Affero GPLv3 license – a relatively new license, created for
online software, in order to solve the ASP loophole problem
Proprietary – same software with a few vertical add–on
modules (“pre-print production” and “e-commerce”)
ChannelWeb / Chialab | BEdita 57