Skip to search.

Breaking News Visit Yahoo! News for the latest.

×Close this window

metal-dev · MetaL Development

The Yahoo! Groups Product Blog

Check it out!

Group Information

? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Messages

Advanced
Messages Help
Messages 370 - 399 of 555   Oldest  |  < Older  |  Newer >  |  Newest
Messages: Show Message Summaries Sort by Date ^  
#370 From: Manuel Lemos <mlemos@...>
Date: Wed Aug 17, 2005 2:40 pm
Subject: Metastorage mailing list in Portuguese
mallemos
Send Email Send Email
 
Hello,

Due to the growing interest of Metastorage among Portuguese speaking
users, mainly from Brazil, I have created a new list to discuss
Metastorage matters in Portuguese. Subscribe instructions follow below.

In portuguese:

Devido ao interesse crescente no Metastorage entre os utilizadores que
falam Potuguês, eu criei uma lista de discussão sobre Metastorage para
ser usada por essa comunidade. Para se inscrever vá a esta página:

http://br.groups.yahoo.com/group/metastorage-pt/

Ou envie uma mensagem para:

metastorage-pt-subscribe@...

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#371 From: metal-dev@yahoogroups.com
Date: Tue Aug 30, 2005 4:46 am
Subject: New poll for metal-dev
metal-dev@yahoogroups.com
Send Email Send Email
 
Enter your vote today!  A new poll has been created for the
metal-dev group:

If you are using or planing to use Metastorage, with which
database or databases do you plan to use Metastorage
generated code? (your choices are secret and your privacy is
assured)

   o Frontbase
   o IBM DB2
   o Informix
   o Interbase/Firebird
   o JDBC (database with Java JDBC drivers)
   o MaxDB (SAP)
   o Microsoft Access
   o Microsoft SQL server
   o Mini-SQL
   o ODBC (local drivers)
   o ODBTP (remote Windows database ODBC drivers)
   o Oracle
   o PDO (database with drivers for PHP 5 PDO extension)
   o PostgreSQL
   o SQLite (PHP 5 extension)
   o Sybase
   o Other


To vote, please visit the following web page:
http://groups.yahoo.com/group/metal-dev/surveys?id=12118553

Note: Please do not reply to this message. Poll votes are
not collected via email. To vote, you must go to the Yahoo! Groups
web site listed above.

Thanks!

#372 From: Manuel Lemos <mlemos@...>
Date: Tue Aug 30, 2005 4:52 am
Subject: Metastorage database access improvements surrvey
mallemos
Send Email Send Email
 
Hello,

I am adding new features to Metabase in order to improve the
capabilities of the code generated by Metastorage.

Since it will not be possible to enhance all Metabase drivers now, I
would like you to help telling which databases you are using or plan to
use Metastorage generated code, so I can give priority to enhance first
the Metabase drivers for the most requested databases.

Please just go in this page and indicate one or more databases that you
want to use Metastorage generated code:

http://groups.yahoo.com/group/metal-dev/surveys?id=12118553

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#373 From: Manuel Lemos <mlemos@...>
Date: Fri Sep 2, 2005 4:19 am
Subject: Fixed: Metastorage database access improvements survey
mallemos
Send Email Send Email
 
Hello,

I have noticed that I missed MySQL in the survey of databases. If you
have voted before yesterday and did not see MySQL, please vote again
because I had to fix the survey and lost all the current votes.

Also, if you have specified the options, ODBC, PDO, JDBC or other, I
would appreciate if you could tell me which underlying databases would
you like to use with these APIs.


I am adding new features to Metabase in order to improve the
capabilities of the code generated by Metastorage.

Since it will not be possible to enhance all Metabase drivers now, I
would like you to help telling which databases you are using or plan to
use Metastorage generated code, so I can give priority to enhance first
the Metabase drivers for the most requested databases.

Please just go in this page and indicate one or more databases that you
want to use Metastorage generated code:

http://groups.yahoo.com/group/metal-dev/surveys?id=12118553

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#374 From: Manuel Lemos <mlemos@...>
Date: Thu Sep 8, 2005 12:41 am
Subject: New release imminent with auto-increment and primary key support
mallemos
Send Email Send Email
 
Hello,

A new Metabase release is imminent. All new features were implemented,
tested and documented. I am just finishing to update the tutorials and
tomorrow I expect to make a release.

The current development of Metabase features is mostly motivated to
address needs of Metastorage. Since it takes a lot of time to enhance
all the available drivers to implement the new features, for now only
MySQL, PostgreSQL and Oracle drivers were updated.

In case you are not yet aware, I have put up a survey to figure which
other drivers would be worth investing time to update, giving priority
to databases that users that really intend to use Metastorage want to
use. So, if you want to use Metastorage, please go to this survey page
and indicate which database or databases you want to use Metastorage.

After a long time without significant enhancements to Metabase, I am
finally adding support to database schema features like auto-increment
fields and primary keys. Future versions of Metastorage will generate
code that takes advantage of these features.

http://groups.yahoo.com/group/metal-dev/surveys?id=12118553

If you don't know what Metastorage is, it is a code generator tool that
generate classes of objects that perform object-relational mapping based
on a model definition in a XML format.

This is basically meant to provide dramatic improvement in the quality
of PHP database application development, reducing drastically the
development time, especially of medium or large scale applications.

http://www.meta-language.net/metastorage.html


As for this release of Metabase it provides:

- Support for auto-increment key fields in a database independent way.
It works very well even on databases like Oracle that do not support
auto-increment fields natively.

There are new API functions to support auto-increment fields:
GetNextKey, GetInsertedKey, and SetQueryKey which is a very innovating
feature that lets you bind a value of a prepared query to an
auto-increment table field.

Using just these functions Metabase figures automatically whether native
auto-increment fields or sequences will be used. There is no need to
verify that at runtime and the code will always be database independent.

- Support for primary keys. Primary keys are implicit with tables using
auto-incremented key fields but Metabase also supports compound keys.

- Migration to alter tables and start using auto-increment fields and
primary keys works flawlessly. I have implemented this in the PHP
Classes site that has tens of tables that were migrated with a simple
change in a XML database schema definition.

If before you had>

<table>

   <name>sometable</name>

   <declaration>

    <field> <name>id</name> <type>integer</type> <notnull>1</notnull>
<default>0</default> </field>
    <field> <name>someotherfield</name> <type>text</type> </field>

    <index>
     <name>sometable_id_index</name>
     <field> <name>id</name> </field>
     <unique>1</unique>
    </index>

   </declaration>

</table>

<sequence>
   <name>sometable_id</name>
   <start>1</start>
   <on> <table>file_accesses_queue</table> <field>id</field> </on>
</sequence>


Now you just need this:

<table>

   <name>sometable</name>

   <declaration>

    <field> <name>id</name> <autoincrement>1</autoincrement> </field>
    <field> <name>someotherfield</name> <type>text</type> </field>

   </declaration>

</table>

Migrating from one kind of schema to the other just takes this change.
Metabase will take care of the field changes and the implicit primary
key association.

As for applications code you just need to change something like this:

$db->GetNextSequenceValue("sometable_id", $id);

$db->Query("INSERT INTO sometable (id, someotherfield) VALUES(".$id,",
'some other value')";

to:

$db->GetNextKey("sometable", $key);

$db->Query("INSERT INTO sometable (id, someotherfield) VALUES(".$key,",
'some other value')";

$db->GetInsertedKey("sometable", $id);


- There are new database manager API functions named
CreateDetailedTable and DropDetailedTable. These are used by the schema
manager class to create and drop tables with auto-increment fields and
primary keys.

- The schema manager now performs a safety check when installing or
altering databases with new tables. If it is not possible to create a
table because the current driver does not support some features, nothing
is changed in the database and the schema manager will return an
explanatory error message.

- Schema reverse engineering of database tables with auto-increment
fields or primary keys is now implemented for now for MySQL only.

- The driver test suite has now a new tests named autoincrement and
preparedautoincrement that try to insert a few records in a new table
with an autoincrement field and verifies if it worked correctly either
using direct queries or prepared queries.


For now this new version is available in CVS. You may find instructions
on how to obtain access to the CVS server or a download daily snapshots
from here:

http://www.meta-language.net/download.html

Please test these improvements and let me know if you would like to seem
them also implemented in databases that are not yet supported.

The updated version of the documentation is available here. The tutorial
will be updated  soon.

http://www.meta-language.net/metabase.html


--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#375 From: Manuel Lemos <mlemos@...>
Date: Tue Sep 13, 2005 6:10 am
Subject: Metastorage generates commented code and uses native auto-increment fields
mallemos
Send Email Send Email
 
Hello,

A new version of Metastorage was released providing several improvements
in the quality of the generated code, being the most important, the use
of comments explaining the purpose of the generated code, and the use of
native auto-increment fields for generating identifiers for objects
being stored for the first time.

Read the complete news article here:

http://www.meta-language.net/news-2005-09-13-metastorage.html

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#376 From: Manuel Lemos <mlemos@...>
Date: Wed Sep 21, 2005 4:52 am
Subject: New Metabase release and Metastorage roadmap
mallemos
Send Email Send Email
 
Hello,

In case you don't know, I have just released a new version of Metabase.

This release includes support for inserting rows in tables omitting the
auto-increment field values and make such field get the next
auto-increment value automatically in DBMS that support it.

The Microsoft SQL server version was enhanced to support native
auto-increment fields, primary keys and support several new types of
schema table alterations.

The Oracle driver has also enhanced to use triggers implicitly to
initialize the values of auto-increment fields when these values are
omitted or set to NULL in INSERT queries.

If you pick the MetaL and Metastorage bundle archives generated from the
CVS snapshots, it already includes the latest Metabase version:

http://www.meta-language.net/download.html#snapshots

My short term plan for Metastorage should address these issues:

- Use auto-increment fields omitting their values as it is faster on
some databases (like MS-SQL that requires INSERT query rewriting).

- BLOB class variable support

- Pattern matching support (LIKE operator) to implement new OQL
operatores like startswith, contains and endswith. This will depend a
Metabase feature to be added that will provide database pattern wildcard
escaping.

- Add code generation options file to let developers customize details
of generation to address better their projects: like PHP 5 optimized vs.
PHP 4 compatible, toggle the comments in the generated code, namespace
prefixes for class names, generate setter and getter functions, etc..

- Add the section of report classes of the Metastorage tutorial

- Support more database drivers with native auto-increment support (you
tell me which you want to use)

- Other important features (you tell me about it).

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#377 From: Manuel Lemos <mlemos@...>
Date: Wed Sep 21, 2005 5:02 am
Subject: Metastorage success cases
mallemos
Send Email Send Email
 
Hello,

Once in a while I am asked about examples of projects that use
Metastorage. Basically, people want to be convinced or convince their
bosses that using Metastorage is a good thing beneficial for their
developments.

I can give examples of my own projects but that is not as convincing as
it would be if I also presented cases of projects of other people that
also used Metastorage with success.

I know that not everybody can disclose details about the projects on
which they are using Metastorage. Some projects may also not be public
or functional enough to be used.

However, I would still appreciate all of you that are using Metastorage
and can disclose something to about your projects and what Metastorage
provided to benefit your developments.

I would like to put up a page with Metastorage success cases gallery. I
have no problem is linking to the companies that you are working for and
provide your businesses some exposure. So, if you can help me building
this Metastorage cases page, please contact me, privately if you prefer,
so you can let me know what you can disclose. Just follow up in this
list or mail me at mlemos@... .


--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#378 From: "Allyson Francisco de Paula Reis" <ragen.dazs@...>
Date: Sat Sep 24, 2005 12:12 am
Subject: XMI from umbrello 1.4.2
ragen_profano
Send Email Send Email
 
Hello,

The current version of conv.xslt are parsing xmi generated in the
umbrello 1.4.2?

Using the demo.xmi (from umbrello 1.2 version) the parsed document
works correctly, but not in 1.4.2 -_-

What`s going on?


Tks...

#379 From: Manuel Lemos <mlemos@...>
Date: Sat Sep 24, 2005 12:47 am
Subject: Re: XMI from umbrello 1.4.2
mallemos
Send Email Send Email
 
Hello,

on 09/23/2005 09:12 PM Allyson Francisco de Paula Reis said the following:
> Hello,
>
> The current version of conv.xslt are parsing xmi generated in the
> umbrello 1.4.2?
>
> Using the demo.xmi (from umbrello 1.2 version) the parsed document
> works correctly, but not in 1.4.2 -_-
>
> What`s going on?

Can you please sent a test file here, so I can take a look?

http://groups.yahoo.com/group/metal-dev/files/metastorage/xmi2metastorage/test/


Meanwhile. the good news is that Teoni Valois is working of AJAX Web
based interfact to edit Metastorage components with XMI inport support.

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#380 From: "Allyson Francisco de Paula Reis" <ragen.dazs@...>
Date: Sat Sep 24, 2005 10:44 am
Subject: Re: XMI from umbrello 1.4.2
ragen_profano
Send Email Send Email
 
It`s done.

Looking the demo.xmi and my example I can see that files have a greate
difference about data size (demo.xmi have 21k and my example 147k).

For now I have a question... Can I take de raw xmi (file without
striping tags by the my own hand) and convert using the conv.xslt?

Tks

--- In metal-dev@yahoogroups.com, Manuel Lemos <mlemos@a...> wrote:
> Hello,
>
> on 09/23/2005 09:12 PM Allyson Francisco de Paula Reis said the
following:
> > Hello,
> >
> > The current version of conv.xslt are parsing xmi generated in the
> > umbrello 1.4.2?
> >
> > Using the demo.xmi (from umbrello 1.2 version) the parsed document
> > works correctly, but not in 1.4.2 -_-
> >
> > What`s going on?
>
> Can you please sent a test file here, so I can take a look?
>
>
http://groups.yahoo.com/group/metal-dev/files/metastorage/xmi2metastorage/test/
>
>
> Meanwhile. the good news is that Teoni Valois is working of AJAX Web
> based interfact to edit Metastorage components with XMI inport support.
>
> --
>
> Regards,
> Manuel Lemos
>
> PHP Classes - Free ready to use OOP components written in PHP
> http://www.phpclasses.org/
>
> PHP Reviews - Reviews of PHP books and other products
> http://www.phpclasses.org/reviews/
>
> Metastorage - Data object relational mapping layer generator
> http://www.meta-language.net/metastorage.html

#381 From: Manuel Lemos <mlemos@...>
Date: Sat Sep 24, 2005 10:07 pm
Subject: Re: Re: XMI from umbrello 1.4.2
mallemos
Send Email Send Email
 
Hello,

on 09/24/2005 07:44 AM Allyson Francisco de Paula Reis said the following:
> Looking the demo.xmi and my example I can see that files have a greate
> difference about data size (demo.xmi have 21k and my example 147k).

That is not relevant.

> For now I have a question... Can I take de raw xmi (file without
> striping tags by the my own hand) and convert using the conv.xslt?

I am not sure what is the problem because I am not a XSL expert, but it
seems that if you change the UML namespace definition it works well.

Just change the root tag xmlns:UML="http://schema.omg.org/spec/UML/1.3"
to xmlns:UML="org.omg/standards/UML" .

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#382 From: Peter Howard <pjh@...>
Date: Sun Sep 25, 2005 12:05 am
Subject: Re: XMI from umbrello 1.4.2
pjhacnau
Send Email Send Email
 
On Fri, 2005-09-23 at 21:47 -0300, Manuel Lemos wrote:
> Hello,
>
> on 09/23/2005 09:12 PM Allyson Francisco de Paula Reis said the
> following:
> > Hello,
> >
> > The current version of conv.xslt are parsing xmi generated in the
> > umbrello 1.4.2?
> >
> > Using the demo.xmi (from umbrello 1.2 version) the parsed document
> > works correctly, but not in 1.4.2 -_-
> >
> > What`s going on?
>
> Can you please sent a test file here, so I can take a look?
>
> http://groups.yahoo.com/group/metal-
> dev/files/metastorage/xmi2metastorage/test/
>
>
> Meanwhile. the good news is that Teoni Valois is working of AJAX Web
> based interfact to edit Metastorage components with XMI inport
> support.


Timing.  Just as I'm thinking about looking at this again, the first
person to mail anything about it!

Manuel, has anything happened to that script since I last touched it a
year ago?

Can you point me to Teoni's work?  I'd be interested in having a look.


Allyson: The problem is that certain tags changed their name between
umbrello versions; I intended to auto-detect which was in use but never
got back to it.  The script, as I left it, was very much a "first pass &
proof of concept", not a finished product.


>
> ______________________________________________________________________
>
--
Peter Howard
pjh@...
Jabber Id: pjhacnau@...
AIM Id: pjhacnau



[Non-text portions of this message have been removed]

#383 From: Manuel Lemos <mlemos@...>
Date: Sun Sep 25, 2005 1:43 am
Subject: Re: XMI from umbrello 1.4.2
mallemos
Send Email Send Email
 
Hello,

on 09/24/2005 09:05 PM Peter Howard said the following:
> Timing.  Just as I'm thinking about looking at this again, the first
> person to mail anything about it!

Great.


> Manuel, has anything happened to that script since I last touched it a
> year ago?

No, that I know.



> Can you point me to Teoni's work?  I'd be interested in having a look.

He is testing some AJAX classes to build a Web interface.

He has already published a package for generating PHP Classes from UML
definitions in XMI. He has made it generate Metastorage components but
it is a PHP GTK program. I will see if publishes the Metastorage
version. Meanwhile the PHP Classes version is available here:

http://www.phpclasses.org/uml2classes


> Allyson: The problem is that certain tags changed their name between
> umbrello versions; I intended to auto-detect which was in use but never
> got back to it.  The script, as I left it, was very much a "first pass &
> proof of concept", not a finished product.

As you may have noticed in my other message, changing the UML namespace
declaration solved the problem. I just don't understand why.


--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#384 From: "Allyson Francisco de Paula Reis" <ragen.dazs@...>
Date: Tue Sep 27, 2005 1:19 pm
Subject: Metastorage in the IRC
ragen_profano
Send Email Send Email
 
Hello,

I would like to invite all members of this group to access #metastorage
channel in irc.freenode.org network.

The objective is increase the information exchange around members in
this project.

Regards,

Allyson de Paula

#385 From: "Peter Howard" <pjh@...>
Date: Wed Oct 5, 2005 5:41 am
Subject: Re: XMI from umbrello 1.4.2
pjhacnau
Send Email Send Email
 
>     Hello,
>
>  on 09/24/2005 09:05 PM Peter Howard said the following:
>  > Timing.  Just as I'm thinking about looking at this again, the first
>  > person to mail anything about it!
>
>  Great.
>
>
>  > Manuel, has anything happened to that script since I last touched it a
>  > year ago?
>
>  No, that I know.
>
>
>
>  > Can you point me to Teoni's work?  I'd be interested in having a look.
>
>  He is testing some AJAX classes to build a Web interface.
>
>  He has already published a package for generating PHP Classes from UML
>  definitions in XMI. He has made it generate Metastorage components but
>  it is a PHP GTK program. I will see if publishes the Metastorage
>  version. Meanwhile the PHP Classes version is available here:
>
>  http://www.phpclasses.org/uml2classes
>
>
>  > Allyson: The problem is that certain tags changed their name between
>  > umbrello versions; I intended to auto-detect which was in use but never
>  > got back to it.  The script, as I left it, was very much a "first
> pass &
>  > proof of concept", not a finished product.
>
>  As you may have noticed in my other message, changing the UML namespace
>  declaration solved the problem. I just don't understand why.
>

My interpretation is that even though the namespaces have the same "name",
if their definition files are different they aren't the same namespace.  I
ran xsltproc with the -v option and it was stating that it couldn't find a
template for all the UML:* entities with the two different.

PJH

#386 From: Manuel Lemos <mlemos@...>
Date: Wed Nov 2, 2005 5:36 am
Subject: New transaction support and handwritten code customizations
mallemos
Send Email Send Email
 
Hello,

A new release of Metastorage is out!

- This release adds support for generating functions to manage transactions.

- Metastorage now lets the developer integrate handwritten code
customizations in PHP with the code of the classes generated by
Metastorage. The integration is done without loosing the customizations
when the classes are regenerated.

- It is also possible to retrieve object identifiers of reference
variables (1-many relationships) of classes of external components.

- Several bugs were fixed to handle uncommon situations.


Please read the full release news article here:

http://www.meta-language.net/news-2005-11-02-metastorage.html


--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#387 From: Manuel Lemos <mlemos@...>
Date: Tue Nov 8, 2005 7:09 pm
Subject: Updated Metastorage presentation and tutorial slides
mallemos
Send Email Send Email
 
Hello,

I have been presenting Metastorage in several places in Brazil lately.
The Metastorage presentation has been improved. Now there is also a
tutorial presentation.

For now the presentation materials are only available in Portuguese.
Maybe I will prepare english versions of these materials if I am invited
to give the presentations to non-Portuguese speaking users.

Anyway, the updated presentation files are available here:

http://www.meta-language.net/presentations.html

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

#388 From: Manuel Lemos <mlemos@...>
Date: Tue Nov 22, 2005 7:45 pm
Subject: Metabase SQLite driver ready for use with Metastorage
mallemos
Send Email Send Email
 
Hello,

This is just a notice to let you know that the Metabase SQLite driver
was updated to support native auto-increment fields and primary keys
thanks to a contribution of John Walton. So, now you can use it with
Metastorage generated code.

This driver works with the SQLite extension that comes with PHP 5 but
also works with PHP 4 if you download the extension separately from the
PECL repository.

Just download the version from MetaL CVS repository and you are ready to
use this update.

So far Metastorage generated code can work with MySQL, PostgreSQL,
Oracle, Microsoft SQL server and SQLite.

I would like to take this opportunity to let you know that if you want
to work with Metastorage generated code using a database that is not yet
supported but you are willing to work on whatever is necessary to write
or update the respective Metabase driver, just let me know and I will
guide you through the necessary steps.


--

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

#389 From: "mallemos" <mlemos@...>
Date: Fri Dec 16, 2005 7:51 pm
Subject: New Metastorage version with support for large data variables (BLOBs)
mallemos
Send Email Send Email
 
Hello,

I have just finished implementing the support for BLOBs as class
variables.

These types are stored by variables of type largedata. By default
largedata variables are binary (BLOB) but they may also be of text (CLOB).

Two new types of functions were introduced to lazy load and store
largedata variables. They can be stored or retrieved from string
parameters or from files. This simplifies greatly the access to these
types of database fields and usually they require the use of prepared
queries.

I will be writing the necessary documentation this weekend. It will be
posted on the site soon. Meanwhile the latest changes are available
from the CVS repository:

http://www.meta-language.net/download.html#cvs

Regards,
Manuel Lemos

#390 From: Manuel Lemos <mlemos@...>
Date: Wed Dec 21, 2005 7:25 am
Subject: New large data variable (BLOB) support and database schema renaming
mallemos
Send Email Send Email
 
Hello,

A new version of Metastorage was released featuring support for large
data variables, also known as BLOBs - Binary Large OBjects, and
providing means to upgrade database schemas without destroying
previously stored objects when classes, variables or collections are
renamed.

Here is the full new article:

http://www.meta-language.net/news-2005-12-21-metastorage.html

--

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

#391 From: Manuel Lemos <mlemos@...>
Date: Wed Dec 21, 2005 7:43 am
Subject: Rate Metastorage
mallemos
Send Email Send Email
 
Hello,

In order to get greater visibility to the Metastorage project, it would
be good if all of you that appreciate it could rate it in Hotscripts and
Freshmeat. That would help getting greater visibility to the project and
so attract more users to contribute at least to help testing Metastorage
or suggest new features.

The Hotscripts rate box may be found here:

http://www.meta-language.net/metastorage.html

Or here:

http://www.hotscripts.com/Detailed/55432.html

Metastorage rating page in Freshmeat may be found here:

http://freshmeat.net/rate/33243/

--

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

#392 From: Peter Howard <pjh@...>
Date: Fri Dec 23, 2005 12:40 am
Subject: XMI to Metastorage XML converter - some progress
pjhacnau
Send Email Send Email
 
After more than a year, I've finally done some more playing on this.  I
thought I'd put it up in it's current form so that you can have a look.
Files have been updated at

http://groups.yahoo.com/group/metal-
dev/files/metastorage/xmi2metastorage/

I'm working against Umbrello 1.4.1

The two main things to note are:
      1. Since I started, Umbrello has removed the name I used for the
         component name in the xmi.  As a result, the xsltproc invocation
         now has to look like: "xsltproc --stringparam project {name}
         conv.xslt {xmi file} > {xml file}
      2. The script now expects the classes it will deal with to be in a
         package named "Persistent".  If you compare test/singleTest.xmi
         to test/singleTest2.xmi you'll see the change needed.

Also, class member functions require a stereotype to indicate what type
of function it should be for metastorage purposes.

The resultant output still can't be processed by metastorage without
hand-editing of the xml output, but it is getting much closer.

--
Peter Howard
pjh@...
Jabber Id: pjhacnau@...
AIM Id: pjhacnau



[Non-text portions of this message have been removed]

#393 From: Manuel Lemos <mlemos@...>
Date: Fri Dec 23, 2005 11:46 pm
Subject: Re: XMI to Metastorage XML converter - some progress
mallemos
Send Email Send Email
 
Hello,

on 12/22/2005 10:40 PM Peter Howard said the following:
> After more than a year, I've finally done some more playing on this.  I
> thought I'd put it up in it's current form so that you can have a look.
> Files have been updated at
>
> http://groups.yahoo.com/group/metal-
> dev/files/metastorage/xmi2metastorage/
>
> I'm working against Umbrello 1.4.1
>
> The two main things to note are:
>      1. Since I started, Umbrello has removed the name I used for the
>         component name in the xmi.  As a result, the xsltproc invocation
>         now has to look like: "xsltproc --stringparam project {name}
>         conv.xslt {xmi file} > {xml file}
>      2. The script now expects the classes it will deal with to be in a
>         package named "Persistent".  If you compare test/singleTest.xmi
>         to test/singleTest2.xmi you'll see the change needed.
>
> Also, class member functions require a stereotype to indicate what type
> of function it should be for metastorage purposes.
>
> The resultant output still can't be processed by metastorage without
> hand-editing of the xml output, but it is getting much closer.


Sounds great. I am going to create a small example project of a news
system with a Web interface to demonstrate how to user Metastorage
generated code.

I already have UML diagrams done with Umbrello. So, I will be able to
test your XSLT soon.


--

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

#394 From: Peter Howard <pjh@...>
Date: Sat Dec 24, 2005 1:54 am
Subject: Re: XMI to Metastorage XML converter - some progress
pjhacnau
Send Email Send Email
 
On Fri, 2005-12-23 at 21:46 -0200, Manuel Lemos wrote:
> Hello,
>
> on 12/22/2005 10:40 PM Peter Howard said the following:
> > After more than a year, I've finally done some more playing on this.
> I
> > thought I'd put it up in it's current form so that you can have a
> look.
> > Files have been updated at
> >
> > http://groups.yahoo.com/group/metal-
> > dev/files/metastorage/xmi2metastorage/
> >
> > I'm working against Umbrello 1.4.1
> >
> > The two main things to note are:
> >      1. Since I started, Umbrello has removed the name I used for
> the
> >         component name in the xmi.  As a result, the xsltproc
> invocation
> >         now has to look like: "xsltproc --stringparam project {name}
> >         conv.xslt {xmi file} > {xml file}
> >      2. The script now expects the classes it will deal with to be
> in a
> >         package named "Persistent".  If you compare
> test/singleTest.xmi
> >         to test/singleTest2.xmi you'll see the change needed.
> >
> > Also, class member functions require a stereotype to indicate what
> type
> > of function it should be for metastorage purposes.
> >
> > The resultant output still can't be processed by metastorage without
> > hand-editing of the xml output, but it is getting much closer.
>
>
> Sounds great. I am going to create a small example project of a news
> system with a Web interface to demonstrate how to user Metastorage
> generated code.
>
> I already have UML diagrams done with Umbrello. So, I will be able to
> test your XSLT soon.
>

Oh, goody.  This should provide extra motivation for me to get the
conversion to the point that metastorage processes it without errors.

There is one or two problems I still have with the XML metastorage
accepts, but they are not an immediate issue; they are only of issue
once I try to do comparisons on re-generation.


--
Peter Howard
pjh@...
Jabber Id: pjhacnau@...
AIM Id: pjhacnau



[Non-text portions of this message have been removed]

#395 From: Peter Howard <pjh@...>
Date: Mon Dec 26, 2005 4:59 am
Subject: Re: XMI to Metastorage XML converter - some progress
pjhacnau
Send Email Send Email
 
(See extra comment inline below)

On Sat, 2005-12-24 at 12:54 +1100, Peter Howard wrote:
> On Fri, 2005-12-23 at 21:46 -0200, Manuel Lemos wrote:
> > Hello,
> >
> > on 12/22/2005 10:40 PM Peter Howard said the following:
> > > After more than a year, I've finally done some more playing on
> this.
> > I
> > > thought I'd put it up in it's current form so that you can have a
> > look.
> > > Files have been updated at
> > >
> > > http://groups.yahoo.com/group/metal-
> > > dev/files/metastorage/xmi2metastorage/
> > >
> > > I'm working against Umbrello 1.4.1
> > >
> > > The two main things to note are:
> > >      1. Since I started, Umbrello has removed the name I used for
> > the
> > >         component name in the xmi.  As a result, the xsltproc
> > invocation
> > >         now has to look like: "xsltproc --stringparam project
> {name}
> > >         conv.xslt {xmi file} > {xml file}
> > >      2. The script now expects the classes it will deal with to be
> > in a
> > >         package named "Persistent".  If you compare
> > test/singleTest.xmi
> > >         to test/singleTest2.xmi you'll see the change needed.
> > >
> > > Also, class member functions require a stereotype to indicate what
> > type
> > > of function it should be for metastorage purposes.
> > >
> > > The resultant output still can't be processed by metastorage
> without
> > > hand-editing of the xml output, but it is getting much closer.
> >
> >
> > Sounds great. I am going to create a small example project of a
> news
> > system with a Web interface to demonstrate how to user Metastorage
> > generated code.
> >
> > I already have UML diagrams done with Umbrello. So, I will be able
> to
> > test your XSLT soon.
> >
>
> Oh, goody.  This should provide extra motivation for me to get the
> conversion to the point that metastorage processes it without errors.
>

In particular, I'm having trouble working out how to translate
functions.  The reality of metastorage seems a bit behind the
documentation (e.g. "custom" functions not being supported yet).  If you
could provide me with an umbrello model containing a class which has a
function in it of each possible type (with the type being the
stereotype) along with a "hand-translation" of what you'd expect in the
resultant metastorage XML, it would make things much easier for me.

Also on functions, I'm considering having the xslt auto-add a
setreference and getreference function (once I understand the form
properly) for each collection a class has (either explicit UML attribute
or ULM relation).  Thoughts on that?

> There is one or two problems I still have with the XML metastorage
> accepts, but they are not an immediate issue; they are only of issue
> once I try to do comparisons on re-generation.
>
> ______________________________________________________________________
>
--
Peter Howard
pjh@...
Jabber Id: pjhacnau@...
AIM Id: pjhacnau



[Non-text portions of this message have been removed]

#396 From: "jonbouyw" <jonbouyw@...>
Date: Fri Dec 30, 2005 3:57 pm
Subject: Re: Rate Metastorage
jonbouyw
Send Email Send Email
 
--- In metal-dev@yahoogroups.com, Manuel Lemos <mlemos@a...> wrote:
>
> Hello,
>
> In order to get greater visibility to the Metastorage project, it would
> be good if all of you that appreciate it could rate it in Hotscripts
and
> Freshmeat. That would help getting greater visibility to the project
and
> so attract more users to contribute at least to help testing
Metastorage
> or suggest new features.
>
> The Hotscripts rate box may be found here:
>
> http://www.meta-language.net/metastorage.html
>
> Or here:
>
> http://www.hotscripts.com/Detailed/55432.html
>
> Metastorage rating page in Freshmeat may be found here:
>
> http://freshmeat.net/rate/33243/
>
> --

>
> Regards,
> Manuel Lemos
>
> Metastorage - Data object relational mapping layer generator
> http://www.metastorage.net/
>
> PHP Classes - Free ready to use OOP components written in PHP
> http://www.phpclasses.org/
>
Hi,

On another thread Manuel wrote...
>
>Sounds great. I am going to create a small example project of a news
>system with a Web interface to demonstrate how to user Metastorage
>generated code.

YAY to that!!!

I think this under used piece of software is being overlooked by many
developers. Rating is a good thing, but I think that in order for
MetaStorage to get the recognition it truly deserves, examples of
real-world applications IMHO are the best way of gaining greater
visibility to the project.

Take a framework like Ruby on Rails for example, I get fed up with
hearing about it, it is very limited compared to the flexibility
offered by Metastorage, but it is adopted by many because it is
quickly accessable due the nature of it, and the excellent tutorial
documentation for it.  Its only after a while of using it that it's
shortcomings become clearer.

Metastorage on the other hand has taken a lot of understanding and
perserverance on my part to get any worthwhile usage out of it, and I
have nearly given up on it a few times due to the lack of clear and
accessable examples given for it,
particularly with regard to using the generated code.

Maybe a repository of user projects would clearer demonstrate the
advantages of using Metastorage would be a good thing.

Regards John

#397 From: Manuel Lemos <mlemos@...>
Date: Sat Dec 31, 2005 1:22 am
Subject: Re: XMI to Metastorage XML converter - some progress
mallemos
Send Email Send Email
 
Hello,

on 12/23/2005 11:54 PM Peter Howard said the following:
>> Sounds great. I am going to create a small example project of a news
>> system with a Web interface to demonstrate how to user Metastorage
>> generated code.
>>
>> I already have UML diagrams done with Umbrello. So, I will be able to
>> test your XSLT soon.
>>
>
> Oh, goody.  This should provide extra motivation for me to get the
> conversion to the point that metastorage processes it without errors.
>
> There is one or two problems I still have with the XML metastorage
> accepts, but they are not an immediate issue; they are only of issue
> once I try to do comparisons on re-generation.

Great, I have been working on a plug-in for the forms generation and
validation class that allows to link several select inputs and use AJAX
to dynamically fetch groups of options from a database depending on the
option selected on the previous select input.

http://www.phpclasses.org/browse/view/html/file/9879/name/test_linked_select_pag\
e.html

http://groups.yahoo.com/group/forms-dev/files/beta/

Despite this can be used with Metastorage generated code, this
development is not related. I just wanted to mentioned that once I
finish this I will be working on the example Metastorage project. I just
finished it today, so I will be working on the example project after the
new year.

Happy new year! ;-)

--

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

#398 From: Manuel Lemos <mlemos@...>
Date: Sat Dec 31, 2005 1:33 am
Subject: Re: XMI to Metastorage XML converter - some progress
mallemos
Send Email Send Email
 
Hello,

on 12/26/2005 02:59 AM Peter Howard said the following:
>>> Sounds great. I am going to create a small example project of a
>> news
>>> system with a Web interface to demonstrate how to user Metastorage
>>> generated code.
>>>
>>> I already have UML diagrams done with Umbrello. So, I will be able
>> to
>>> test your XSLT soon.
>>>
>> Oh, goody.  This should provide extra motivation for me to get the
>> conversion to the point that metastorage processes it without errors.
>>
>
> In particular, I'm having trouble working out how to translate
> functions.  The reality of metastorage seems a bit behind the
> documentation (e.g. "custom" functions not being supported yet).  If you

I am not sure what you mean. custom functions are supported since a
couple of months ago and are documented:

http://www.meta-language.net/news-2005-11-02-metastorage.html


> could provide me with an umbrello model containing a class which has a
> function in it of each possible type (with the type being the
> stereotype) along with a "hand-translation" of what you'd expect in the
> resultant metastorage XML, it would make things much easier for me.

Here you lost me. How would I define that in Umbrello? Can you give a
basic example?


> Also on functions, I'm considering having the xslt auto-add a
> setreference and getreference function (once I understand the form
> properly) for each collection a class has (either explicit UML attribute
> or ULM relation).  Thoughts on that?

Well, the way 1-many relationship collections work, is that you have to
define a reference variable in the class of the objects that belong to a
collection defined in another class. That reference is like foreign key
from the child object to the parent object.

Although in theory you could have collections without that back
reference variable in the child object, in practice that is how
collections are be used to implement 1-many relationships.

You do not necessarily need a setreference function in the child object
class to add the child object to the parent object collection. Calling
such setreference collection is the same as calling an addtocollection
function in the parent object class.

So, it may not be useful to automatically generate setreference
functions. Many developers may prefer using an addtocollection function
in the parent objecy class.

I am not sure whether this is what you were asking, nor whether it is
clear enough. Just let me know if you did not follow all what I wrote.

--

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

#399 From: Manuel Lemos <mlemos@...>
Date: Sat Dec 31, 2005 1:48 am
Subject: Re: Re: Rate Metastorage
mallemos
Send Email Send Email
 
Hello,

on 12/30/2005 01:57 PM jonbouyw said the following:
> On another thread Manuel wrote...
>> Sounds great. I am going to create a small example project of a news
>> system with a Web interface to demonstrate how to user Metastorage
>> generated code.
>
> YAY to that!!!
>
> I think this under used piece of software is being overlooked by many
> developers. Rating is a good thing, but I think that in order for
> MetaStorage to get the recognition it truly deserves, examples of
> real-world applications IMHO are the best way of gaining greater
> visibility to the project.

Yes, I completely agree. Once I asked to people that have real world
applications using Metastorage to let me know so I can present them in a
page with cases of usage.

I understand that some developers are using Metastorage in pretty big
projects. I also understand that many developers may not disclose the
scope of their developments for policy reasons of their companies, but
if anybody can share enough information about their projects, not
necessarily disclose source code, I am still accepting contributions of
that kind.


> Take a framework like Ruby on Rails for example, I get fed up with
> hearing about it, it is very limited compared to the flexibility
> offered by Metastorage, but it is adopted by many because it is
> quickly accessable due the nature of it, and the excellent tutorial
> documentation for it.  Its only after a while of using it that it's
> shortcomings become clearer.

I have not spent enough time understanding exactly why there is much
noise about Ruby on Rails, but from the videos that I watched I also got
the same impression. It seemed that it works very well in the
presentations on which the speaker already knows all he needs to do to
achieve what he wants to show to impress the audience, but some things
do not look like they are very flexible to develop and maintain.

Not being a Ruby developer, it is true that I am not the right person to
judge.


> Metastorage on the other hand has taken a lot of understanding and
> perserverance on my part to get any worthwhile usage out of it, and I
> have nearly given up on it a few times due to the lack of clear and
> accessable examples given for it,
> particularly with regard to using the generated code.

Right. Many people have asked me about straight-forward examples of
realistic applications that they can learn from like a food recipe. It
has been on my to do list for several weeks now. So, now it is its turn
to get some of my time for reasearch and development.

I hope I can get plenty of feedback from everybody here so it can pass
the test for "Embrace or dump" in 5 minutes or less. ;-)


> Maybe a repository of user projects would clearer demonstrate the
> advantages of using Metastorage would be a good thing.

Hey, that was supposed to be a secret! ;-)

I am not going into much details right now until what I have mind
becomes a reality but I am planning something big more or less like
that. The Internet domain is reserved under the name of metacodigo.com .
I hope it be ready for release until April 2006.

--

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

Messages 370 - 399 of 555   Oldest  |  < Older  |  Newer >  |  Newest
Add to My Yahoo!      XML What's This?

Copyright © 2010 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines NEW - Help