diff --git a/nomad/app/flask/dcat/mapping.py b/nomad/app/flask/dcat/mapping.py index 5cce7a61817f48e1d9454a7733abd7d72f6f89bf..feef5f2bd15b1a771859e9962dd642b3baffe87a 100644 --- a/nomad/app/flask/dcat/mapping.py +++ b/nomad/app/flask/dcat/mapping.py @@ -40,12 +40,12 @@ def get_optional_entry_prop(entry, name): class Mapping(): def __init__(self): self.g = Graph() - self.g.namespace_manager.bind('rdf', RDF) - self.g.namespace_manager.bind('dcat', DCAT) - self.g.namespace_manager.bind('dct', DCT) - self.g.namespace_manager.bind('vcard', VCARD) - self.g.namespace_manager.bind('foaf', FOAF) - self.g.namespace_manager.bind('hydra', HYDRA) + self.g.bind('rdf', RDF) + self.g.bind('dcat', DCAT) + self.g.bind('dct', DCT) + self.g.bind('vcard', VCARD) + self.g.bind('foaf', FOAF) + self.g.bind('hydra', HYDRA) self.persons = {} @@ -76,6 +76,9 @@ class Mapping(): self.g.add((hydra_collection, RDF.type, HYDRA.collection)) + for person in self.persons.values(): + self.g.add((catalog, DCT.creator, person)) + def map_entry(self, entry: EntryMetadata, slim=False): dataset = URIRef(url('datasets', entry.calc_id)) diff --git a/nomad/config.py b/nomad/config.py index 2e11792eda59a34b19e1a79367baaf2205d6897b..fb56c7ddc5d5a89a8ea240efcd045c62c56961bf 100644 --- a/nomad/config.py +++ b/nomad/config.py @@ -177,8 +177,7 @@ tests = NomadConfig( def api_url(ssl: bool = True, api: str = 'api'): protocol = 'https' if services.https and ssl else 'http' host_and_port = services.api_host.strip('/') - standard_port = 443 if protocol == 'https' else 80 - if services.api_port != standard_port: + if services.api_port not in [80, 443]: host_and_port += ':' + str(services.api_port) base_path = services.api_base_path.strip('/') return f'{protocol}://{host_and_port}/{base_path}/{api}'