summaryrefslogtreecommitdiff
path: root/cpp/src/slice2xsd/Gen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/slice2xsd/Gen.cpp')
-rw-r--r--cpp/src/slice2xsd/Gen.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/cpp/src/slice2xsd/Gen.cpp b/cpp/src/slice2xsd/Gen.cpp
index 544755be7fa..3d4e1277929 100644
--- a/cpp/src/slice2xsd/Gen.cpp
+++ b/cpp/src/slice2xsd/Gen.cpp
@@ -192,7 +192,7 @@ Slice::Gen::visitClassDefStart(const ClassDefPtr& p)
end(); // xs:complexType
O << sp << nl << "<xs:element name=\"" << scopeId << p->name()
- << "\" type=\"tns:" << internalId << scopeId << p->name() << "Type\"/>";
+ << "\" type=\"tns:" << internalId << scopeId << p->name() << "Type\" nillable=\"true\"/>";
return true;
}
@@ -397,6 +397,9 @@ Slice::Gen::visitSequence(const SequencePtr& p)
<< "\" minOccurs=\"0\" maxOccurs=\"unbounded\"/>";
end(); // xs:sequence
+
+ O << nl << "<xs:attribute name=\"length\" type=\"xs:long\"/>";
+
end(); // xs:complexType
O << sp;
@@ -456,6 +459,9 @@ Slice::Gen::visitDictionary(const DictionaryPtr& p)
<< " minOccurs=\"0\" maxOccurs=\"unbounded\"/>";
end(); // xs:sequence
+
+ O << nl << "<xs:attribute name=\"length\" type=\"xs:long\"/>";
+
end(); // xs:complexType
O << sp;