Symfony and Semantic Web
July 13, 2009
After completing the theory of my master thesis, I was looking for a quick solution to implement it. Since I had some good experiences with Symfony framework, I finally decided to utilize it for implementing my master project.
- SemCEM
My project consists of three technologies: Service-Oriented Architecture (SOA), Web 2.0 and Semantic Web. It aims to find a common point between these technologies to make creation of enterprise mashups semi-automatically. Web 2.0 has a wealth of data but poor semantics and difficult integration. On the other hand, While Semantic Web solves the integration problem issue but suffers from a dearth of users. Combining these two technologies will result in a rich Web of data that is usable by both humans and machines. In my research I found out that RESTful web services are the key to this solution. REST-based architecture puts a smiley on SOA, thereby makes it more practical to be used by non-professional users. I proposed an annotation mechanism for RESTful services. The next step was implementing a mashup editor that supports my proposed model. In this step I used Symfony 1.2 that has a good support of REST architecture in conjunction with pOWL. pOWL is a Web Based Platform for Collaborative Semantic Web Development. It consists of 6 stacked tiers:
- pOWL store – SQL compatible relational database backend
- RDFAPI, RDFSAPI, OWLAPI – layered APIs for handling RDF, RDF-Schema (RDFS) and OWL
- pOWL API – containing classes and functions to build web applications on top of those APIs
- User interface – a set of PHP pages combining widgets provided by pOWL API for accessing (browsing, viewing, editing) model data in a pOWL store
Although I encountered some problems using PUT and DELETE methods of HTTP, but the final result was great. I could finish my project at three weeks thanks to good and useful Symfony plug-ins. The most time-consuming part was integrating pOWL into Symfony that was done approximately well. I called my mashup editor “SemCEM“. I have not released it yet, but I have some plans in near future to publish a demo version on semcem.com. ………………………………………………………………………………………………….
Diary:
+ Unfortunately thanks to assistant chair of our faculty plus some uninvited issues, my defense session for master degree was postpones to September!
+ My paper entitled “ Using an Enterprise Mashup Infrastructure for Just-in-Time Management of Situational Projects ” was accepted in IEEE International Conference on e-Business Engineering (ICEBE 2009). I am planning to have a trip to China to present it if possible.
+ In August I will have a trip to Amsterdam to make some important decisions for my future!
+ Besides many disappointing side effects of Iran Elections, I had this chance to be familiar with Parsatech Group, an active group with great ideas in IT.
SfCropper Plugin…
March 25, 2008
Today, I wrote a simple plugin for Symfony, my favorite PHP MVC framework. It uses scriptaculous.js and Cropper.js (developed by David Spurr ) to crop images and create cropped images using PHP GD library.
![]()

You can download it by clicking here! Installation process is as simple as other Symfony plugins:
1.Unpack and Copy plugin files to your project plugin folder.
2. Enable module in your `settings.yml`:
{{{
all:
.settings:
enabled_modules: [default, sfCropper]
}}}
3. Put sfCropper web folder into your project web folder.
4. Clear you cache:
{{{
symfony cc
}}}
5.Use it:
<?php
use_helper(‘cropper’);
//cropper_image($image_name,$image_id=’crop1′,$default_crop=1)
cropper_image(‘test.jpg’);
?>
Whispers Around A Symfony…
August 11, 2007
+ After many discussions with some of my friends,I want to say that: OK! Your are in right, Symfony is slow in execution (Without any PHP accelerator), but fast in application development! This is a simple trade off. What are you really looking for?! Speed in development process or speed in runtime execution?(or maybe both of them,Lords!) I believe that these are two inseparable aspects.To dive into Agile Programming,you must spend a few amounts of your speed.It depends on you, If your vision is a large-scale web app, you need a symfony for harmonious arrangement of your app components.The time is gone,the song is over…
~ From Old Days:
+ Say Goodbye to PHP4… [13-Jul-2007] The PHP development team announced that support for PHP 4 will continue until the end of this year only. After 2007-12-31 there will be no more releases of PHP 4.4. some of the mostly used PHP applications are only compatible with PHP4, and web hosts cannot just drop PHP4 support , But as long as hosts support PHP4, software vendors will continue to develop with it, even though PHP4 code is often very hard to maintain, debug, and add up to. Now, PHP5 is the future of PHP.We never forget our memoirs with lovely PHP4 ,but we should follow this rule that when a new thing come to bazar, old thing will be disappointed! If you want to support PHP5 go to gophp5.org and add the name of your host company or software project.
+ [July 31, 2007 ] IRAN unveiled the world’s largest handwoven carpet, worth 5.8 million $US and larger than a football pitch, to be laid out in a United Arab Emirates mosque. 65-thousand-square-foot carpet, the work of 1,200 skilled crafts people who spent 18 months working on it. Persian carpets face a rising challenge from Asian countries where labour is cheaper. Our share in the world market has dwindled to 40 percent standing at 480 million dollars in 2006.I hope that this carpet as a symbol of Persian culture , show that the Art still is in hand of Iranians!


