You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@corinthia.apache.org by Franz de Copenhague <fr...@outlook.com> on 2015/03/08 21:53:13 UTC

RE: [Document Model] RE: Initial questions about web-based application


> From: franzdecopenhague@outlook.com
>  
> > > Is there any Document model defined? I mean for Document model an
> > > abstract model that's defined the structure of the document like
> > > sections, paragraphs, lists, text, fields, tables, images and styles.
> > 
> > The document model is HTML5 - that is, it’s identical to what the browser
> > uses.
> > 
> > This gives us the vast majority of what we need for an editor “for free”, in
> > that it is provided by the web browser or embedded web view.
> > 
> > The editing library consists of JS code that conducts all editing operations
> > using W3C DOM APIs. It’s basically the same sort of thing as CKEditor and
> > various other similar web-based rich text editors commonly used on
> > wikis/content management systems/blogging engines.
> > 
> > —
> > Dr Peter M. Kelly
> 
> I agree that HTML5 is a good model to feed into the editing library to support the edition of paragraphs, lists, text, tables, images. But what about sections, headers, footers, fields (author, date, etc ), styles and themes? All of them are document features implemented either docx or odt and so far they are not supported by DocFormat API. 
> 
> For example, If the section feature is implemented in the web app and the user creates a section with 3 columns. It can be rendered like this example http://www.w3schools.com/css/tryit.asp?filename=trycss3_column-count, but somehow DocFormat needs to know that it is a section to translate to docx or odt. 
> 
> HTML5 is good to serialize from/to DocFormat api, and good to be edited by the editing library but web app will need a model/controller on top of the HTML DOM to support same features. Any thoughts?
> 
> -JD
> 

Considering that HTML5 is itself the model, the web-app can decorate the HTML tags with HTML data- attributes to serialize the model. (See http://www.w3schools.com/tags/att_global_data.asp)

For example, a section with 3 columns can be define as:

<section data-web-app-column-count="3"><p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.</p></section>

Now, I see that this approach can be extended to the HTML generated by DocFormats and instead of using the HTML id attribute filled with "wordNN", we can use <p data-df-tag-index = "2">. This is an little enhancement that breaks the constraint in the id attribute and any web editor application will be free to use the id attribute on its own.

<body><p data-df-tag-index="2">Hello World!</p></body>


JD 


 		 	   		  

Re: Initial questions about web-based application

Posted by jan i <ja...@apache.org>.
On Sunday, March 8, 2015, Franz de Copenhague <fr...@outlook.com>
wrote:

>
>
> > From: franzdecopenhague@outlook.com <javascript:;>
> >
> > > > Is there any Document model defined? I mean for Document model an
> > > > abstract model that's defined the structure of the document like
> > > > sections, paragraphs, lists, text, fields, tables, images and styles.
> > >
> > > The document model is HTML5 - that is, it’s identical to what the
> browser
> > > uses.
> > >
> > > This gives us the vast majority of what we need for an editor “for
> free”, in
> > > that it is provided by the web browser or embedded web view.
> > >
> > > The editing library consists of JS code that conducts all editing
> operations
> > > using W3C DOM APIs. It’s basically the same sort of thing as CKEditor
> and
> > > various other similar web-based rich text editors commonly used on
> > > wikis/content management systems/blogging engines.
> > >
> > > —
> > > Dr Peter M. Kelly
> >
> > I agree that HTML5 is a good model to feed into the editing library to
> support the edition of paragraphs, lists, text, tables, images. But what
> about sections, headers, footers, fields (author, date, etc ), styles and
> themes? All of them are document features implemented either docx or odt
> and so far they are not supported by DocFormat API.
> >
> > For example, If the section feature is implemented in the web app and
> the user creates a section with 3 columns. It can be rendered like this
> example
> http://www.w3schools.com/css/tryit.asp?filename=trycss3_column-count, but
> somehow DocFormat needs to know that it is a section to translate to docx
> or odt.
> >
> > HTML5 is good to serialize from/to DocFormat api, and good to be edited
> by the editing library but web app will need a model/controller on top of
> the HTML DOM to support same features. Any thoughts?
> >
> > -JD
> >
>
> Considering that HTML5 is itself the model, the web-app can decorate the
> HTML tags with HTML data- attributes to serialize the model. (See
> http://www.w3schools.com/tags/att_global_data.asp)

I would prefer the web-app uses the html as docFormats generates it. If the
generated code is not good enough we should consider changing docformats.


> For example, a section with 3 columns can be define as:
>
> <section data-web-app-column-count="3"><p>Lorem ipsum dolor sit amet,
> consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut
> laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam,
> quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex
> ea commodo consequat.</p></section>
>
> Now, I see that this approach can be extended to the HTML generated by
> DocFormats and instead of using the HTML id attribute filled with "wordNN",
> we can use <p data-df-tag-index = "2">. This is an little enhancement that
> breaks the constraint in the id attribute and any web editor application
> will be free to use the id attribute on its own.
>
> <body><p data-df-tag-index="2">Hello World!</p></body>

The idea of the web-app is to be a editor that uses the generated html code.

rgds
jan i

>
>
> JD
>
>
>



-- 
Sent from My iPad, sorry for any misspellings.