//-------------------------------------------------------------------------------------------------------- // This constructor is used to construct built-in complex types defined in the XBRL specification. //-------------------------------------------------------------------------------------------------------- internal ComplexType(string Name, AnySimpleType BaseSimpleType, AttributeGroup AttrGroup) { thisAttributeGroup = AttrGroup; thisComplexTypeNode = null; thisName = Name; thisSimpleContentType = BaseSimpleType; }
//-------------------------------------------------------------------------------------------------------- // This constructor is used to construct user-defined complex types defined in XBRL schemas. //-------------------------------------------------------------------------------------------------------- internal ComplexType(INode ComplexTypeNode, INamespaceManager namespaceManager) { thisAttributeGroup = null; thisComplexTypeNode = ComplexTypeNode; thisName = ComplexTypeNode.GetAttributeValue("name"); thisSimpleContentType = null; foreach (INode CurrentChildNode in ComplexTypeNode.ChildNodes) { if (CurrentChildNode.LocalName.Equals("simpleContent") == true) { thisSimpleContentType = new SimpleType(CurrentChildNode, namespaceManager); } } }