openc2lib.types.targets.iri
1import rfc3987 2 3from openc2lib.core.target import target 4 5@target('iri') 6class IRI: 7 """ OpenC2 IRI 8 9 Implements the `iri` target (Section 3.4.1.13). 10 Internationalized Resource Identifier, [RFC3987]. 11 """ 12 13 def __init__(self, iri): 14 self.set(iri) 15 16 def set(self, iri): 17 """ Value must be an Internationalized Resource Identifier (IRI) as defined in [RFC3987] """ 18 if rfc3987.match(iri, rule='IRI_reference') is not None: 19 self.__iri = str(iri) 20 else: 21 raise ValueError("Invalid IRI -- not compliant to RFC 3987") 22 23 def get(self): 24 """ Returns the iri as string """ 25 return self.__iri 26 27 def __str__(self): 28 return self.__iri
@target('iri')
class
IRI:
6@target('iri') 7class IRI: 8 """ OpenC2 IRI 9 10 Implements the `iri` target (Section 3.4.1.13). 11 Internationalized Resource Identifier, [RFC3987]. 12 """ 13 14 def __init__(self, iri): 15 self.set(iri) 16 17 def set(self, iri): 18 """ Value must be an Internationalized Resource Identifier (IRI) as defined in [RFC3987] """ 19 if rfc3987.match(iri, rule='IRI_reference') is not None: 20 self.__iri = str(iri) 21 else: 22 raise ValueError("Invalid IRI -- not compliant to RFC 3987") 23 24 def get(self): 25 """ Returns the iri as string """ 26 return self.__iri 27 28 def __str__(self): 29 return self.__iri
OpenC2 IRI
Implements the iri target (Section 3.4.1.13).
Internationalized Resource Identifier, [RFC3987].
def
set(self, iri):
17 def set(self, iri): 18 """ Value must be an Internationalized Resource Identifier (IRI) as defined in [RFC3987] """ 19 if rfc3987.match(iri, rule='IRI_reference') is not None: 20 self.__iri = str(iri) 21 else: 22 raise ValueError("Invalid IRI -- not compliant to RFC 3987")
Value must be an Internationalized Resource Identifier (IRI) as defined in [RFC3987]