@@ -235,7 +235,7 @@ parseComplexContent c = do
235235 _ -> parseError c "Expected one of restriction or extension"
236236
237237parseComplexExtension :: Cursor -> P Xsd.ComplexExtension
238−parseComplexExtension c = do
238+parseComplexExtension c = handleNamespaces c $ do
239239 base <- theAttribute "base" c >>= makeQName c
240240 attributes <- parseAttributes c
241241 model <- parseModelGroup c
@@ -452,8 +452,9 @@ makeElemAxis name = do
452452makeQName :: Cursor -> Text -> P Xsd.QName
453453makeQName c t = case Text.splitOn ":" t of
454454 [n] -> do
455+ ns <- asks (lookup Nothing . envPrefixes)
455456 return Xsd.QName
456− { Xsd.qnNamespace = Nothing
457+ { Xsd.qnNamespace = ns
457458 , Xsd.qnName = n
458459 }
459460 [p, n] -> do