Экспорт ReqIF из DOORS через DWA
Моя цель - экспортировать проект DOORS в ReqIF с помощью Java. Как я могу этого добиться? Я знаю, что это можно сделать вручную в клиенте DOORS, поэтому я предполагаю, что есть способ автоматизировать и это.
В настоящее время ближе всего к этому я подошел к использованию DWA, OSLC и LYO для экспорта одного требования в строку XML. Тем не менее, это также имеет серьезные проблемы в виде потери полей или информации.
Я хочу своего рода конвейер, в котором я могу гарантировать, что если я импортирую файл ReqIF в DOORS, я могу экспортировать его и снова получить то же самое.
Однако в настоящее время я наблюдаю следующее:
ReqIF (Input) DOORS OSLC (Output)
------------------------------------------------------------------------------------------------
ReqIF.ForeignID ForeignID doorsAttribute:absoluteNumber
Absolute Number dcterms:identifier
AdditionalInfo AdditionalInfo m_property:attrDef-1003
Created By doorsAttribute:createdBy [One Value]
ReqIF.ForeignCreatedBy ForeignCreatedBy doorsAttribute:createdBy [A different value]
Created On doorsAttribute:createdOn [One Value]
ReqIF.ForeignCreatedOn ForeignCreatedOn doorsAttribute:createdOn [A different value]
dcterms:created
ReqIF.ForeignCreatedThru Created Thru doorsAttribute:createdThru
FollowupReference FollowupReference rm_property:attrDef-1006
FollowupReference2 FollowupReference2 rm_property:attrDef-1007
FunctionalApportionment FunctionalAppointment [LOST]
ImplementerName ImplementerName [LOST]
IsReq IsReq rm_property:attrDef-1015
ReqIF.ForeignModifiedBy ForeignModifiedBy doorsAttribute:modifiedBy [One Value]
Last Modified By doorsAttribute:modifiedBy [A different value]
ReqIF.ForeignModifiedOn ForeignModifiedOn doorsAttribute:modifiedOn
Last Modified On doorsAttribute:modifiedOn
rm_property:attrDef-8
dcterms:modified
ReqIF.ChapterName Object Heading doorsAttribute:objectHeading
Object Number
ReqIF.Name Object Short Text doorsAttribute:objectShortText
dcterms:description
ReqIF.Text Object Text rm:primaryText
Paragraph Style Paragraph Style rm_property:attrDef-1016
Picture [LOST]
PictureName [LOST]
PictureNum [LOST]
Rational Rational rm_property:attrDef-1017
Req-Id Req-Id rm_property:attrDef-1018
ReqSafetyLevel ReqSafetyLevel [LOST]
SourceReference SourceReference rm_property:attrDef-1020
SourceReference2 SourceReference2 rm_property:attrDef-1021
StageFrom StageFrom [LOST]
StageTo StageTo [LOST]
VerificationMethod VerificationMethod [LOST]
VerificationState VerificationState rm_property:attrDef-1025
VerifierComment VerifierComment rm_property:attrDef-1026
oslc:instanceShape
acp:accessControl
dcterms:contributor
oslc:serviceProvider
Очевидно, что у этого подхода есть некоторые проблемы, в первую очередь то, что некоторые значения из исходного ввода ReqIF никогда не достигают вывода OSLC. Но есть также проблема, что некоторые поля в выводимом XML имеют одинаковый заголовок и поэтому неразличимы, но содержат разные значения. Вот несколько примеров вывода:
<doorsAttribute:modifiedBy rdf:parseType="Literal"><div>ForeignModifiedBy: bcsthfr</div></doorsAttribute:modifiedBy>
<doorsAttribute:modifiedBy rdf:parseType="Literal">kira_resari</doorsAttribute:modifiedBy>
<doorsAttribute:modifiedOn rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2015-01-14</doorsAttribute:modifiedOn>
<doorsAttribute:modifiedOn rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2020-08-07</doorsAttribute:modifiedOn>
Вот почему я сейчас ищу другой подход, который просто возвращал бы мне ReqIF в импортированном виде в виде строки или файла. Возможно ли это, и если да, то как я могу это сделать?