[TYPO3-50-general] The successor of TCA?

Michael Sauter mail at michaelsauter.net
Thu Jul 15 00:23:11 CEST 2010


Hey Thomas,

> Hey Michael,
>
> still by using Fluid you are using a non descriptive language. Fluid is
> a templating language for php, just like php was in its beginning for C.
> By using Fluid as a substitute for php arrays you could stick to php
> arrays, there isn't any real difference between them except the XML
> notation. Using XUL instead isn't the holy grail. It's just a
> placeholder for any interchangeable device unspecific gui language.

So why do we have Fluid anyway? ;) I'd say because it offers many 
advantages over a simple PHP array (like possible autocompletion, 
writing your own viewhelpers and so on ...).

> So what is TCA now?
> "This global array in TYPO3 defines the editable database tables and the
> relationship between them and how the fields in tables are rendered in
> backend forms and processed in the TCE and so on." (from doc_core_api)
>
> FLOW3 defines the first part of TCA "…defines the editable database
> tables and the relationship between them…" by domain models and
> repositories. So what do we have for the second part of the TCA? The
> "…how the fields in tables are rendered in backend forms and processed
> in the TCE and so on…". Currently to my knowledge nothing. At this point
> i would like to have an abstract device unspecific definition of the GUI.
>
> Why device unspecific?
> Currently more and more alternative devices accessing the web are
> getting popular. By sticking to a specific gui language like
> xhtml/js/css you wont be able to adapt the TYPO3 backend to these
> devices. Extension developers would have to consider this and write
> individual specifications of their dataset layout for different devices.
> In case of an abstract gui definition, there could be an own renderer
> for eg. Computers(ExtJS), iPhone(Sencha Touch).

Okay, but is Fluid device specific? I'd say no. It's a PHP template 
engine. So of course it is more or less bound to XHTML/CSS/JS. But these 
days, the future looks like web standards everywhere. Yes, there 
probably will be different frameworks (e.g. ExtJS, Sencha Touch) used, 
but the basis will be web standards. So in my eyes Fluid could still 
render the basic, device unspecific "layout" in different frameworks 
depending on the device that is used.

> In my opinion the argument, that almost everyone in the TYPO3 community
> has to relearn doesn't count. In respect to FLOW3 a TYPO3 developer has
> to relearn already everything (new design patterns, new configuration,
> modified typoscript, and so on…). I think a regular TYPO3 integrator
> doesn't fiddle much around with the current TCA, so he wouldn't with
> TYPO3 Phoenix.

But then again it seems like Fluid will be a very important aspect of 
Phoenix (just have a look at the TypoScript implementation), so many 
people in the community have to learn Fluid anyway. And then it would be 
easy for them to undertand and adjust the "TCA" if they have to - 
without the need to learn something else. That's better than the other 
way round ;)

> I think the answer to your ExtDirect question is pretty easy if you've
> read what I've written above.

Erm, so there is no connection? Cause ExtDirect is bound to the actual 
implementation of the interface and this is unrelated to 
XUL/Fluid/Whatever because these still have to be "translated" into an 
implementation.

> Hope this post clears the confusion a little bit up :) I would like to
> have a discussion about the topic of using an abstract interchangeable
> gui language to define at least subsets of the TYPO3 Phoenix backend.
>
> Best regards fellows,
>
> Tom

All this said, I don't know if Fluid is the right solution for this, but 
I don't see a real advantage of XUL over Fluid ...

~michael


BTW: There is already a related issue on forge: 
http://forge.typo3.org/issues/8686 ... so we'll see shortly ;)


More information about the TYPO3-project-5_0-general mailing list