Ticket #67 (closed Task: fixed)

Opened 9 years ago

Last modified 7 years ago

Core concepts wording

Reported by: jri Owned by: jri
Priority: Major Milestone: Release 4.1
Component: DeepaMehta Standard Distribution Version: 4.0.2
Keywords: Cc: JuergeN, dgf, irau, Malte
Complexity: 3 Area: Model
Module: deepamehta-core

Description

  • The "whole"/"part" axis should be renamed to "parent"/"child"

While talking about the core concepts with others I realized that "parent"/"child" is much more familar and more handy as "whole"/"part".

  • The datatype "Composite" should be renamed to "Complex".

This opens a memorable "simple"/"complex" axis. In fact there are simple types (text, number, ...), and there are complex types (which are connected to child types).

Furthermore "Composite" is too near to "Composition". In fact a parent type is connected to child types via "Composition" or "Aggregation". No bias should be evoked here.

The wording is crucial. It affects both, conversation and teaching/learning. Furthermore it is exposed in the GUI, in particular when creating types.

All in all this remains to be discussed.

Change History

comment:1 Changed 9 years ago by Malte

  • Milestone Release 4.1 deleted

comment:2 Changed 7 years ago by jri

  • Status changed from new to accepted
  • Owner set to jri
  • Module set to deepamehta-core
  • Milestone set to Release 4.1

Point 1) is accepted.
Point 2) is regarded "wontfix" for the moment.

comment:3 Changed 7 years ago by Jörg Richter

Wording: rename "whole"/"part" role types (#67).

BREAKING CHANGES

6 role types and their URIs are renamed:

  • "dm4.core.whole" -> "dm4.core.parent"
  • "dm4.core.part" -> "dm4.core.child"
  • "dm4.core.whole_type" -> "dm4.core.parent_type"
  • "dm4.core.part_type" -> "dm4.core.child_type"
  • "dm4.core.whole_cardinality" -> "dm4.core.parent_cardinality"
  • "dm4.core.part_cardinality" -> "dm4.core.child_cardinality"

You must serach/replace your code for that URIs.
You must reset the DB.

See ticket 67.

comment:4 Changed 7 years ago by Jörg Richter

Change "whole"/"part" wording in assoc defs (#67).

BREAKING CHANGES

4 Association Definition properties are renamed:

  • whole_type_uri -> parent_type_uri
  • part_type_uri -> child_type_uri
  • whole_cardinality_uri -> parent_cardinality_uri
  • part_cardinality_uri -> child_cardinality_uri

This affects 3 aspects:

1) Defining Association Definitions in declarative migrations (JSON).
2) Accessing Association Definition properties at client-side (JavaScript?).
3) Serializing and parsing Association Definition at server-side (Java).

To adapt your plugins a search/replace should do.
But be careful to not catch other things like local JavaScript? variables.

See ticket 67.

comment:5 Changed 7 years ago by Jörg Richter

Change AssociationDefinition? API wording (#67).

BREAKING CHANGES

6 methods in AssociationDefinition/AssociationDefinitionModel? are renamed:

  • getWholeTypeUri() -> getParentTypeUri()
  • getPartTypeUri() -> getChildTypeUri()
  • getWholeCardinalityUri() -> getParentCardinalityUri()
  • getPartCardinalityUri() -> getChildCardinalityUri()
  • setWholeCardinalityUri() -> setParentCardinalityUri()
  • setPartCardinalityUri() -> setChildCardinalityUri()

To adapt your plugins do a search/replace.

See ticket 67.

comment:6 Changed 7 years ago by Jörg Richter

Change internal "whole"/"part” wording (#67).

Plugins are not affected.

See ticket 67.

comment:7 Changed 7 years ago by Jörg Richter

  • Status changed from accepted to closed
  • Resolution set to fixed

Fix one more "whole"/"part" wording (#67).

Plugins are not affected.

Close ticket 67.

comment:8 Changed 7 years ago by Jörg Richter

Wording: rename "whole"/"part" role types (#67).

BREAKING CHANGES

6 role types and their URIs are renamed:

  • "dm4.core.whole" -> "dm4.core.parent"
  • "dm4.core.part" -> "dm4.core.child"
  • "dm4.core.whole_type" -> "dm4.core.parent_type"
  • "dm4.core.part_type" -> "dm4.core.child_type"
  • "dm4.core.whole_cardinality" -> "dm4.core.parent_cardinality"
  • "dm4.core.part_cardinality" -> "dm4.core.child_cardinality"

You must serach/replace your code for that URIs.
You must reset the DB.

See ticket 67.

comment:9 Changed 7 years ago by Jörg Richter

Change "whole"/"part" wording in assoc defs (#67).

BREAKING CHANGES

4 Association Definition properties are renamed:

  • whole_type_uri -> parent_type_uri
  • part_type_uri -> child_type_uri
  • whole_cardinality_uri -> parent_cardinality_uri
  • part_cardinality_uri -> child_cardinality_uri

This affects 3 aspects:

1) Defining Association Definitions in declarative migrations (JSON).
2) Accessing Association Definition properties at client-side (JavaScript?).
3) Serializing and parsing Association Definition at server-side (Java).

To adapt your plugins a search/replace should do.
But be careful to not catch other things like local JavaScript? variables.

See ticket 67.

comment:10 Changed 7 years ago by Jörg Richter

Change AssociationDefinition? API wording (#67).

BREAKING CHANGES

6 methods in AssociationDefinition/AssociationDefinitionModel? are renamed:

  • getWholeTypeUri() -> getParentTypeUri()
  • getPartTypeUri() -> getChildTypeUri()
  • getWholeCardinalityUri() -> getParentCardinalityUri()
  • getPartCardinalityUri() -> getChildCardinalityUri()
  • setWholeCardinalityUri() -> setParentCardinalityUri()
  • setPartCardinalityUri() -> setChildCardinalityUri()

To adapt your plugins do a search/replace.

See ticket 67.

comment:11 Changed 7 years ago by Jörg Richter

Change internal "whole"/"part” wording (#67).

Plugins are not affected.

See ticket 67.

comment:12 Changed 7 years ago by Jörg Richter

Fix one more "whole"/"part" wording (#67).

Plugins are not affected.

Close ticket 67.

comment:13 Changed 7 years ago by dgf

replace script

find src -name "*.j*" -type f | grep -v vendor | xargs -IFILE sed \
-e 's/dm4.core.whole/dm4.core.parent/g' \
-e 's/dm4.core.part/dm4.core.child/g' \
-e 's/dm4.core.whole_type/dm4.core.parent_type/g' \
-e 's/dm4.core.part_type/dm4.core.child_type/g' \
-e 's/dm4.core.whole_cardinality/dm4.core.parent_cardinality/g' \
-e 's/dm4.core.part_cardinality/dm4.core.child_cardinality/g' \
-e 's/whole_type_uri/parent_type_uri/g' \
-e 's/part_type_uri/child_type_uri/g' \
-e 's/whole_cardinality_uri/parent_cardinality_uri/g' \
-e 's/part_cardinality_uri/child_cardinality_uri/g' \
-e 's/getWholeTypeUri(/getParentTypeUri(/g' \
-e 's/getPartTypeUri(/getChildTypeUri(/g' \
-e 's/getWholeCardinalityUri(/getParentCardinalityUri(/g' \
-e 's/getPartCardinalityUri(/getChildCardinalityUri(/g' \
-e 's/setWholeCardinalityUri(/setParentCardinalityUri(/g' \
-e 's/setPartCardinalityUri(/setChildCardinalityUri(/g' \
-i FILE
Note: See TracTickets for help on using tickets.