public override string ToString()
    {
        IEnumerable <string> metadataStrings = new List <string>();

        if (siteDimensionsMetadata != null)
        {
            metadataStrings = metadataStrings.Concat(new string[] { siteDimensionsMetadata.ToString() });
        }

        if (landmarkMetadataList != null)
        {
            metadataStrings = metadataStrings.Concat(landmarkMetadataList.Select(i => i.ToString()));
        }

        if (trafficMetadataList != null)
        {
            metadataStrings = metadataStrings.Concat(trafficMetadataList.Select(i => i.ToString()));
        }

        if (roadMetadataList != null)
        {
            metadataStrings = metadataStrings.Concat(roadMetadataList.Select(i => i.ToString()));
        }

        return(string.Join(METADATA_SEPARATOR.ToString(), metadataStrings.ToArray()));
    }