internal override void parseJObject(JObject obj)
{
base.parseJObject(obj);
JToken token = obj.GetValue("CoordinateSpaceDimension", StringComparison.InvariantCultureIgnoreCase);
if (token != null)
CoordinateSpaceDimension = token.Value<int>();
token = obj.GetValue("Precision", StringComparison.InvariantCultureIgnoreCase);
if (token != null)
Precision = token.Value<double>();
WorldCoordinateSystem = mDatabase.parseJObject<IfcAxis2Placement>(obj.GetValue("WorldCoordinateSystem", StringComparison.InvariantCultureIgnoreCase) as JObject);
TrueNorth = mDatabase.parseJObject<IfcDirection>(obj.GetValue("TrueNorth", StringComparison.InvariantCultureIgnoreCase) as JObject);
List<IfcGeometricRepresentationSubContext> subs = mDatabase.extractJArray<IfcGeometricRepresentationSubContext>(obj.GetValue("HasSubContexts", StringComparison.InvariantCultureIgnoreCase) as JArray);
foreach (IfcGeometricRepresentationSubContext sub in subs)
sub.ContainerContext = this;
}