savita_Bgm Ответов: 2

Как конвертировать XSD в HTML


Привет

У меня есть файл .XSD, я хочу преобразовать его в HTML-файл и сохранить этот файл где-нибудь для дальнейшего использования. может ли какой-нибудь орган сказать мне, как это сделать? Я новичок в VC++/MFC, если это возможно, с кодом объясните мне.

Спасибо в Adavnce

2 Ответов

Рейтинг:
2

Espen Harlinn

Элементы xml-схемы образуют дерево узлов, основанное на объектной модели.

Для платформы .Net эта объектная модель реализована в Системы.В формате XML.Пространство Имен Схемы [^].

Вам нужно будет преобразовать различные объекты в html-представление, подходящее для типа объекта - и поскольку их очень много, это определенно не тривиальное упражнение.

С уважением
Эспен Харлинн


Sergey Alexandrovich Kryukov

Хорошо и полезно, мой 5. Я все еще думаю, что мое объяснение указывает на самое главное: концептуальное несоответствие в неопределенном характере проблемы, пожалуйста, см.
--СА

Espen Harlinn

Хотя это определенно не лучший способ изложить свой вопрос - вы найдете его на полпути http://forums.asp.net/t/1400134.aspx - вот почему он просит Вас: "пожалуйста, пройдите через это" :)

Sergey Alexandrovich Kryukov

Извините, что не согласен: я видел это и все еще думаю, что это все еще не имеет никакого смысла, если только кто-то не объяснит его ценность, которая может быть там, но оставлена совершенно без какого-либо обоснования.
--СА

Espen Harlinn

Я не уверен, что это имеет смысл, но вот идет:

Я хочу, чтобы отобразить "hiberarchy соответствие xsd-х", а не "правил" в этом случае:

начните с корневого элемента, для каждого дочернего элемента & amp; атрибут:

1.если атрибут элемента не типа или дочернего элемента xsd и встроенного типа, таких как int,строка,логическое значение, атрибут будет

отображается как текстовый ввод (для int &string) html или radiobutton (для bool).

2.Если тип дочернего элемента элемента является сложным типом, выполните шаг 1 до тех пор, пока тип всего элемента не станет встроенным типом xsd.

Я хочу реализовать эту логику в методе класса так, чтобы всякий раз, когда в качестве параметра метода передается xsd, метод

возвращает HTML-сегмент, отображающий гиберархию xsd.

Sergey Alexandrovich Kryukov

Мой ответ ниже (извините, немного неуместен)
--СА

Sergey Alexandrovich Kryukov

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

Espen Harlinn

Да - и это не тривиальная вещь, чтобы реализовать ее таким образом, чтобы выделиться на фоне конкурентов :)

Sergey Alexandrovich Kryukov

На самом деле дело не в конкуренции.
Спокойной ночи!
--СА

Рейтинг:
0

Sergey Alexandrovich Kryukov

Не то чтобы это невозможно; это не имеет никакого значения. определенный чувство. Другими словами, Ваш вопрос не определяет никакого смысла, в котором такое "преобразование" (какой неправильный термин!) должно быть сделано.

XSD (XML Schema Definition) - это способ описания схемы метаданных. Например, его можно использовать для описания стандарта HTML (строго говоря, только XHTML). HTML представляет собой данные, которые должны быть записаны в соответствии со стандартом HTML (X). Другими словами, один единственный XSD должен описывать целый большой набор различных XMLs (теоретически бесконечный, но счетный набор). Мы пришли к концептуальному несоответствию.

Однако любые метаданные-это своего рода данные, и XSD не является исключением, он сам написан в XML, и любой XML может быть визуализирован как некоторая разметка, которая может быть реализована как HTML и визуализирована так, как можно читать и понимать XSD как схему. Предупреждение: это всего лишь пример наивного "преобразования", которое никоим образом не является единственным решением, служащим какой-либо конкретной цели (кроме показа XSD в удобочитаемом для человека виде); "реальная" цель мне неизвестна; и ваш вопрос предполагает, что вы сами ее не совсем понимаете.

Замените все символы '<', '>' и '&' на HTML-символьные сущности &lt;, &gt; и &amp; соответственно и переместите содержимое XSD-файла в теги <pre>/pre>. Вот и все.

—СА


savita_Bgm

http://forums.asp.net/t/1400134.aspx пожалуйста, пройдите через это, это точно так же, как и моя проблема

Sergey Alexandrovich Kryukov

В этой статье не объясняется то, что я только что объяснил, Они просто говорят, используйте XSLT. Ну, просто используй его, подумаешь! Проблема не в инструменте, проблема в том, что вы не знаете, что должно быть в вашем результате, или не отвечаете. Нет даже образца вручную написанных XSD и HTML. Это единственная проблема. Ваша ссылка ничего к этому не добавляет.
Честно говоря, есть ли у вас какое-то представление о том, каким должен быть ваш результат?
--СА