Какой статус у Фобоса std.xml? - PullRequest
       26

Какой статус у Фобоса std.xml?

4 голосов
/ 28 октября 2011

Я работаю над началом портирования своей веб-инфраструктуры ООП на основе php на язык d, и у меня возникают некоторые затруднения с выяснением, можно ли полагаться на классы phobos 'std.xml для чтения xml из файлов и / или потоки. Похоже, что при замене std.xml довольно много болтовни, да и то, что я собираюсь развернуть свой собственный 100% d xml-парсер.

Так как это очень увлекательный проект, я не возражаю против разработки собственных колес, это было бы забавным упражнением и дало бы мне возможность узнать больше о языке быстрее. С другой стороны, если бы мне не пришлось кататься самостоятельно, я мог бы работать быстрее.

Мне нужно будет поддерживать в основном почти полную спецификацию xml 1.0 , в первую очередь мне понадобятся пространства имен xml и xinclude для правильной работы. Я также хотел бы, чтобы мой API был более или менее совместим с реализацией php DOMDocument, c # System.Xml.XmlDocument и javascript DOM. особенно этот последний бит, кажется, отсутствует на Фобосе. Кроме того, похоже, что Фобос все еще находится в движении, и я не в курсе скорости потока, в котором он находится.

Большой вопрос для этого таков: Безопасно ли полагаться на инструменты синтаксического анализа в Фобосе std.xml, способные обеспечить львиную долю моих требований, или я должен написать что-то от в моей собственной библиотеке, чтобы быть в безопасности?

При ответе, пожалуйста, учитывайте мои требования:

  1. полная поддержка xmlns
  2. xincludes
  3. должен уметь читать из файла, потока или строки
  4. должно быть как можно ближе к большим реализациям DOM и спецификации

Ответы [ 2 ]

4 голосов
/ 28 октября 2011

Не используйте std.xml.Помимо того, что это ужасная библиотека, в какой-то момент ее заменят.

2 голосов
/ 30 октября 2011

std.xml будет заменен. Но есть DOM XML-парсер для D2, возможно, вам стоит попробовать. Это в github (dom.d): https://github.com/adamdruppe/misc-stuff-including-D-programming-language-web-stuff

...