void DTDElementDecl::setContentSpec(ContentSpecNode* toAdopt) { delete fContentSpec; fContentSpec = toAdopt; //reset Content Model setContentModel(0); }
void ComplexTypeInfo::setContentSpec(ContentSpecNode* const toAdopt) { if (fContentSpec && fAdoptContentSpec) { delete fContentSpec; } fContentSpec = toAdopt; //reset Content Model setContentModel(0); }
SimpleType::SimpleType(const std::string& ns) :XSDType(ns), isList_(false), isUnion_(false), uTypes_(0) { setContentModel(Schema::Simple); facetId_.clear(); validFacets_ = new int[XSD_ANYURI + 1]; //This table maintains a flag which indicates what facets_ are valid for a simple type validFacets_[XSD_STRING] = validFacets_[XSD_NMTOKEN] = validFacets_[XSD_NMTOKENS] = validFacets_[XSD_TOKEN] = LENGTH | MINLEN | MAXLEN | ENUM | WSP | PATTERN; validFacets_[XSD_INTEGER] = validFacets_[XSD_INT] = validFacets_[XSD_UINT] = validFacets_[XSD_BYTE] = validFacets_[XSD_POSINT] = ENUM | WSP | MAXEX | MINEX | MAXINC | MININC | TOTALDIGITS | FRAC | PATTERN; validFacets_[XSD_LONG] = validFacets_[XSD_ULONG] = validFacets_[XSD_DECIMAL] = validFacets_[XSD_INT]; validFacets_[XSD_SHORT] = validFacets_[XSD_USHORT] = validFacets_[XSD_INT]; validFacets_[XSD_FLOAT] = validFacets_[XSD_DOUBLE] = ENUM | WSP | MAXEX | MINEX | MAXINC | MININC | PATTERN; validFacets_[XSD_BOOLEAN] = WSP | PATTERN; validFacets_[XSD_TIME] = validFacets_[XSD_DATETIME] = validFacets_[XSD_DATE] = ENUM | WSP | MAXEX | MINEX | MAXINC | MININC | PATTERN; validFacets_[XSD_QNAME] = validFacets_[XSD_NCNAME] = validFacets_[XSD_ANYURI] = LENGTH | MINLEN | MAXLEN | ENUM | WSP | PATTERN; validFacets_[XSD_ANY] = validFacets_[XSD_ANYTYPE] = NONE | PATTERN; validFacets_[XSD_BASE64BIN] = validFacets_[XSD_STRING]; //initialize the union??TODO facetValue_.numEnums = 0; facets_["length"] = LENGTH; facets_["minLength"]= MINLEN; facets_["maxLength"]= MAXLEN; facets_["enumeration"]= ENUM; facets_["whiteSpace"]= WSP; facets_["pattern"]= PATTERN; facets_["maxInclusive"]= MAXINC; facets_["maxExclusive"]= MAXEX; facets_[ "minInclusive"]= MININC; facets_["minExclusive"]= MINEX; facets_["totalDigits"]= TOTALDIGITS; facets_["fractionDigits"]= FRAC; }