public MunicipalitySyndicationContent(
            Guid municipalityId,
            string naamruimte,
            MunicipalityStatus?status,
            string nisCode,
            IEnumerable <Language> officialLanguages,
            IEnumerable <Language> facilitiesLanguages,
            string nameDutch,
            string nameFrench,
            string nameGerman,
            string nameEnglish,
            DateTimeOffset version,
            Organisation?organisation,
            string reason)
        {
            MunicipalityId      = municipalityId;
            Identificator       = new GemeenteIdentificator(naamruimte, nisCode, version);
            MunicipalityStatus  = status?.ConvertFromMunicipalityStatus();
            OfficialLanguages   = officialLanguages.Select(x => x.ConvertFromLanguage()).ToList();
            FacilitiesLanguages = facilitiesLanguages.Select(x => x.ConvertFromLanguage()).ToList();

            var gemeenteNamen = new List <GeografischeNaam>
            {
                new GeografischeNaam(nameDutch, Taal.NL),
                new GeografischeNaam(nameFrench, Taal.FR),
                new GeografischeNaam(nameGerman, Taal.DE),
                new GeografischeNaam(nameEnglish, Taal.EN),
            };

            MunicipalityNames = gemeenteNamen.Where(x => !string.IsNullOrEmpty(x.Spelling)).ToList();

            Provenance = new Provenance(version, organisation, new Reason(reason));
        }
 public MunicipalityListItemResponse(
     string id,
     string naamruimte,
     string detail,
     DateTimeOffset version,
     GeografischeNaam geografischeNaam,
     MunicipalityStatus?municipalityStatus)
 {
     Identificator  = new GemeenteIdentificator(naamruimte, id, version);
     Detail         = new Uri(string.Format(detail, id));
     Gemeentenaam   = new Gemeentenaam(geografischeNaam);
     GemeenteStatus = municipalityStatus?.ConvertFromMunicipalityStatus();
 }