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

Thomas Maroschik tmaroschik at dfau.de
Tue Jul 13 18:53:14 CEST 2010

Am 07.07.10 11:53, schrieb Michael Sauter:
> Still ... as you could have Fuid viewhelpers specific to the task, it
> might be easier to go with Fluid. You could just use Fluid viewhelpers,
> no HTML/CSS/JS ... so in the end it might look very much like XUL ...
> and then have the viewhelpers render templates? (btw: what other
> backends then HTML/CSS/JS are you thinking of?)
> Sure there are some advantages to XUL as you wrote, but then again
> probably almost everyone in the Typo3 community would need to learn it
> first ;) And I don't know if this is worth it - "just for TCA"?
> And - could you explain a little what you meant with the
> ExtDirect-calls? ATM I somehow can't connect TCA and ExtDirect?! Thanks ;)

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 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).

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.

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

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,


Thomas Maroschik

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