diff --git a/src/libs/ifc/schema.qrc b/src/libs/ifc/schema.qrc index f8b8fe11e..d1285d947 100644 --- a/src/libs/ifc/schema.qrc +++ b/src/libs/ifc/schema.qrc @@ -6,5 +6,6 @@ schema/pattern/v0.1.1.xsd schema/pattern/v0.1.2.xsd schema/pattern/v0.1.3.xsd + schema/pattern/v0.1.4.xsd diff --git a/src/libs/ifc/schema/pattern/v0.1.4.xsd b/src/libs/ifc/schema/pattern/v0.1.4.xsd new file mode 100644 index 000000000..059a82091 --- /dev/null +++ b/src/libs/ifc/schema/pattern/v0.1.4.xsd @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/libs/ifc/xml/vpatternconverter.cpp b/src/libs/ifc/xml/vpatternconverter.cpp index f3f834ea8..028b1ae8a 100644 --- a/src/libs/ifc/xml/vpatternconverter.cpp +++ b/src/libs/ifc/xml/vpatternconverter.cpp @@ -40,8 +40,8 @@ */ const QString VPatternConverter::PatternMinVerStr = QStringLiteral("0.1.0"); -const QString VPatternConverter::PatternMaxVerStr = QStringLiteral("0.1.3"); -const QString VPatternConverter::CurrentSchema = QStringLiteral("://schema/pattern/v0.1.3.xsd"); +const QString VPatternConverter::PatternMaxVerStr = QStringLiteral("0.1.4"); +const QString VPatternConverter::CurrentSchema = QStringLiteral("://schema/pattern/v0.1.4.xsd"); //--------------------------------------------------------------------------------------------------------------------- VPatternConverter::VPatternConverter(const QString &fileName) @@ -93,6 +93,8 @@ QString VPatternConverter::XSDSchema(int ver) const case (0x000102): return QStringLiteral("://schema/pattern/v0.1.2.xsd"); case (0x000103): + return QStringLiteral("://schema/pattern/v0.1.3.xsd"); + case (0x000104): return CurrentSchema; default: { @@ -140,6 +142,16 @@ void VPatternConverter::ApplyPatches() #endif } case (0x000103): + { + ToV0_1_4(); + const QString schema = XSDSchema(0x000104); + ValidateXML(schema, fileName); + // continue conversion + #ifdef Q_CC_CLANG + [[clang::fallthrough]]; + #endif + } + case (0x000104): break; default: break; @@ -184,3 +196,10 @@ void VPatternConverter::ToV0_1_3() SetVersion(QStringLiteral("0.1.3")); Save(); } + +//--------------------------------------------------------------------------------------------------------------------- +void VPatternConverter::ToV0_1_4() +{ + SetVersion(QStringLiteral("0.1.4")); + Save(); +} diff --git a/src/libs/ifc/xml/vpatternconverter.h b/src/libs/ifc/xml/vpatternconverter.h index c9075318d..5df5443cd 100644 --- a/src/libs/ifc/xml/vpatternconverter.h +++ b/src/libs/ifc/xml/vpatternconverter.h @@ -58,6 +58,7 @@ private: void ToV0_1_1(); void ToV0_1_2(); void ToV0_1_3(); + void ToV0_1_4(); }; #endif // VPATTERNCONVERTER_H