diff --git a/code/concept_interpretation.py b/code/concept_interpretation.py
index 0f8ae272b..851a072b7 100644
--- a/code/concept_interpretation.py
+++ b/code/concept_interpretation.py
@@ -9,7 +9,7 @@ class concept_type(Enum):
OBJECT_TYPING = auto()
# Packaged directed association class
DIRECTIONAL_BINARY = auto()
- # Packaged intermediate class with normal undirected assocations
+ # Packaged intermediate class with normal undirected associations
DIRECTIONAL_GROUPED = auto()
# N-ary packaged association class
# currently, only approach with concept-introduced string labels
diff --git a/code/process_schema.py b/code/process_schema.py
index 3ff91e9c8..05a10be86 100644
--- a/code/process_schema.py
+++ b/code/process_schema.py
@@ -511,7 +511,7 @@ def write_class2(self, hc, xmi, UMLobject, schema, depth=0):
if depth < 1:
- for rel in ['substitution','realization','dependency', 'assocation']:
+ for rel in ['substitution','realization','dependency', 'association']:
if rel == 'substitution':
dict_to_use = UMLobject.substitution_rel
@@ -519,7 +519,7 @@ def write_class2(self, hc, xmi, UMLobject, schema, depth=0):
elif rel == 'realization':
dict_to_use = UMLobject.realization_rel
reltype = 'real'
- elif rel == 'assocation':
+ elif rel == 'association':
dict_to_use = UMLobject.assoc_rel
reltype = 'assoc'
else:
diff --git a/code/shapes.ttl b/code/shapes.ttl
index 73c259a4d..56451b1e0 100644
--- a/code/shapes.ttl
+++ b/code/shapes.ttl
@@ -1053,7 +1053,7 @@ ex:hasProperty a sh:SPARQLConstraint;
ex:hasNoDuplicateAssociation a sh:SPARQLConstraint;
- sh:message "For assocation '{?resourceName}' - '{?psetName}' {?duplicates} duplicate associations are found" ;
+ sh:message "For association '{?resourceName}' - '{?psetName}' {?duplicates} duplicate associations are found" ;
sh:select """
PREFIX ex:
PREFIX rdf:
diff --git a/code/to_express_repo.py b/code/to_express_repo.py
index 671ed675c..d26982dd0 100644
--- a/code/to_express_repo.py
+++ b/code/to_express_repo.py
@@ -26,7 +26,7 @@
xmi = xmi.doc(fn)
connector_data = namedtuple("connector_data", ("is_inverse", "inverse_order", "aggregation_type", "is_optional"))
-assocation_data = namedtuple("assocation_data", ("own_end", "type", "other_end", "asssocation"))
+association_data = namedtuple("association_data", ("own_end", "type", "other_end", "asssocation"))
# The order in which definitions are to appear in the Express schema
EXPRESS_ORDER=("TYPE", "ENUM", "SELECT", "ENTITY", "FUNCTION", "RULE")
@@ -47,15 +47,15 @@
is_optional = "ExpressOptional" in st.tags()
connectors[c.idref][other_cls] = connector_data(is_inverse, inverse_order, st.tags().get("ExpressAggregation"), is_optional)
-# Extract some data from the assocations for use later on
-assocations = defaultdict(list)
+# Extract some data from the associations for use later on
+associations = defaultdict(list)
for assoc in xmi.by_tag_and_type["packagedElement"]["uml:Association"]:
c1, c2 = assoc/'ownedEnd'
t1, t2 = map(lambda c: (c|"type").idref, (c1, c2))
tv1, tv2 = map(lambda t: xmi.by_id[t].name, (t1, t2))
cv1, cv2 = map(operator.attrgetter('name'), (c1, c2))
- assocations[tv1].append(assocation_data(c2, xmi.by_id[t2], c1, assoc))
- assocations[tv2].append(assocation_data(c1, xmi.by_id[t1], c2, assoc))
+ associations[tv1].append(association_data(c2, xmi.by_id[t2], c1, assoc))
+ associations[tv2].append(association_data(c1, xmi.by_id[t1], c2, assoc))
order = dict()
for o in xmi/"thecustomprofile:ExpressOrdering":
@@ -124,7 +124,7 @@ def generate_definitions():
other_name = xmi.by_id[other].name
[supertypes, subtypes][issub].append(other_name)
- for end_node, end_node_type, other_end, assoc_node in assocations[c.name]:
+ for end_node, end_node_type, other_end, assoc_node in associations[c.name]:
try:
nm = end_node.name
assert nm
diff --git a/code/xmi_document.py b/code/xmi_document.py
index 10b6303fa..345142473 100644
--- a/code/xmi_document.py
+++ b/code/xmi_document.py
@@ -71,7 +71,7 @@ def unescape(s):
def float_international(s):
return float(s.replace(',', '.'))
-assocation_data = namedtuple("assocation_data", ("own_end", "type", "other_end", "asssocation"))
+association_data = namedtuple("association_data", ("own_end", "type", "other_end", "asssocation"))
def yield_parents(node):
yield node
@@ -335,13 +335,13 @@ def supertypes(self, eid):
def extract_associations(self, concepts=False):
- # Extract some data from the assocations for use later on
+ # Extract some data from the associations for use later on
if concepts:
self.concepts = defaultdict(lambda: defaultdict(list))
self.concept_associations = defaultdict(lambda: defaultdict(list))
else:
- self.assocations = defaultdict(list)
+ self.associations = defaultdict(list)
self.assoc_from = defaultdict(list)
self.assoc_to = defaultdict(list)
@@ -390,8 +390,8 @@ def extract_associations(self, concepts=False):
else:
self.assoc_to[from_id].append(to_id)
- self.assocations[tv1].append(assocation_data(c2, self.xmi.by_id[t2], c1, assoc))
- self.assocations[tv2].append(assocation_data(c1, self.xmi.by_id[t1], c2, assoc))
+ self.associations[tv1].append(association_data(c2, self.xmi.by_id[t2], c1, assoc))
+ self.associations[tv2].append(association_data(c1, self.xmi.by_id[t1], c2, assoc))
if concepts:
@@ -677,14 +677,14 @@ def substitute_predefined_type_with_containing_entity(ref_name):
# In case of asymmetric inverse relationships we need to find the
# proper target element.
- assocs_by_name = self.assocations[c.name].copy()
+ assocs_by_name = self.associations[c.name].copy()
# count duplicate role names
counter = Counter()
counter.update(ass[0].name for ass in assocs_by_name)
# flag duplicates
duplicates = [ass[0].name is not None and counter[ass[0].name] > 1 for ass in assocs_by_name]
# look up suppression tag
- suppressed = [self.xmi.tags['ExpressSuppressRel'].get(ass[2].id) == "YES" for ass in self.assocations[c.name]]
+ suppressed = [self.xmi.tags['ExpressSuppressRel'].get(ass[2].id) == "YES" for ass in self.associations[c.name]]
# apply filter
assocs_by_name = [a for a,d,s in zip(assocs_by_name, duplicates, suppressed) if not (d and s)]