Browser Binding - Content Management Interoperability Services (CMIS) TC Wiki
Content Management Interoperability Services (CMIS) TC Wiki
Browser Binding
FrontPage
RecentChanges
FindPage
HelpContents
Browser Binding
Immutable Page
Comments
Info
CMIS Browser Binding Sub-Committee
Charter
The Browser Binding Sub-committee is chartered to propose an additional CMIS binding to make it simpler to build web 2.0 applications that use CMIS content.
Membership in this subcommittee is open to all CMIS TC members. To join, go to the subcommittee's home page
and click
Join Group
E-mail address for this subcommittee:
[email protected]
Members
See
Roster
Meeting Information
PASSCODE:
1494225
Calling Numbers. (Note that these are new numbers).
USA
Toll-Free: 888-426-6840
Caller Paid: 215-861-6239
CANADA
Access Type: Toll-Free
Dial-In Number: 888-426-6840
FRANCE
Access Type: Toll-Free
Dial-In Number: 0800-94-0558
GERMANY
Access Type: Toll-Free
Dial-In Number: 0800-000-1018
UNITED KINGDOM
Access Type: Toll-Free
Dial-In Number: 0800-368-0638
OTHER
See
Meeting Summaries
July 13, 2010
Attendees
Derek Carr
Eric Chan
David Choy
Cornelia Davis
Jens Hübel
Ryan Mcveigh
Gregory Melahn
Florian Müller
David Nuescheler
David Pittfield
Norrie Quinn
Summary
Decided Logistics
We will not have regular meetings, but will instead use the mailing list. Meetings will be called by the Chairman as needed. NOTE we reversed that decision in a later meeting.
The Chairman will start a document to hold the proposal.
Ryan Mcveigh, Gregory Melahn and David Neuschler will be the proposal editors
Set Initial Goals
Simplify uploading documents from a browser application (e.g. using multipart form)
Simplify parsing (e.g. using JSON instead of XML)
Simplify construction of required object metadata (e.g. constructing links)
Demo
Florian provided a demo of how Apache Chemistry uses Javascript and JSON
September 27, 2010
Attendees
Jay Brown
Derek Carr
David Caruana
Eric Chan
David Choy
Cornelia Davis
Ryan Mcveigh
Gregory Melahn
Florian Müller
Summary
Jira Issue 662
Florent's comments were discussed but Florent was not on the call so we decided to defer to next TC meeting on 4 October to discuss
Need for a schema to describing the JSON binding
Looked at JSON Schema as a candidate but considered insufficient. We do not want to invent a new schema language for this purpose so the SC needs to research what alternatives to JSON exist.
Batch operations
Agreed that batch operations are a good goal but not specific to browser bindings so it should be propsed as a Jira issue that applies to all bindings
How to represent "not set"
Decided on using JSON null; Greg to update the spec proposal
Use of JSON arrays of collections instead of the approach in the current proposal (sets of named obkects)
Arrays will make it easier for clients to iterate on collections so we should use them - Greg to update the spec proposal
Other ideas to be proposed via Jira and discussed at the next SC meeting
Members of this SC to think about what sections they could volunteer to author
Eric Chan encourages use of object types from icom (
) in examples
The choice of object types in the example should not make them more complex; Example welcome to see if this is a good idea.
Proposal should add a statement that for security HTTP + TLS is encouraged
Greg to update the spec proposal
Next SC meeting on 11 October; Greg sent a meeting notice
October 11, 2010
Attendees
David Choy
Cornelia Davis
Jens Hübel
Ryan Mcveigh
Gregory Melahn
Florian Müller
Summary
Reviewed the following Jira Issues...
662
664
665
666
667
670
671
672
Discussion about why we are limited to GET and POST. Also some discussion about Florian's idea of using a method parameter to select which operation on an object. Clarified this was for GET operations only, not for creates, updates or deletes (those would require POST). using a method parameter would require that the client compose urls and not just use links as in
AtomPub
, but it is a simpler model and developers that will be using this binding will be familiar with this approach. Also it is more efficient in requiring fewer HTTP requests. Florian will write a specific proposal and submit a JIRA issue.
Next SC meeting on 25 October; Greg sent a meeting notice
October 25, 2010
Attendees
David Caruana
David Choy
Jens Hübel
Ryan Mcveigh
Gregory Melahn
Florian Müller
Summary
We should be working harder to complete the schema since that will accelerate the development of the proposal as well as the development of the code in Apache Chemistry. Greg to take Florian's note about how to use Orderly and add a document to start the discussion
Discussion about to reference a non-standard language like Orderly from a standard document in Oasis; Greg to send a note to Mary
McCrea
on the topic; At the very least we should be able to embed the definition of the Orderly grammar in the proposal and use it that way. In any case we should also make sure the author of Orderly, Lloyd Hilaiel, is aware of our usage since maybe he could then improve some parts of Orderly that we need (like Refs)
Discussion about whether we need the equivalent or URI templates; probably not but we would welcome a Jira issue on this idea
Greg to update the status of the Jira issues based on the workflow that Ryan described
Florian to update Jira with a proposal for a proposal for a method selector
Discussion about timeline and agreed to try to reach a March 1, 2011 milestone to complete the proposal and turn over to the Spec editors
This will require more participation from the SC members and David Caruana suggested handing out 'assignments' via Jira issues; we will try that approach
Next SC meeting on 8 November; Greg sent a meeting notice
November 8, 2010
Attendees
Eric Chan
David Choy
Jens Hübel
Gregory Melahn
Florian Müller
David Nuescheler
Summary
Discussion about why we may need to extend Orderly. One case is to add maps to allow access to properties by id instead of only by iterating an array and the other is clarification on how to subtype using ref's or otherwise
Discussion of Jira issue 677 - Jens and David N pointed to issues with encoding object ids and Jens will add a comment to explain
More discussion of 'do we need to be RESTful?' No conclusion except it is not a goal of the SC to produce a RESTful binding, but we would to follow REST where we can to, for example, make caching possible
We still need more participation in the SC, and so Greg created Jira issues for each section of the spec, and handed out a few of them (Navigation Services to Florian and Discovery to David Choy) and will assign the others if there are no volunteers. Not sure this will work any better until we agree on the schema.
Next SC meeting on 22 November; Greg sent a meeting notice
November 22, 2010
Attendees
Eric Chan
David Choy
Jens Hübel
Gregory Melahn
Florian Müller
Peeter Piegaze
Summary
Quite a lot of discussion about URL patterns and how to reference objectId in the uri and instead access an object using a path in the uri.
ObjectIds
would only be used in url parameters, So we will not see url patterns like
and will instead see
. One reason for this decision is the problem that tomcat has with encoding slashes and other special characters (apparently a security issue). This will restrict the ability of proxies to cache content but we can cover the main use case for caching by having the default response for a document to be a content stream. Florian will write up a complete list of url patterns for discussion on 6 December.
Jens spreadsheet is a useful summary and Jens will update before the next meeting identifying missiung schema elements and correlating with URL patterns that Florian is describing
Another area missing in the current proposal is how to handle key value pairs in forms POST; also affects URL parms
Ryan would like to discuss how JSON could also be used by the other bindings - another topic for next call
Next SC meeting on 06 December; Greg sent a meeting notice
November 22, 2010
Attendees
Eric Chan
David Choy
Jens Hübel
Gregory Melahn
Florian Müller
Peeter Piegaze
Summary
Quite a lot of discussion about URL patterns and how to reference objectId in the uri and instead access an object using a path in the uri.
ObjectIds
would only be used in url parameters, So we will not see url patterns like
and will instead see
. One reason for this decision is the problem that tomcat has with encoding slashes and other special characters (apparently a security issue). This will restrict the ability of proxies to cache content but we can cover the main use case for caching by having the default response for a document to be a content stream. Florian will write up a complete list of url patterns for discussion on 6 December.
Jens spreadsheet is a useful summary and Jens will update before the next meeting identifying missiung schema elements and correlating with URL patterns that Florian is describing
Another area missing in the current proposal is how to handle key value pairs in forms POST; also affects URL parms
Ryan would like to discuss how JSON could also be used by the other bindings - another topic for next call
Next SC meeting on 06 December; Greg sent a meeting notice
December 6, 2010
Attendees
Eric Chan
David Choy
Jay Brown
Jens Hübel
Gregory Melahn
Ryan Mcveigh
Florian Müller
Peeter Piegaze
Summary
Florian took the SC through the document describing the url patterns. Basically, there are four url's. The service url which must be provided by the admin, the repository url (found in the service url response) which is where one can find repository info, the root url which is where folders and documents are found, and each object has an object url which one can GET and POST to. The way in which object urls are formed is by using either the root+objectId or root+path.
Form data will be where one can find the action parameter, and the associated data. We need to close on the definition of those parameters. Look for an email with the proposal and then we can discuss in the next meeting. Jens mentioned we could consider alternatives to HTML forms (e.g. xforms). That could be a possibility as an alternative but we at least have to support HTML forms to make it simple for browser developers, so we will stay with that form now. Greg also mentioned we have the option of also specifying all the data in JSON, i.e. POSTing a JSON object instead of an HTML form (there is an example of that in the current proposal). But the group did not see any advantage to that so it will be removed.
Ryan took the team through an idea that we could add JSON as an alternative encoding to the other bindings. There are developers who would prefer that to XML. It probably would not be hard for server implementations to support this (Chemistry already did something like it), but still the SC did not see a big advantage for clients who would prefer to use the browser binding anyway if there was such a need. This led to a discussion about whether the Browser Binding should be required or optional and David added to the TX agenda for the meeting on 12/13.
Ryan mentioned that we need to do a better job of handling the Jira issue states, so Greg will clean them up, first by moving the actives to the OPEN state.
Next SC meeting on 20 December; Greg sent a meeting notice. That will be the last meeting of 2010.
December 20, 2010
Attendees
Jens Hübel
Gregory Melahn
Florian Müller
Summary
Greg took care of some logistics by creating a SVN project for the specification proposal and for the schema (see the related links section at the bottom of the wiki for the links). From now on, these documents will represent the work of the SC. Before the next meeting, Greg will merge into these documents the updates from Jens and Florian. Greg also fixed the states of the SC Jira issues.
We reviewed the proposed schema changes from Florian to add extenstions to Property so the client does not need to cache the type and additional object types for object parents, object containers, a type list and a type container and we agreed they are useful.
Greg will start a discussion on the Orderly mailing list about Florian's idea for Maps and also Jens' idea for introducing an id element.
We reviewed the proposal from Florian for form elements. One reason for the need for a index is to relate case insensitive names from HTML forms to case sensitive id's for CMIS. In case you did not know form elements are case-insensitive (see the reference at
). Greg then brought up the issue of why CMIS property id's are case-insensitive to begin with. Since there does not appear to be a good reason for this Greg opened a Jira issue to change the spec to eliminate case insensitivity for property id's. See
We discussed what should be returned for a document POST. The problem with just returning a JSON representation of the document is that most browser clients don't have to display that, so the idea is to add a form element for a url redirect, which could include a object id in the parameter. CMIS browser clients could then include that form element when needed. We concluded this was a good idea and quite flexible.
Florian pointed out that Chemistry now has a working version of all of this so it would be good to try it out with another browser client (e.g. the CMIS Firefox plugin).
Greg thought it would be useful to schedule some time in a TC call to take the larger team through the current state of the Browser Binding. Tentative we can target Monday, February 7, 2011 for that (Greg to discuss with David Choy).
Next SC meeting on 17 January; Greg sent a meeting notice.
January 17 , 2011
Attendees
Jens Hübel
Scott Malabarba
Ryan Mcveigh
Gregory Melahn
Florian Müller
Summary
Review of the new version of the proposal that includes the URL mapping table and the schema in Orderly; much simpler now
Clean up of JIRA issues will happen before the next meeting - new issues for the need for ID and MAPs in the schema will be opened
We need to decide on the POST form results - new JIRA issue needed (Greg to own issue)
We need to decide on HTML form mapping; the idea of using form names == CMIS property names may not hold up; need to include Policies, ACE's, versioning State etc(Florian to write up proposal)
Next SC meeting on 28 January; Greg sent a meeting notice.
January 28, 2011
Attendees
David Choy
Jens Hübel
Scott Malabarba
Gregory Melahn
Florian Müller
Summary
Reviewed the HTML Form mapping proposal from Florian (Jira Issue:
Proposal:
. Agreed to include it in the next version of the proposal. Some discussion about the use of brackets which by one interpretaton are excluded from the allowed name space for field control names. In practice though this does not seem to be an issue and it would be good for php developers so we decide to use them It would be useful to describe the precedence order for setting mime type which would (1) override via a form control, then (2) allow the browser to decide and (3) allow the repository to decide (bsaed for example on the what the jre content-types.properties file. Greg mentioned the idea of prefixing all our control names with cmis but this seems to be overkill.
Reviewed Jen's proposal to add ID's to the Orderly schema to make it possible to reference reusable schema elements. See Jira Issue:
. Agreed this was useful so we will add to the spec proposal and to the schema. Jens mentioned he still has not heard a response from the Orderly mailing list so Greg should poke Lloyd Hileal to find out how he wants to handle feedback.
Before the next meeting Florian will provide a writeup on an approach using client token and txn id to manage responses from HTML forms so
JavaScriot
can access the response data when served from a different domain than the one from which the form was served.
Greg will clean up the remaining Jira issues so only 'real' ones appear in
Next SC meeting on 14 February; Greg sent a meeting notice.
February 14 , 2011
Attendees
Jay Brown
Eric Chan
David Choy
Jens Hübel
Scott Malabarba
Gregory Melahn
Florian Müller
Summary
Reviewed Current Proposed Specification:
. Comments includedd (1) remove section 1.2.5 since it is now superceded by the schema (2) in Section 1.2.9 make the use of a error response a SHOULD and use the strings describing the response codes instead of the response codes to disambiguate the response (3) in Section 1.4.3 remove the comment about setContentStream since we decide in the mailing list to use a form there too (4) Update the examples using Open CMIS (5) add a section describing the response objects for GET's and use of request parms (6) Decided to keep the somewhat redundant capability of using both GET and POST for queries
Reviewed the Map Proposal (Jira 698) :
. Decided to incorporate into the spec proposap and use it for properties and typedefs.
Reviewed the Transaction ID proposal from Florian (Jira issue 704) :
. There was quite a lot of discussion and we agreed we should include it in the proposal with some guidance on (1) how to generate unique transaction id's such for example using uuid generators or something based on timestamp as is done in Open CMIS (2) issues with making this server side (when to flush the transaction info and how to share between members of a cluster)(c) using cookies instead
Other Jira Issues:
?. The one new issue was from Florent was issue 708
which proposes to use an alternative datetime format that includes timezone. The disadvantage of using such a form would be that it would be difficult to turn into a JSON date object with out special parsing. The use cases are not clear (Scott for example of a meeting entry which you would want to define with a custom property for the date and time that needed to include Time Zone. Greg will post a comment asking Florent for some more examples of use cases.
Next SC meeting on 28 February; Greg will send out a meeting notice.
March 14 , 2011
Attendees
Eric Chan
David Choy
Jens Hübel
Scott Malabarba
Gregory Melahn
Thomas Pole
Summary
Discussion about what else is needed to complete the proposal before proposing it formally to the TC as a change for 1.1. Jens asked whether we should consider adding PUT and DELETE verbs into the proposal, since HTML 5 will probably include support for them. This would allow us to define a more RESTful approach than one dependent on elements like HTML forms and URL parameters to select operations. Though there is nothing necessarily wrong with such an idea, consensus was that that would be a different proposal than this one.
Defered discussion on Jira issue 708 which proposes to use an alternative datetime format that includes timezone. Florent was not in attendance to continue the discussion.
Discussion on Issue 715, the proposal from Scott for CSRF protection. One conclusion was to allow an expiration time of 'immediate' to force the token to be used only once. Decided to update the proposal and then use the mailing list as a way to collect comments. If we can resolve the comments before the rest of the proposal is done, then we will include it in the proposal submitted to the TC; otherwise, treat it as a separate edit task later.
About Orderly, Greg did send a note to Lloyd Hilaiel with links to the proposal and pointing out the additions of maps and id's. But we have not received a reply. Jens also had an interest from another company in the use of id's in Orderly but the Orderly mailing list does not seem responsive. We will keep trying.
Next SC meeting on 06 April; Greg sent out a meeting notice.
April 6 , 2011
Attendees
David Caruana
David Choy
Jens Hübel
Scott Malabarba
Gregory Melahn
Florian Müller
Summary
Discussion about what else is needed to complete the proposal before proposing it formally to the TC as a change for 1.1. Florian brought up a smallish change regarding the extension mechanism for maps. Maps provide a way to describe a property bag, but the contents should not include anything but properties. So how does the consumer/provider include additional content? This is not enough to hold up submission of the spec and Florian will write up a Jira issue about it.
Discussion about next steps. Greg will submit this proposal to the TC as a Jira issue referencing version 0.5 of the proposal. We will no longer meet regularly but will still meet on occasion as specific issues arise. Aside fro that we will address issues in the TC.
Defered discussion on Jira issue 708 which proposes to use an alternative datetime format that includes timezone. Florent was not in attendance to continue the discussion.
Discussion on Issue 715, the proposal from Scott for CSRF protection. Scott provided an overview of the latest idea. Concluded we indeed don't need customer headers so they will be removed from the proposal. But there is still now a debate about how to answer the token in a secure way. The premise in the current proposal is that browser client cannot access the returned content if it is not in JS format but that is not (per Florian) really the case so there is still a fatal flaw in the idea. Scott will think about it some more and revise the proposal. Some thought that the only way to get a secure solution may be to introduce authentication into the Browser Binding.
About Orderly, Greg has stil not gotten a reply from Lloyd Hilaiel and Jens also has not see any new activity in the Orderly mailing list. We will keep trying.
Related Documents
Browser Binding Proposal from the OASIS CMIS Browser Binding Subcommittee
Browser Binding Schema from the OASIS CMIS Browser Binding Subcommittee
OpenCMIS at Apache Chemistry
Browser Binding (last edited 2011-04-06 18:28:48 by
melahn
Immutable Page
Comments
Info
MoinMoin Powered
Python Powered
GPL licensed
Valid HTML 4.01