Tangram Documentation and Tutorials

The current maintainers believe in keeping the documentation with the code, so that it is more easily kept up to date. So, a large proportion of this section of the site is merely conversions to HTML from the POD included with Tangram.

If you are getting started with Tangram, the best introductory piece is still Jean-Louis LeRoy's Guided Tour of Tangram. However, as of Tangram 2.07_03, is no longer necessary to map every object property to a column. This is mentioned briefly on the (as yet woefully incomplete) Tangram Introduction.


Papers

I have written a white paper on how to bridge the gap between the Database Modelling camp (eg, Alzabo, DBIx::Class) and the Object Persistence camp (eg, Tangram, Pixie).

The paper is called “Database - Slave or Master?”, and was prepared for an OSDC talk. Note I will NOT just be talking about this paper, the talk will be more practical, and if I can manage it, include examples of doing Tangram-esque tricks using DBIx::Class.

Presentations

Presentation files can sometimes be a good insight into what people are saying about a topic even if you don't have the person to explain what the slides are saying. You will need OpenOffice 1.0 or later to open the presentation files.

Tangram and UML, Sam Vilain. Spork, Impress
Delivered to YAPC::Taipei, March 26, 2005. Also showed off were various items from the t/musicstore Tangram test suite. Sorry for running over time guys :-}
POOP with Tangram and UML,
Sam Vilain.
POOP stands for Perl Object-Oriented Persistence, and UML stands for the Unified Modeling Language - an OMG standard. Given at YAPC::Europe 2003 in Paris.
This tarball contains an information pack, which includes some notes and example code.
Object-Relational Mapping
Tools for Perl
,
Perrin Harkins.
Perrin compares Tangram with Class::DBI and SPOPS, two alternative modules for storing object classes in a database.

Manual pages

Recommended entry points:

Tangram::Tour
The original ``Guided Tour'' of the features of Tangram, by Jean-Louis LeRoy.
Tangram::Intro
The humble beginnings of a new guided tour, based on the next-generation features found in Tangram 2.08.
Tangram::Springfield
The classes and schema used in the Guided Tour(s).
Tangram::Storage
The main database handle class. Includes details on query syntax.
Tangram::Cursor
Return an iterator that retrieves persistent objects in a result set one by one.
Tangram::Schema
The Tangram schema structure - representing your data model so that Tangram can map it.
Tangram::Relational::Mappings
An informative text on exactly how Object Relational Mapping is accomplished by the Tangram::Relational back-end, what the different styles of mapping are, and how each is selected.
Tangram::Type
What Tangram types are available. This page is an index of other manual pages that express the data and relationship types available in Tangram.
Tangram::Type::Extending
How to write your own custom types for Tangram.
Tangram::Relational
Database-specific extensions to Tangram, such as Tangram::mysql and Tangram::Oracle. These extensions mainly add compatibility, and are not required for core operation of Tangram.