if (state == null) {
Document document = documentFactory.createDocument(uri);
SVGOMDocument svgDoc = (SVGOMDocument)document;
DefaultSVGContext ctx = (DefaultSVGContext)svgDoc.getSVGContext();
ctx.setUserStyleSheetURI(userAgent.getUserStyleSheetURI());
DocumentDescriptor desc = documentFactory.getDocumentDescriptor();
state = new DocumentState(uri, document, desc);
cacheMap.put(uri, state);
}
return state.document;
}