RSS feed - Using POG with Flex
- Optimizing your web application
- Regenerating large objects
- PHP4 or PHP5
- New and Improved
- Evolution of a cube
- POG Museum
- POG 3.0 alpha
- Initial Performance results Part 2
- Initial performance results
- Proposal: POG 3.0 object model
- Suggest a feature
- A new year, A new POG release
- Many-Many relations
- POG 2.5 Released
- POG 2.5 beta
- Automatic table alignment
- New version: 2.1.2 released
- RSS should work well now
- RSS feed glitches
- What's new in 2.1.0
- PHP Objects 2.1.0 (preview)
- PHP Object relations FAQ
- PHP Object Relations
- Searching base64 encoded text
- How to debug POG-generated objects
- POG UI Tips
- Featuring Of Interest links
- PHP CRUD
- POG 2.0.1: A better code generator
- A look at the POG SOAP API
- POG 2.0.0 released
- Coming soon: Generate parent-child objects
- Generated abstraction v/s dynamic abstraction
- Zend Framework preview
- Coming soon: Generate Objects through SOAP
- Easily save images and files to a database
- PHP, Paypal & POG
- Five advanced Code Generator tips
- PHP Pagination using generated objects
- PHP Code Generator benchmarks
- Representing database objects using an AJAX Tree interface
- Using SETUP in a production environment
- Description of the generated object package
- Introducing PHP Object Generator version 1.6
- Using AJAX and PHP Object Generator
- When to use Object->SaveNew()
- Generating PHP objects in 2006
- Happy Holidays
- A short video of the POG Setup process
- A sneak peek at POG 1.6
- POG Tip: Field limits
- Previous versions.
- Searching the blog and tutorials sections
- Generating code with "Other" SQL data types
- Five general POG tips
- POG source code locations
- Microsoft SQL 2005 Express Edition
- Impatiently awaiting PHP 5.1 and PDO
- Php Object Generator goes open source
- POG generates PDO compatible code
- Oracle to offer free database
- POG Google group
- Database Wrappers and POG
- Revisions
- The generator blog
- An explanation of the 'Escape' function.
- Mirror, mirror
- Using POG to solve real world problems
- A php object-relational database tool
- A simple and flexible Object Oriented approach to PHP
Back to the Code Generator
The POG Google group
The POG tutorials/code samples
The POG mirror site
Many-Many relations
written 1191 days agoSince POG 1.0 was launched about a year ago now, there has been numerous requests for object relations. POG 2.0 addressed the issues of parent-child (1-many, many-1) relations. Still, more work needed to be done for POG to really be useful in situations where many-many relations were needed. POG 2.5, released about a week ago, finally provides a simple, yet, powerful solution: Sibling Relations.
In the POG world, a sibling is an object that relates to one or many other sibling objects. Real world examples include the relations between Magazine and Subscribers: A subscriber can subscribe to one or more different magazines.
The object methods generated by POG to abstract many-many relations are similar to the ones generated for parent – child relations. We kept the API consistent so that the objects remain intuitive, and yet, are more powerful. The programmer can almost forget the underlying relations.
For instance, let’s say we have a Magazine and Subscriber object which are siblings. To associate a Magazine to a Subscriber, we only need to do something like this:
$subscriber->AddMagazine($magazine);
The thing to note here is that if Subscriber and Magazine were parent and child, instead of siblings, the code would still be
$subscriber->AddMagazine($magazine);
On the database level, however, the way the data is stored by POG is quite different. In the case of a parent-child relation, the child simply refers to the parentId using a column in the child table. In the case of siblings, POG generates a mapping (join) table which stores the sibling1_id and sibling2_id of related sibling. The data is inserted, retrieved and deleted from this mapping table transparently and does not have to be accessed directly by the developer.
More info on sibling relations can be found in the POG relations PDF document
We hope that the introduction of sibling relations will help accelerate your development even more.

This is a weblog about the Php Object Generator (POG) project, OO PHP, databases and Php code generators in general.
Php Object Generator, (POG) is an open source PHP code generator which automatically generates clean & tested Object Oriented code for your PHP4/PHP5 application.
Subscribe to our RSS feed
Feedback, Feature Requests, Bugs to:
The POG Google group
Send us a Hello through email