As Robin I want to map my content objects an properties to existing vocabularies (Person.name -> foaf:name)
Updated by Thomas Maroschik over 10 years ago
I think at this point we're running slightly into the problem, that you can't annotate foreign extension domain models without losing the ability to update. Annotating using interfaces without using proxy objects is also rather a hard task (By the way: How do you mange it to type properties into interfaces?). So I think we have to get inspired by doctrine2 and implement something like annotation drivers. I would suggest extending/overriding php doc annotations by typoscript. So TS gets really the central repository for all kind of configuration. Parsing and forward porting this configuration to FLOW3 should be charmingly easy after this as FLOW3 integrates also Doctrine2 and hopefully the also the yaml annotation driver.
We need this, because the extension developer can not foresee possible alternative uses of his domain model. You know yourself how often tt_news is used as foundation for absolutely other content.
Updated by Andreas Wolf almost 10 years ago
For TYPO3 v4 I would choose a rather pragmatic approach here: The whole data model of v4 is centered around the TCA and some similar-looking data structures for Flexforms. It should be possible to annotate the columns of a data model here - this is in fact what I'm currently doing for my GSoC project. A problem I see here is that one column may have different meanings in different types (esp. in tt_content or the famous tt_news).
It should however be possible to change these annotations as Thomas proposed. I'm however not sure if TS is really the best place for that - this heavily depends on what we want to achieve. But I think this is taken too far now, we should first define how to store a simple relation to some semantic concept (e.g. foaf:name for user records or dc:title for tt_news/tt_content headers) ready.