Example #1
0
 def schemaDiscoverChildElements(self, parentElement):
     for element in parentElement.childNodes:
         if element.nodeType == 1: #element
             ln = element.localName
             ns = element.namespaceURI
             modelObject = None
             if ns == XbrlConst.link:
                 if ln == "roleType":
                     modelObject = ModelObject.create(self, element)
                     self.modelXbrl.roleTypes[modelObject.roleURI].append(modelObject)
                 elif ln == "arcroleType":
                     modelObject = ModelObject.create(self, element)
                     self.modelXbrl.arcroleTypes[modelObject.arcroleURI].append(modelObject)
                 elif ln == "linkbaseRef":
                     self.schemaLinkbaseRefDiscover(element)
                 elif ln == "linkbase":
                     self.linkbaseDiscover(element)
             elif ns == XbrlConst.xsd:
                 if ln in xsdModelObjects:
                     modelObject = ModelObject.create(self, element)
                 elif ln == "import" or ln == "include":
                     self.importDiscover(element)
             # save document objects indexed by id
             if modelObject is not None and element.hasAttribute("id"):
                 self.idObjects[element.getAttribute("id")] = modelObject
             # recurse to children
             self.schemaDiscoverChildElements(element)
Example #2
0
 def schemaDiscoverChildElements(self, parentElement):
     for element in parentElement.childNodes:
         if element.nodeType == 1:  #element
             ln = element.localName
             ns = element.namespaceURI
             modelObject = None
             if ns == XbrlConst.link:
                 if ln == "roleType":
                     modelObject = ModelObject.create(self, element)
                     self.modelXbrl.roleTypes[modelObject.roleURI].append(
                         modelObject)
                 elif ln == "arcroleType":
                     modelObject = ModelObject.create(self, element)
                     self.modelXbrl.arcroleTypes[
                         modelObject.arcroleURI].append(modelObject)
                 elif ln == "linkbaseRef":
                     self.schemaLinkbaseRefDiscover(element)
                 elif ln == "linkbase":
                     self.linkbaseDiscover(element)
             elif ns == XbrlConst.xsd:
                 if ln in xsdModelObjects:
                     modelObject = ModelObject.create(self, element)
                 elif ln == "import" or ln == "include":
                     self.importDiscover(element)
             # save document objects indexed by id
             if modelObject is not None and element.hasAttribute("id"):
                 self.idObjects[element.getAttribute("id")] = modelObject
             # recurse to children
             self.schemaDiscoverChildElements(element)