diff --git a/src/libs/ifc/schema.qrc b/src/libs/ifc/schema.qrc index 93866bf60..2037ec8b5 100644 --- a/src/libs/ifc/schema.qrc +++ b/src/libs/ifc/schema.qrc @@ -2,6 +2,7 @@ schema/individual_measurements.xsd schema/standard_measurements.xsd + schema/pattern/v0.1.0.xsd schema/pattern/v0.1.1.xsd schema/pattern/v0.1.2.xsd diff --git a/src/libs/ifc/schema/pattern/v0.1.0.xsd b/src/libs/ifc/schema/pattern/v0.1.0.xsd new file mode 100644 index 000000000..7f0a5f96a --- /dev/null +++ b/src/libs/ifc/schema/pattern/v0.1.0.xsd @@ -0,0 +1,290 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/libs/ifc/xml/vpatternconverter.cpp b/src/libs/ifc/xml/vpatternconverter.cpp index aac3d0184..af47c64ed 100644 --- a/src/libs/ifc/xml/vpatternconverter.cpp +++ b/src/libs/ifc/xml/vpatternconverter.cpp @@ -39,7 +39,7 @@ * 4. patch - little change. */ -const QString VPatternConverter::PatternMinVerStr = QStringLiteral("0.1.1"); +const QString VPatternConverter::PatternMinVerStr = QStringLiteral("0.1.0"); const QString VPatternConverter::PatternMaxVerStr = QStringLiteral("0.1.2"); const QString VPatternConverter::CurrentSchema = QStringLiteral("://schema/pattern/v0.1.2.xsd"); @@ -86,6 +86,8 @@ QString VPatternConverter::XSDSchema(int ver) const switch(ver) { + case (0x000100): + return QStringLiteral("://schema/pattern/v0.1.0.xsd"); case (0x000101): return QStringLiteral("://schema/pattern/v0.1.1.xsd"); case (0x000102): @@ -105,6 +107,13 @@ void VPatternConverter::ApplyPatches() { switch(ver) { + case (0x000100): + { + ToV0_1_1(); + const QString schema = XSDSchema(0x000101); + ValidateXML(schema, fileName); + // continue conversion + } case (0x000101): { ToV0_1_2(); @@ -138,8 +147,15 @@ void VPatternConverter::ApplyPatches() } //--------------------------------------------------------------------------------------------------------------------- -void VPatternConverter::ToV0_1_2() +void VPatternConverter::ToV0_1_1() { - SetVersion("0.1.2"); + SetVersion(QStringLiteral("0.1.1")); + Save(); +} + +//--------------------------------------------------------------------------------------------------------------------- +void VPatternConverter::ToV0_1_2() +{ + SetVersion(QStringLiteral("0.1.2")); Save(); } diff --git a/src/libs/ifc/xml/vpatternconverter.h b/src/libs/ifc/xml/vpatternconverter.h index 118176eea..0c33f8507 100644 --- a/src/libs/ifc/xml/vpatternconverter.h +++ b/src/libs/ifc/xml/vpatternconverter.h @@ -54,6 +54,7 @@ private: Q_DISABLE_COPY(VPatternConverter) static const QString PatternMinVerStr; + void ToV0_1_1(); void ToV0_1_2(); };