Coverage for oc_ocdm / constants.py: 100%

21 statements  

« prev     ^ index     » next       coverage.py v7.13.4, created at 2026-05-08 20:23 +0000

1# SPDX-FileCopyrightText: 2026 Arcangelo Massari <arcangelo.massari@unibo.it> 

2# 

3# SPDX-License-Identifier: ISC 

4 

5from __future__ import annotations 

6 

7 

8class Namespace: 

9 __slots__ = ("_base",) 

10 

11 def __init__(self, base: str) -> None: 

12 self._base = base 

13 

14 def __getattr__(self, name: str) -> str: 

15 if name.startswith("_"): 

16 raise AttributeError(name) 

17 return self._base + name 

18 

19 def __getitem__(self, name: str) -> str: 

20 return self._base + name 

21 

22 

23_XSD = Namespace("http://www.w3.org/2001/XMLSchema#") 

24 

25RDF_TYPE = "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" 

26RDFS_LABEL = "http://www.w3.org/2000/01/rdf-schema#label" 

27 

28XSD_STRING = _XSD.string 

29XSD_DATE = _XSD.date 

30XSD_DATETIME = _XSD.dateTime 

31XSD_DURATION = _XSD.duration 

32XSD_DECIMAL = _XSD.decimal 

33XSD_GYEAR = _XSD.gYear 

34XSD_GYEARMONTH = _XSD.gYearMonth