We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Cartaro - The Geospatial CMS

00:00

Formal Metadata

Title
Cartaro - The Geospatial CMS
Title of Series
Number of Parts
95
Author
License
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this
Identifiers
Publisher
Release Date
Language
Production PlaceNottingham

Content Metadata

Subject Area
Genre
Abstract
Cartaro is a new web mapping platform that makes the power of some of the best open source geospatial components available in a content management system (CMS). Cartaro allows to set-up and run small websites or complex web applications with maps and geodata. It is also suitable for geoportals and spatial data infrastructures whenever there is the need to get everything up and running without much individual programming. The geospatial software stack used in Cartaro consists of PostGIS, GeoServer, GeoWebCache and OpenLayers. The whole stack is managed from within the CMS Drupal. The geospatial components bring professional aspects of geodata management into the CMS. This is namely the ability to persist data as true geometries, thus allowing for complex and fast queries and analyses. It does also mean supporting a whole range of data formats and the most relevant OGC standards. For the latter Cartaro can extend the handling of user roles and permissions, which already exists in Drupal, to define fully granular read and write permissions for the web services, too. In the presentation we will first explain our basic motivation behind Cartaro: that is bringing geospatial functionality to the huge community of CMS developers and users. This community, which is of course much larger than the classical FOSS4G community, has a great potential to make more and better use of geodata than it was possible with most existing tools. We will then demonstrate how far the integration with the CMS reaches and present the Drupal user interface that allows to configure most features of Cartaro. We will show how to create, edit and map geospatial content with Cartaro and we will demonstrate the publication of this content as an OGC web service. We will also go into some details concerning the architecture of Cartaro and explain how we tackled specific problems. A glimpse of the some use cases will demonstrate the real potential of Cartaro. It will also show how the focus and functionality of a Cartaro based application can be extended with the installation of any of the Drupal modules that exist for almost every task one could imagine. The presentation will close with the future perspectives for Cartaro. From a technical point of view this includes the roadmap for the next months. But it also includes a discussion of our ideas about Cartaro's role as self-supporting bridge between the geo and not-so-geo world of open source software.
WritingBlock (periodic table)AbstractionCanadian Mathematical SocietyGeometryMereologyProjective planeVideo gameXMLUML
World Wide Web ConsortiumContent management systemCasting (performing arts)MereologyProjective planeEvent horizonPlanningBranch (computer science)ResultantCanadian Mathematical SocietySoftware developerOpen sourceProduct (business)Web 2.0Point (geometry)Computer animation
Coma BerenicesContent management systemTemplate (C++)Content (media)Digital rights managementModul <Datentyp>Value-added networkRule of inferenceHost Identity ProtocolGeometryCoding theoryMotion captureMass flow ratePrice indexConsistencyLipschitz-StetigkeitVisualization (computer graphics)Web serviceQuery languageForm (programming)NumberDirection (geometry)Physical systemFunction (mathematics)GeometryOpen sourceWeb applicationArithmetic meanData typePlug-in (computing)Canadian Mathematical SocietyGroup actionPoint (geometry)Electronic visual displayCartesian coordinate systemGoodness of fitPrice indexModul <Software>Formal languageCodeForceWeb serviceVisualization (computer graphics)Query languageOpen setContent management systemLevel (video gaming)Projective planeContent (media)Internationalization and localizationText editorLibrary (computing)GeometryField (computer science)System administratorInsertion lossWorkstation <Musikinstrument>State of matterBuildingNumbering schemeMassDecision theorySet (mathematics)Multiplication signData managementPhysical lawExtension (kinesiology)Dependent and independent variablesCommutatorBlogSystem callResultantMoment (mathematics)Term (mathematics)Template (C++)Computer animation
Mobile appLevel (video gaming)WebsiteModul <Software>Cartesian coordinate systemModul <Software>Open sourceSoftwareWeb serviceFront and back endsComplex (psychology)Texture mappingContent (media)Real numberCanadian Mathematical SocietyWebsiteGoodness of fitLibrary (computing)Different (Kate Ryan album)Open setDistribution (mathematics)Combinational logicConnectivity (graph theory)Computer architectureConfiguration spaceSurfacePhysical systemData storage deviceGeometryClient (computing)DatabaseOverhead (computing)Arithmetic meanRight angleEndliche ModelltheoriePosition operatorMobile WebNetwork topologyPoint (geometry)TelecommunicationCodeElectronic program guideComputer animation
Conditional-access moduleUniform resource nameExecution unitEmulationMetropolitan area networkPointer (computer programming)Maxima and minimaArmMenu (computing)Raw image formatOnline service providerChi-squared distributionEmailPhysical lawVacuumSpecial unitary groupComputer musicMUDHidden Markov modelUsabilityDiscrete element methodValue-added networkVarianceImpulse responseArtificial neural networkoutputNewton's law of universal gravitationWeb serviceCache (computing)Moving averageSummierbarkeitMach's principleSupremumComputer-assisted translationPlot (narrative)Rule of inferenceWide area networkPersonal area networkWorld Wide Web ConsortiumDedekind cutLinear multistep methodAreaSimultaneous localization and mappingNormed vector spaceComputer configurationLinear programmingMappingSoftware development kitJava remote method invocationLevel (video gaming)Normal (geometry)Moment (mathematics)Server (computing)User interfaceTexture mappingFunctional (mathematics)System administratorGoogle MapsGeometryComponent-based software engineeringGraphical user interfaceElectronic mailing listOpen setParameter (computer programming)Different (Kate Ryan album)Type theoryGeometryLevel (video gaming)Web 2.0Web serviceComputer programmingConnectivity (graph theory)Configuration spaceModul <Software>Computer fileGUI widgetRight angleINTEGRALRange (statistics)CausalityTorusWebsiteMaxima and minimaMatching (graph theory)EmailField (computer science)FrequencySoftware testingMereologyWhiteboardPhysical lawState of matterCodeMultiplication signGroup actionCartesian coordinate systemWiMAX10 (number)CASE <Informatik>Computer animation
ArmMetropolitan area networkLevel (video gaming)Spherical capInterior (topology)Multitier architectureConditional-access moduleRadio-frequency identification3 (number)MP3Execution unitVarianceReceiver operating characteristicLipschitz-StetigkeitEmailField (computer science)SummierbarkeitKeyboard shortcutModul <Software>Component-based software engineeringGamma functionInformation managementGeometryServer (computing)Component-based software engineeringSynchronizationGeometryType theoryPlug-in (computing)Connectivity (graph theory)User interfaceProjective planePolygonCanadian Mathematical SocietyModul <Software>Field (computer science)MultiplicationPower (physics)User interfaceContent (media)Price indexFlow separationQuery languageOrder (biology)Data storage deviceSoftware frameworkEndliche ModelltheorieGroup actionOpen setRight angleMultiplication signSpacetimePulse (signal processing)ResultantIdentity managementFrequencyTerm (mathematics)Point (geometry)Execution unitMereologyVideo gameComputer animation
Metropolitan area networkSolitary confinementUniform resource nameInformation managementEmailEmulationCore dumpExtension (kinesiology)Raw image formatPrice indexModul <Software>Simultaneous localization and mappingView (database)View (database)Computer fileModul <Software>Different (Kate Ryan album)Open sourceGeometryContent (media)Query languageField (computer science)SynchronizationEmailAuditory maskingInsertion lossEndliche ModelltheorieBeta functionComplex (psychology)SimulationComputer animationSource codeProgram flowchart
Web serviceGeometryCoding theoryView (database)Genetic programmingLetterpress printingMappingGUI widget3 (number)Software testingMereologyLetterpress printingCartesian coordinate systemModul <Software>INTEGRALView (database)Graphical user interfaceStability theoryOpen sourceSinc functionOpen setGame controllerStandard deviationFlow separationClient (computing)Moment (mathematics)Software developerOrder (biology)Differential (mechanical device)Multiplication signFunctional (mathematics)Direction (geometry)Demo (music)GeometryRevision controlMereologyLevel (video gaming)Reading (process)WritingWeb serviceAreaGUI widgetSymbol tableGenetic programmingShape (magazine)Numbering schemeComputer fileInsertion lossFilm editingCodeMatching (graph theory)Boss CorporationComputer animation
Software testingRevision controlMereologyGeometryNim-SpielMetropolitan area networkLogarithmDemo (music)Information managementSineAriana TVDuality (mathematics)5 (number)Maxima and minimaComputer fileContent management systemAddressing modeColor managementEmailData managementPhysical systemGeometryWebsiteConfiguration spaceOrder (biology)Formal languageBitSelf-organizationPoint (geometry)Level (video gaming)Computer programmingServer (computing)INTEGRALConnectivity (graph theory)System administratorUser interfaceProduct (business)Normal (geometry)Video gameLocal ringPopulation densityGroup actionMereologyTexture mappingMultiplication signCausalityMoment (mathematics)QuicksortComputer animation
Transcript: English(auto-generated)
Hello everybody Yes, I want to show you something about a new idea geospatial CMS cartaro it is called in the abstract We've written. It's a new kid on the block. So It's a rather young project But it's also a project that has something to do with OS geo because it's also part of the OS geo live DVD
But first to start a short introduction what we are doing. We are a company based in southwestern, Germany mainly working in Germany and in Switzerland doing all kind of geospatial development geodatabases post GIS web GIS, but also stuff like business solutions so where GIS is only a small part of it and
whereas all the other points are Normally customer projects. There's also this branch We call the geospatial CMS or something like an open source product. We have developed and want to propagate and implement within projects
We have always been active in the fields of open source, so always it means since more or less 11 years When the company was founded we all have only built projects based on open source and all also contributing to open source projects for example within the open layers
We have committed codes or maybe you know the open layers editor so that small library that allows editing features based on open layers in a web application If you're interested you can also check our github account
But now back to Cartaro, what's the idea behind it? Let's start about the usual features of a content management system Content management system of course allows to manage content It normally brings a very good user and role administration at least for the better
CMS you can go into into detail as far as role administration and privileges is concerned It always brings some international internationalization localization, so we can use it in multiple languages Most of the CMS also bring versioning versioning built in so you don't lose old contents
But you can always go back to them, then I think very important for CMS It should bring some layout and templating system because in the CMS It's normally much more important than in the normal geospatial world to create attractive guys for good look and feel and for very individual applications, and so we can
Get use use this should mean template not template of course Another nice feature most CMS bring editorial workflows so built-in workflows that allow some groups of people to
Enter data to edit data and to have other groups of people that are the the publishers that are responsible for publishing and Depending on your CMS these workflows can be very simple or you can have many different roles that all Have to contribute to the content before it's being published and of course Most bigger CMS have some systems of modules or plugins that allow for easy extensibility of it
Now all these points are as I said for general CMS very typical And I would say all these features would be very attractive for geospatial too So we also want to manage our geospatial data
We may want to do is to attribute some privileges to it who is allowed to edit and who is allowed to publish and so on so all these points would be very nice and so that's Why the idea was created to build some geospatial CMS So we want to extend the features of a normal CMS to geo data in the way that we need
Possibilities to edit the data to persist data and of course to display and maybe analyze them and We need means for data capture so being being it ways to import data or
To create geo data by geo coding or of course by direct editing within the application So, of course we are not the first with the idea of a geospatial CMS There are many CMS that allow To store spatial data and to enter spatial data in some way
But normally it's always done in form of simple numbers or texts So you do not find many CMS that really have some geometric Geometry data types within it. So for us it was clear that especially as far as persistence of data is concerned
We need ways that make sure that our data Are consistent that we can use spatial indices to allow to to use the system even if it's growing and To store the data in a way that guarantee the long-term availability of them As far as output is concerned. We needed a system that allowed spatial queries
So stuff like finding every feature within another feature And to us it was also important Not only to to show the data on a map within the application but also to integrate og or to offer OTC services for data publication
But of course also the visual visualization within the application was important The idea we had in mind where we wanted to push it position the geospatial CMS was Between a simple website that says only one or two maps included and some complex business applications
As you see it on the right So it's clear if you just want to include one or two maps within the website Then you don't need the overhead overhead of some Geospatial CMS and on the other hand if you have a very complex application Then the system we we have in mind is may also not be the right one because then you you will have to
Do so much coding anyways? That you can't make use of the advantages of the CMS features, but everything that is in the middle So every application that has a lot to do with maps especially applications that
Have the requirement that different people may enter data and other people may publish data all these Applications in between could be good candidates for the use of a geospatial CMS So what's the architecture between our
Geospatial CMS cartaro as you can see here it uses well-known components Open layers of course as the library for everything that's displayed in the client then in the back to choose over for Publication of web services mainly and in the back end postures as database that allows the
real storage of geometry data All that is managed from Drupal so Drupal is probably known by To most of you Drupal is one of the biggest most widespread open source CMS based on PHP and
Our idea was to put Drupal in front of all the other components so we have the possibility to Yeah, of course to use Drupal to present the content to the user to create the surface of the application But also to use the Drupal Configuration guys to allow the configuration of all other components
And Cartaro is a so-called Drupal distribution that means it's not not one fixed package of software But it's a combination of different modules these are partly modules that have been existed before before we had the idea to create cartaro and
On the other hand modules that have been especially created So for example open layers is also on the Drupal module that use the open layers library in the back But can be configured configured through Drupal
Cartaro is a distribution that means it packs together different modules, but also different themes so the look and feel of the application and different libraries And guarantees that they work together in a in a good way, but of course you could also use many modules separately
How does it look like so if you? Use the standard installation you get this this blue look that's very typical That's a normal Drupal interface, but it has also integrated an open layers map
The open layers is this one of the most important components within it You know well what open layers can do but within Cartaro you have the possibility to Define the open layers maps simply through the Drupal admin
Administration guy You can define layers can of course combine the layers into maps And you can in a simple way also define the styles that your map should use so all this is done without coding but through the interface Here an example how an open layers interface
Looks like that's the one that shows all the layers that have been defined Within your application and as you can guess from from the second column We support a whole range a whole list of different layer types web feature services Google Maps
VMTS maps so More or less all that open layers can display is also available within trooper Another example you can define different styles that should be applied to the to your layers
It can look like this But you have the possibility to to add as many styles as you like to and then of course you can Define how your map should look like and everybody who knows to how to program open layers gets an idea about the Parameters you can set so you can enter them all here in the administration interface
What you can also do with the open layers module you can define so-called behaviors That's Weird wording, but we've got used to it, so it has been
present defined like this before kataro so behaviors that means you can define which functions should be available in your open layers map That's can also call it the widgets which widgets should be available in your map And again everybody who is familiar with open layers will recognize
Many of these things you can for example define a layer switch or can define How the navigation in your map should work like? Okay, the next important component geo server. It's used for OTC services Geo server is running in the back and again
It's important that the normal user of kataro is has no need to access the geo server interface directly But all the important functionalities are again available through the trooper module Here for example you can define the old to your cheers of installation name any workspace that should be used and
Here then you can define different layers that you want to use from geo server within your kataro installation You can define styles for geo server at the moment we support only sld So there's no graphical user interface to define styles
but There are plenty of other tools available that allow you to create the sld you can copy paste into kataro then And the nice thing the integration between Drupal and geo server is very tight
Especially as far as the privileges for data and service access is defined that means within Drupal you can define the the access rights to your data and The same rights will also be applied or can be applied to the services of your geo server in the back And I think that makes it really nice because
You have one place where you define the access rights to the data, and then it's guaranteed if you access for example WMS or WFS through kugis as you can see it here you will also have to pass the Credentials that are required within the triple installation So that's one place and one place that can easily been be managed even by people who do not want to
Do any? Configurations and text files or do any programming Post GIS the last very important component of course for storage of true geometry types
For spatial queries and for the usage of spatial indices in order to keep our stuff really fast Again several screenshots how it looks like that's the Interf the usual Drupal interface that that is used to define new content types So in this example if you want a content type in your triple installation that shows the capitals of the world
you have this interface to define different fields of your content type and Now the new thing with kataro is you have also the possibility to define Geodata fields for your content type and as soon as this is done The data will be stored as geometry fields within post GIS
Exact yeah here you define more details for your geometry field so for example in
Here we chose that we want a multi polygon geometry type you can also define the projection that is used and If this is defined you will automatically get the user interface for data editing that allows either to enter date Only points or to enter polygons or whatever geometry type you have defined here
So once again the the components that are in use within kataro Post GIS with post GIS Drupal module geo server plus the corresponding module Then geo server sec that's an extension or plug-in for geo server so Java component
That it's needed to do the synchronization between the users within kataro and geo server so as I said, it's We apply the privileges from from kataro from Drupal Automatically to geo server, but then of course you have to guarantee that the users defined on both sides are identical
Then open layers plus the module and then rather New there's a goodle module That allows to to import all type of GIS as whatever directly within your kataro installation
And then the nice thing Drupal has over 20,000 different modules available that are not focused on Geo data, but that may also be very interesting for the use within your kataro installation And I think that makes the the real power of this solution
Compared to other geospatial frameworks that you really can profit from from this huge community of people that are using CMS and that are Contributing modules, and you only have to find the right module and apply it to your geo data as well and
Some things I would recommend that are Really nice modules for kataro is everything that has to do with workflows There's a whole lot of different modules that allow you to do different things with workflows for for data publication and that also allow things to do like let's say email notifications when some content is edited or
published and Then another important module within Drupal is the views module. So that's module that allows for example to create Let's say you want to search for your data
Then the views module gives you the possibility to create complex search masks that also apply to the geo data So you can easily offer the some fields to your user That allows him to enter After defining queries which features he is interested in And then the last very important module the feeds module
That's the thing that is Has always been in use within Drupal Whenever you wanted to synchronize contents between different data sources And it allowed you to import feeds or also to import files in you into your Drupal installation and
Through our good module now. It's also possible to import the geo data into it So my time is always almost over Just to tell you in which direction we want to go This mentioned integration of the views module
Will be extended so that you have easier and better ways to to query your data A new thing that's already finished now We also have a printing module now that it's based on map fish print and that allows you to Yeah to print every map you have in your kataro application
In the area of geo coding there are ongoing developments So that your kataro installation can offer geo coding services So it can interest geo coding data, but can also offer geo coding for other other applications In the area of privileges, there's already very much done, but they're still open some functionalities open
Especially what we cannot do at the moment. We cannot differentiate Read and write privileges for the services as it would be possible within geo server, but we can only say Access yes or no, but we are working
in order to extend this and then In work are also better tools for Symbolization so that you get a graphical user interface for it and then of course more map widgets because at the moment The Functionality so these these behaviors that kataro offers are more or less only the standard open layers
Controls and there's not so not so many fancy nice-looking widgets available at the moment But I'm sure development will go on so we have the first interesting Installations larger installations for several clients now, so we have great motivation to to go on with this
And another Source of motivation also comes from OS geo because kataro is also part of the OS geo live DVD Since version 6 5 now rather Youngest version 7 and version 7 contains the first stable release of kataro the version 1.0
So if you are interested to play around with kataro, there's on the one hand our online demo available There you can Play around with theta, but you can also play around this configuration
and In order to see how everything works or you can try the the quick start on the OS geo live DVD If you want to try kataro on your own system You can download all the components from the Drupal sites or from kataro org
But We want it's not so easy to to make everything work together to bring cheers or to go to talk to The Drupal installation and to talk to post chips. It's a little bit tricky, but everything is documented and I think If you have to technical skills should be feasible to install it yourself
Okay, thank you
Our organization is that we have to support about 25 different languages on our site, so say every point here's a city on a map We need to know the name of that city in 25 languages Would your product support that kind of data management currently? Yes, it would yeah, so
that's would say normal feature of Drupal that you have to support many languages and So we support it automatically because Drupal supports it
And no, so it depends if you want a real tight integration between the Drupal into Administration interface and your map server then this works only with geo server Because geo server brings the user and role management that map server does not know
and Yeah, geo server has also the HTTP API that we use from Drupal and That works only with geo server not with map server So of course if you would like to replace geo server by map server it's feasible
but you would have to do a whole lot of programming again and At least as far as the management of privileges is concerned. I Don't see a way to do it directly with map server
Okay