2016-07-28 5 views
-1

Я пытаюсь создать плоский файл для тестовых данных с помощью JAVA. У плоского файла есть собственный документ сопоставления, который описывает все поля каждой строки.XSD для генерации testdata

Мне предложили использовать XSD для картографирования, и я провел некоторое исследование по XSD. Поскольку я понял, что XSD предназначен только для проверки XML. В этом случае я должен произвольно генерировать XML-файл на основе XSD и преобразовывать его в txt или другой формат. Потому что в качестве вывода мне нужен плоский файл, а не XML.

Похоже, что с помощью XSD я добавляю дополнительные шаги при создании файла в качестве первого создания XML, проверки с помощью XSD и преобразования его ожидаемого формата.

Какова была бы ваша рекомендация в моей ситуации для последующего отображения документа?

Заранее спасибо.

+1

Можете ли вы предоставить то, что вы попробовали, образцы данных и образец вывода? – Andy

+1

вас попросили использовать XSD или XSLT для сопоставления? XSD - это определение схемы, которое иллюстрирует организацию XML, XSLT может отображать/преобразовывать XML в текст/xml/html или другие форматы. –

+1

. Узнайте, как создать [Минимальный, Полный и Подтверждаемый пример] (http: // stackoverflow. com/help/mcve) –

ответ

1

Я видел ваши настройки раньше. Причины могут отличаться от вашего конкретного сценария, но, тем не менее, это имеет смысл. Одна вещь, которую следует учитывать, связана с навыками и инструментами, которые есть у людей, и тем самым делает работу быстро и хорошо.

Вы, похоже, описываете «плоскую» структуру данных на основе смещения. В моем случае люди использовали учебники КОБЛ, которые очень хорошо описывают это. У IBM Rational Developer был встроенный мастер, который позволяет создавать Java Data Bindings из учебника COBOL. Это означает, что через минуту вы получите Java-класс, который может мгновенно создать запись для вашего плоского файла (он поставляется со всей логикой, необходимой для заполнения и т. Д.)

Чтобы получить данные, сгенерированные , есть инструменты, способные генерировать XML-файлы, которые охватывают все ограничения, определенные XSD (например, альтернативный контент, то есть xsd: выбор, перечисляемые значения и т. д.). Теперь, предполагая, что у вас есть надлежащий XSD, описывающий вашу логическую модель вашего плоского файла, может получить 10, 100, даже 100 КБ XML, созданный из спецификации XSD. Для создания этих файлов требуется щелчок, а также время, затрачиваемое инструментом.

Далее, чтобы получить XML-файлы в вашем сгенерированном Java-классе, и поэтому избегайте прохождения через XSLT или что-то еще (у многих магазинов нет навыков), это может быть так же просто, как писать код отображения Java между генерируемым классом JAXB и тот, который был создан выше, или если совпадение возможно, просто аннотируйте сгенерированный класс для поддержки JAXB unmarshalling. Этот последний шаг может занять больше времени, но это будет тривиальный код, который любой разработчик Java знал бы, как это сделать.

Это может дать вам представление о том, почему кто-то может рекомендовать Java и XSD для этой задачи. XSD - это язык моделирования со встроенной поддержкой ограничений, что может оказаться полезным при создании тестовых данных с помощью комбинаторных методов.

Смежные вопросы