Layout Engine #2
От: adontz Грузия http://adontz.wordpress.com/
Дата: 28.04.10 23:31
Оценка: 23 (3)
Нарисовались набросок архитектуры и план работ

Особенности архитектуры:
  • DOM основан на XmlElement и может использоваться везде вместо XML, например в XML сериализации (такой план).
  • CSS поддерживает не только CSS селекторы, но и XPath.
  • В качестве скриптового движка будет использоваться Jint.
  • CSS Rule это два скомпилированных на лету DynamicMethod-а. Первый — проверяет условия, второй — модифицирует DOM. В мобильной версии (когда руки дойдут), будет два Jint-метода, если в .Net CF так и не появится компилятор.

    Особенности плана работ:
  • Полезность проекта на любой стадии разработки приоритетна. После третьей стадии проект должен стать конкурентом HtmlAgilityPack.
  • Потенциальная возможность параллельной разработки зависимых модулей.
  • MONO поддерживать собираемся.

    В данный момент мы заняты тем что:
  • Настраиваем рабочее окружение. Пока остановили выбор на VS2010 (C#/.Net 4.0), RedMine, Mercurial, xUnit (TestDriven.Net).
  • Пишем первый набросок парсера HTML, читаем спецификации. Умнеем.
  • По мере возможности, стандартизируем классы касающиеся HTML DOM и CSS Rules.

    Ну и если кто-то ещё захочет участвовать, ничего кроме радости это не вызовет

    Data Flow


    Development Stages

  • A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[7]: Layout Engine #2
    От: fddima  
    Дата: 30.04.10 16:55
    Оценка: 36 (1)
    Здравствуйте, adontz, Вы писали:

    XmlNodeReader — есть XmlReader, реализовать аналогичный, который обходит ту или иную реализацию дерева вообще не проблема.

    Если смотреть на XmlDocument vs XDocument и прочие, то XmlDocument безусловно много ближе по своей сути, т.к. он реализует W3C DOM Level 2 Core. Например XmlAttribute есть XmlNode, в то время как XAttribute — нет. За одно это этого в принципе достаточно, что бы к чертям выкинуть XDocument.

    Впрочем, лично я пока ни к одному из них не склонился. Работы хватает пока без этого.
    Re[4]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 04.12.10 07:42
    Оценка: 1 (1)
    Здравствуйте, sergey_shandar, Вы писали:

    _>Под какой лицензией собираетесь делать? Надеюсь не GPL?


    Лично я за BSD.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[3]: Layout Engine #2
    От: AndrewVK Россия http://blogs.rsdn.org/avk
    Дата: 30.04.10 05:46
    Оценка: +1
    Здравствуйте, adontz, Вы писали:

    A>А в чём плюсы по сравнению с XmlElement исходя из сценариаев использования?


    Легче, удобнее, лучше продуман интерфейс.
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1471 on Windows 7 6.1.7600.0>>
    AVK Blog
    Re[6]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 30.04.10 16:08
    Оценка: :)
    Здравствуйте, AndrewVK, Вы писали:

    A>> Концертация в объекты и обратно XML сериализацией — сценарий, а то что ты описал личное мнение. Я отдаю предпочтение не абстрактной крутости, а удобству интеграции.

    AVK>Ну вот и поясни тогда, чем XmlElement лучше XElement. На конкретных примерах.

    XmlElement, наследник XmlNode, можно передать в конструктор XmlNodeReader. Следовательно, для конвертации из DOM в дерево типизированных объектов и обратно, из объектов в DOM, можно использовать XmlSerializer. Кроме того, хотя XmlElement и класс, он фактически не содержит непереопределяемых реализаций и не навязывает их.

    XElement/XNode напротив содержит много непереопределяемых реализаций. Простая задача, предоставление механизма оповещения об изменении атрибутов, не представляется простой в реализации.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[7]: Layout Engine #2
    От: AndrewVK Россия http://blogs.rsdn.org/avk
    Дата: 30.04.10 19:01
    Оценка: +1
    Здравствуйте, adontz, Вы писали:

    A>XmlElement, наследник XmlNode, можно передать в конструктор XmlNodeReader.


    Аналогичный ридер есть и для XElement

    A>Кроме того, хотя XmlElement и класс, он фактически не содержит непереопределяемых реализаций и не навязывает их.


    XElement намного более легковесен.

    A>XElement/XNode напротив содержит много непереопределяемых реализаций.


    Ты что то путаешь.

    P.S. Написание собственного XmlReader для собственной структуры — совсем несложная задача.
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1471 on Windows 7 6.1.7600.0>>
    AVK Blog
    Re[6]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 04.12.10 09:40
    Оценка: :)
    Здравствуйте, sergey_shandar, Вы писали:

    A>>Лично я за BSD.

    _>Предлагаю тогда Apache 2.0, так как детали проработанны, даже MS выпускает под ней.

    Но это же не рифмуется с LSD!
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re: Layout Engine #2
    От: _vanger_  
    Дата: 22.05.11 10:03
    Оценка: +1
    Здравствуйте, adontz, Вы писали:

    A>Нарисовались набросок архитектуры и план работ


    Какой программой рисовались диаграммы?
    Re: Layout Engine #2
    От: AndrewVK Россия http://blogs.rsdn.org/avk
    Дата: 29.04.10 12:50
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>
  • DOM основан на XmlElement и может использоваться везде вместо XML, например в XML сериализации (такой план).

    Почему не XElement?

    A>
  • CSS Rule это два скомпилированных на лету DynamicMethod-а.

    Компиляция должна быть опциональной, иначе на ряде сценариев получишь немаленькие тормоза.
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1471 on Windows 7 6.1.7600.0>>
  • AVK Blog
    Re[2]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 29.04.10 16:13
    Оценка:
    Здравствуйте, AndrewVK, Вы писали:

    A>>
  • DOM основан на XmlElement и может использоваться везде вместо XML, например в XML сериализации (такой план).
    AVK>Почему не XElement?

    А в чём плюсы по сравнению с XmlElement исходя из сценариаев использования?

    A>>
  • CSS Rule это два скомпилированных на лету DynamicMethod-а.
    AVK>Компиляция должна быть опциональной, иначе на ряде сценариев получишь немаленькие тормоза.

    Вариант с Jint-скриптом я описал, а без результатов профайлинга оптимизировать нет смысла.
  • A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[4]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 30.04.10 12:03
    Оценка:
    Здравствуйте, AndrewVK, Вы писали:

    A>>А в чём плюсы по сравнению с XmlElement исходя из сценариаев использования?

    AVK>Легче, удобнее, лучше продуман интерфейс.

    Это не сценарий использования. Концертация в объекты и обратно XML сериализацией — сценарий, а то что ты описал личное мнение. Я отдаю предпочтение не абстрактной крутости, а удобству интеграции.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[5]: Layout Engine #2
    От: AndrewVK Россия http://blogs.rsdn.org/avk
    Дата: 30.04.10 13:54
    Оценка:
    Здравствуйте, adontz, Вы писали:

    AVK>>Легче, удобнее, лучше продуман интерфейс.


    A>Это не сценарий использования.


    Естественно не сценарий.

    A> Концертация в объекты и обратно XML сериализацией — сценарий, а то что ты описал личное мнение. Я отдаю предпочтение не абстрактной крутости, а удобству интеграции.


    Ну вот и поясни тогда, чем XmlElement лучше XElement. На конкретных примерах.
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1471 on Windows 7 6.1.7600.0>>
    AVK Blog
    Re[8]: Layout Engine #2
    От: AndrewVK Россия http://blogs.rsdn.org/avk
    Дата: 30.04.10 19:04
    Оценка:
    Здравствуйте, fddima, Вы писали:

    F>Если смотреть на XmlDocument vs XDocument и прочие, то XmlDocument безусловно много ближе по своей сути


    Ближе к чему?

    F>, т.к. он реализует W3C DOM Level 2 Core


    Который сам по себе — уродство то еще.

    F>Например XmlAttribute есть XmlNode, в то время как XAttribute — нет.


    И чем это плохо?
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1471 on Windows 7 6.1.7600.0>>
    AVK Blog
    Re[8]: Layout Engine #2
    От: fddima  
    Дата: 30.04.10 19:10
    Оценка:
    Здравствуйте, AndrewVK, Вы писали:

    A>>XElement/XNode напротив содержит много непереопределяемых реализаций.

    AVK>Ты что то путаешь.
    XAttribute.Value — зачем далеко ходить.
    Re[9]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 30.04.10 19:26
    Оценка:
    Здравствуйте, AndrewVK, Вы писали:

    F>>, т.к. он реализует W3C DOM Level 2 Core

    AVK>Который сам по себе — уродство то еще.

    Но скриптам надо отдавать именно его, как ни крути
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[8]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 30.04.10 19:26
    Оценка:
    Здравствуйте, fddima, Вы писали:

    F>XmlDocument безусловно много ближе по своей сути, т.к. он реализует W3C DOM Level 2 Core.


    О, а я даже не обратил внимания. Очень здорово.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[9]: Layout Engine #2
    От: fddima  
    Дата: 30.04.10 19:34
    Оценка:
    Здравствуйте, AndrewVK, Вы писали:

    F>>Если смотреть на XmlDocument vs XDocument и прочие, то XmlDocument безусловно много ближе по своей сути

    AVK>Ближе к чему?
    К W3C DOM.

    F>>, т.к. он реализует W3C DOM Level 2 Core

    AVK>Который сам по себе — уродство то еще.
    Вопрос спорный. Каким бы он не был — его интерфейс является стандартным и должен быть реализован.

    F>>Например XmlAttribute есть XmlNode, в то время как XAttribute — нет.

    AVK>И чем это плохо?
    Тем, что аттрибуты в W3C DOM устроены не так.
    Re[9]: Layout Engine #2
    От: fddima  
    Дата: 30.04.10 19:36
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>О, а я даже не обратил внимания. Очень здорово.

    Имеет смысл ориентироваться на Level 3 — сходу впишется он или нет — пока что тоже не знаю.
    Re[8]: Layout Engine #2
    От: vdimas Россия  
    Дата: 01.05.10 11:42
    Оценка:
    Здравствуйте, AndrewVK, Вы писали:

    AVK>P.S. Написание собственного XmlReader для собственной структуры — совсем несложная задача.


    Ну, мы для HTML писали свой reader и пользовались своими "совсем легковесными объектами" для формирования структуры. Легковесность еще в том, что известные таги и аттрибуты в этой модели представлены кодами enum — гораздо быстрее идет оперирование. И там действительно ничего сложного, разработка всей модели — 3 дня максимум.
    Re[9]: Layout Engine #2
    От: AndrewVK Россия http://blogs.rsdn.org/avk
    Дата: 01.05.10 18:53
    Оценка:
    Здравствуйте, vdimas, Вы писали:

    V>Легковесность еще в том, что известные таги и аттрибуты в этой модели представлены кодами enum — гораздо быстрее идет оперирование.


    Мне как то для одной узкой задачи понадобилось ускорить XML DOM (XElement тогда еще не было). Просто переписывание узлов без каких либо изысков ускорило чтение дерева раз в 20.
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1471 on Windows 7 6.1.7600.0>>
    AVK Blog
    Re[10]: Layout Engine #2
    От: vdimas Россия  
    Дата: 03.05.10 15:28
    Оценка:
    Здравствуйте, AndrewVK, Вы писали:

    AVK>Мне как то для одной узкой задачи понадобилось ускорить XML DOM (XElement тогда еще не было). Просто переписывание узлов без каких либо изысков ускорило чтение дерева раз в 20.


    Да, похожий порядок. Конкретно ускорение чтения не замерял, но общее время, где было чтение + обработка "нашего DOM" HTML, ускорилось 30-50 раз (чем больше страница, тем больше разница).
    Re: Layout Engine #2
    От: Visor2004  
    Дата: 11.11.10 16:44
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Нарисовались набросок архитектуры и план работ


    А в качестве рендерера, что собираетесь использовать?
    Помните!!! ваш говнокод кому-то предстоит разгребать.
    Re[2]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 11.11.10 16:45
    Оценка:
    Здравствуйте, Visor2004, Вы писали:

    A>>Нарисовались набросок архитектуры и план работ

    V>А в качестве рендерера, что собираетесь использовать?

    OpenGL
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[3]: Layout Engine #2
    От: Visor2004  
    Дата: 25.11.10 12:30
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, Visor2004, Вы писали:


    A>>>Нарисовались набросок архитектуры и план работ

    V>>А в качестве рендерера, что собираетесь использовать?

    A>OpenGL


    Я в следующем феврале начинаю писать рендерер заточенный для отрисовки UI в одном игровом проекте. UI будет описываться в виде xml, наподобие xaml из wpf. Делаться будет на базе библиотеки SDL и сопутствующих. Я так понимаю, что задачи у нас похожие, вам же тоже надо DOM дерево отрисовать, можем попробовать поработать совместно.
    Помните!!! ваш говнокод кому-то предстоит разгребать.
    Re[4]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 25.11.10 12:31
    Оценка:
    Здравствуйте, Visor2004, Вы писали:

    V>Я в следующем феврале начинаю писать рендерер заточенный для отрисовки UI в одном игровом проекте. UI будет описываться в виде xml, наподобие xaml из wpf. Делаться будет на базе библиотеки SDL и сопутствующих. Я так понимаю, что задачи у нас похожие, вам же тоже надо DOM дерево отрисовать, можем попробовать поработать совместно.


    Ну от попытки хуже никому не станет.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[5]: Layout Engine #2
    От: Visor2004  
    Дата: 25.11.10 12:43
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, Visor2004, Вы писали:


    V>>Я в следующем феврале начинаю писать рендерер заточенный для отрисовки UI в одном игровом проекте. UI будет описываться в виде xml, наподобие xaml из wpf. Делаться будет на базе библиотеки SDL и сопутствующих. Я так понимаю, что задачи у нас похожие, вам же тоже надо DOM дерево отрисовать, можем попробовать поработать совместно.


    A>Ну от попытки хуже никому не станет.


    Задачу и разработку архитектуры я начинаю ставить уже сейчас поэтому мне было бы интересно посмотреть на то, что есть у вас. У вас есть какой-то project place, где хостятся сорцы, где общается комманда? Чтоб я уже сейчас мог учитывать вашу специфику.
    Помните!!! ваш говнокод кому-то предстоит разгребать.
    Re[6]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 25.11.10 12:50
    Оценка:
    Здравствуйте, Visor2004, Вы писали:

    A>>Ну от попытки хуже никому не станет.

    V>Задачу и разработку архитектуры я начинаю ставить уже сейчас поэтому мне было бы интересно посмотреть на то, что есть у вас. У вас есть какой-то project place, где хостятся сорцы, где общается комманда? Чтоб я уже сейчас мог учитывать вашу специфику.

    Ну у нас есть пара набросков и несколько разных мнений куда двигаться дальше. Есть репозиторий и проч, но сейчас активной разработки не ведётся. Я честно говоря не уверен что проект в текущем виде будет успешно завершён. Если позволят финансы я изменю формат и он из добровольного станет принудительным. Если не позволят, увы. В любом случае вопрос интеграции очень важный и приоритетный. Вы всегда можете вложить в проект вклад предложив удобный с вашей точки зрения формат интеграции.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[7]: Layout Engine #2
    От: Visor2004  
    Дата: 25.11.10 12:55
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, Visor2004, Вы писали:


    A>>>Ну от попытки хуже никому не станет.

    V>>Задачу и разработку архитектуры я начинаю ставить уже сейчас поэтому мне было бы интересно посмотреть на то, что есть у вас. У вас есть какой-то project place, где хостятся сорцы, где общается комманда? Чтоб я уже сейчас мог учитывать вашу специфику.

    A>Ну у нас есть пара набросков и несколько разных мнений куда двигаться дальше. Есть репозиторий и проч, но сейчас активной разработки не ведётся. Я честно говоря не уверен что проект в текущем виде будет успешно завершён. Если позволят финансы я изменю формат и он из добровольного станет принудительным. Если не позволят, увы. В любом случае вопрос интеграции очень важный и приоритетный. Вы всегда можете вложить в проект вклад предложив удобный с вашей точки зрения формат интеграции.


    отписал в личку. Я просто хочу сначала сориентироваться в том, что вообще представляет из себя ваш проект и комманда. Только после этого я смогу понять смогу я вам принести какую-то пользу или нет. Пока у меня есть просто желание заниматься этой тематикой, в феврале будет еще и возможность и необходимость
    Помните!!! ваш говнокод кому-то предстоит разгребать.
    Re[8]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 25.11.10 12:57
    Оценка:
    Здравствуйте, Visor2004, Вы писали:

    V>отписал в личку. Я просто хочу сначала сориентироваться в том, что вообще представляет из себя ваш проект и комманда. Только после этого я смогу понять смогу я вам принести какую-то пользу или нет. Пока у меня есть просто желание заниматься этой тематикой, в феврале будет еще и возможность и необходимость


    Добавил.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[7]: Layout Engine #2
    От: fddima  
    Дата: 25.11.10 13:03
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Ну у нас есть пара набросков и несколько разных мнений куда двигаться дальше. Есть репозиторий и проч, но сейчас активной разработки не ведётся. Я честно говоря не уверен что проект в текущем виде будет успешно завершён. Если позволят финансы я изменю формат и он из добровольного станет принудительным. Если не позволят, увы. В любом случае вопрос интеграции очень важный и приоритетный. Вы всегда можете вложить в проект вклад предложив удобный с вашей точки зрения формат интеграции.

    Я сейчас занят активно другим проектом, и в ближайшее время времени нет вообще.
    Те наброски, что делал я — их — можно смело выкидовать, потому что УГ.
    Опять же неясно куда двигаться дальше, даже в более глобальном плане, чем были разногласия.
    За последние пару месяцев ещё раз убедился, что css селекторы очень удобны, а вот css-layouting в таком виде как он существует — мне лично не интересен, особенно когда упор делается на UI.
    Re[8]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 25.11.10 13:06
    Оценка:
    Здравствуйте, fddima, Вы писали:

    F> Опять же неясно куда двигаться дальше, даже в более глобальном плане, чем были разногласия.

    F> За последние пару месяцев ещё раз убедился, что css селекторы очень удобны, а вот css-layouting в таком виде как он существует — мне лично не интересен, особенно когда упор делается на UI.

    Ну это как бы не новость. Потому появился XUL, потому Андрей в HTMLayout добавил flow/flex. Делать интерфейс толькон а стандартном CSS занятия мазохистическое. Надо будет расширять.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re: Layout Engine #2
    От: sergey_shandar США http://getboost.codeplex.com/
    Дата: 04.12.10 03:11
    Оценка:
    Здравствуйте, adontz, Вы писали:

    Вопросы:
    1. хостинг проекта. codeplex или какой другой?
    2. по поводу HTML parser, может использовать уже готовые описания, например XML Schema для XHTML с W3C сайта. Знаю что это не покроет все, но часть работы может сделать.
    getboost.codeplex.com
    citylizard.codeplex.com
    Re[2]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 04.12.10 06:05
    Оценка:
    Здравствуйте, sergey_shandar, Вы писали:

    _>1. хостинг проекта. codeplex или какой другой?


    Свой Trac+Mercurial

    _>2. по поводу HTML parser, может использовать уже готовые описания, например XML Schema для XHTML с W3C сайта. Знаю что это не покроет все, но часть работы может сделать.


    Угу.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[3]: Layout Engine #2
    От: sergey_shandar США http://getboost.codeplex.com/
    Дата: 04.12.10 07:28
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, sergey_shandar, Вы писали:


    _>>1. хостинг проекта. codeplex или какой другой?


    A>Свой Trac+Mercurial


    _>>2. по поводу HTML parser, может использовать уже готовые описания, например XML Schema для XHTML с W3C сайта. Знаю что это не покроет все, но часть работы может сделать.


    A>Угу.


    Тогда некоторые проекты, не считая xsd.exe:
  • LINQ to XSD — MS забросил разработку, я поддерживал его для себя;
  • Xsd2Code — не знаю, не пользовался, интегрируется с VS, у меня Express;
  • CityLizard Framework — пока только из C# в XML, чтение из XML в разработке, многие фичи еще не реализованны (например строготипизированные простые типы simpleType);

    Под какой лицензией собираетесь делать? Надеюсь не GPL?
  • getboost.codeplex.com
    citylizard.codeplex.com
    Re[5]: Layout Engine #2
    От: sergey_shandar США http://getboost.codeplex.com/
    Дата: 04.12.10 08:48
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, sergey_shandar, Вы писали:


    _>>Под какой лицензией собираетесь делать? Надеюсь не GPL?


    A>Лично я за BSD.


    Предлагаю тогда Apache 2.0, так как детали проработанны, даже MS выпускает под ней.
    getboost.codeplex.com
    citylizard.codeplex.com
    Re[2]: Layout Engine #2
    От: fddima  
    Дата: 06.12.10 06:30
    Оценка:
    Здравствуйте, sergey_shandar, Вы писали:

    _>2. по поводу HTML parser, может использовать уже готовые описания, например XML Schema для XHTML с W3C сайта. Знаю что это не покроет все, но часть работы может сделать.

    Обычного XML достаточно. Схема там вообще не нужна. Всё что не вписывается в схему едет в аттрибуты, точно так же как это сделано в html5 с data-*.
    Обычный HTML — опять же неясно зачем там схема. Набросок парсера есть, очень неэффективного и не поддерживающего несколько состояний, — на мой взгляд это всё лишнее, нужно смотреть исключительно на xhtml/xml.
    Re[3]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 06.12.10 06:32
    Оценка:
    Здравствуйте, fddima, Вы писали:

    Дима, появись в скайпе.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[3]: Layout Engine #2
    От: sergey_shandar США http://getboost.codeplex.com/
    Дата: 06.12.10 13:25
    Оценка:
    Здравствуйте, fddima, Вы писали:

    F>Здравствуйте, sergey_shandar, Вы писали:


    _>>2. по поводу HTML parser, может использовать уже готовые описания, например XML Schema для XHTML с W3C сайта. Знаю что это не покроет все, но часть работы может сделать.

    F> Обычного XML достаточно. Схема там вообще не нужна. Всё что не вписывается в схему едет в аттрибуты, точно так же как это сделано в html5 с data-*.
    F> Обычный HTML — опять же неясно зачем там схема. Набросок парсера есть, очень неэффективного и не поддерживающего несколько состояний, — на мой взгляд это всё лишнее, нужно смотреть исключительно на xhtml/xml.

    Если обычный HTML не нужен, тогда XML Schems приобретает больше смысла. Как минимум — частичная валидация.
    getboost.codeplex.com
    citylizard.codeplex.com
    Re[4]: Layout Engine #2
    От: fddima  
    Дата: 06.12.10 13:45
    Оценка:
    Здравствуйте, sergey_shandar, Вы писали:

    _>Если обычный HTML не нужен, тогда XML Schems приобретает больше смысла. Как минимум — частичная валидация.

    Дело в том что и XHTML и HTML должен быть представлен в DOM. Фактически HTML превращается в XHTML (ну почти), поэтому заострять особо внимание на HTML не вижу особого смысла, на первых порах.
    Насчёт валидации — ради бога, никто ж её не отбирает. Я больше к тому что для лайаутинга и рендеринга валидация и схемы бесполезны.
    Re[7]: Layout Engine #2
    От: fddima  
    Дата: 06.12.10 13:46
    Оценка:
    Здравствуйте, adontz, Вы писали:

    _>>Предлагаю тогда Apache 2.0, так как детали проработанны, даже MS выпускает под ней.

    A>Но это же не рифмуется с LSD!
    А MIT License не нравится?
    Re[8]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 06.12.10 18:09
    Оценка:
    Здравствуйте, fddima, Вы писали:

    _>>>Предлагаю тогда Apache 2.0, так как детали проработанны, даже MS выпускает под ней.

    A>>Но это же не рифмуется с LSD!
    F> А MIT License не нравится?

    Да мне вообще всё равно.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[2]: Layout Engine #2
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 22.05.11 10:06
    Оценка:
    Здравствуйте, _vanger_, Вы писали:

    graphviz. Это только рендерер, не редактор.
    A journey of a thousand miles must begin with a single step © Lau Tsu
     
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.