Skip to content
This repository has been archived by the owner on Jan 1, 2020. It is now read-only.

Expose the content schema to VIE #24

Open
bergie opened this issue Sep 7, 2012 · 9 comments
Open

Expose the content schema to VIE #24

bergie opened this issue Sep 7, 2012 · 9 comments

Comments

@bergie
Copy link
Contributor

bergie commented Sep 7, 2012

Create.js now able to utilize VIE's type registry for some features like smarter collection handling. This will also be the base used for client-side validation bergie/create#52 and metadata editing bergie/create#59

For all this, it would be good if CreatePHP had the schema export capability in place. The schema export can either provide all content types and their attributes in a single big JSON file, or in multiple files depending on performance constraints.

The Schema.org schemas are an example of this format: http://schema.rdfs.org/all.json

@radmiraal
Copy link

It's not documented + optimized yet, but here we have a builder: https://github.com/radmiraal/TYPO3.TYPO3/blob/master/Classes/Service/ContentTypeSchemaBuilder.php

This builder renders the following yaml (which is parsed to an array): https://github.com/radmiraal/TYPO3.TYPO3/blob/master/Configuration/Settings.yaml

@dbu
Copy link
Collaborator

dbu commented Sep 7, 2012

@radmiraal cool. one issue about reusing could be that createphp is dual licensed under GPL and MIT. are you the author of that class and can you authorize to use it under both licenses here?

@radmiraal
Copy link

The class is a rewrite of https://github.com/radmiraal/TYPO3.TYPO3/commit/a2a9a55755cbfa5577c7e3077e249e2b9ff5beb3 which is started by Mattias Nilsson, but I see I didn't leave much behind ;-) If you would need permission from him too, let me know. But hereby you're granted to use it in any way you like, we will release it under GPL3 or later.

@bergie
Copy link
Contributor Author

bergie commented Sep 7, 2012

@radmiraal Symfony CMF is under MIT license, which is why CreatePHP went with dual licensing in #7. If this were to be integrated here, then a dual license would be needed as @dbu mentioned.

@radmiraal
Copy link

I don't think we can double license just 1 class without problems, would have to discuss that... what would be another solution? move it to createphp?

@bergie
Copy link
Contributor Author

bergie commented Sep 7, 2012

@radmiraal that would be great, especially on longer term. CreatePHP ought to be the library providing all the necessary interfaces for integrating Create.js with a PHP back-end.

@flack
Copy link
Collaborator

flack commented Sep 18, 2012

Hi guys,

sorry that I'm a bit late to the party, but I was stuck in some other projects (and I still am, so don't expect too much :-)

I'm not sure if I understand all this correctly, but the way I see it, CreatePHP needs to serve a JSON schema that is built from the type configuration. Since it's highly unlikely that createphp and typo3 use the same internal data structures, I guess we will have to write the converter ourselves anyways, so we don't really need to stress about relicensing existing classes.

the other question is of course when such an exporter will be written. I'll try to read up a bit on how this is supposed to work, but if anyone wants to jump in and take this task, be my guest :-)

@dbu
Copy link
Collaborator

dbu commented Oct 27, 2012

there is more input for this in #26

missing features:

  • implement xml metadata driver to collect all existing types: implement RdfDriverXml::getAllClassNames #30
  • provide a method that generates a typemap string with javascript code to register all types
  • figure out how we do the templates needed by VIE. render an empty object with the rdf metadata? this might end up looking different than how somebody renders entity bit by bit. can we allow to overwrite this rendering in a clever way?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants