This issue is waiting on data from usability testing.

Motivation

Coming from the review in #1847596-119: Remove Taxonomy term reference field in favor of Entity reference and the following discussions

Proposed Resolution

a) let's change the field label to be only "Reference".
b) take entity out of the ui everywhere

Remaining Tasks

  • Usability Testing (see #22)
  • Discuss if also remove Entity from module name.

Original Issue summary

Coming from the review in #1847596-119: Remove Taxonomy term reference field in favor of Entity reference and the following discussions, let's change the field label to be only "Reference".

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

amateescu’s picture

Status: Active » Needs review
FileSize
609 bytes
xjm’s picture

Let's fix it everywhere. Tagging for usability review for the strings. Screenshots shortly. :)

xjm’s picture

In before/after pairs:

Module admin page

(Note: "Reference Field" should be title-cased here; I'll fix that once the strings have been reviewed.)

module_page_before.png

module_page_after.png

Manage fields

manage_fields_before.png

manage_fields_after.png

Field settings

target_type_before.png

target_type_after.png

Reference method (instance settings)

reference_method_before.png

reference_method_after.png

Views style selection (creating a new display)

views_select_style_before.png

views_select_style_after.png

Views administrative listing

views_list_before.png

views_list_after.png

David_Rothstein’s picture

-    '#description' => t('The entity type that can be referenced through this field.'),
+    '#description' => t('The type of data this field references.'),

Seems to me this description could just be removed altogether. (Especially if #1953832: Replace 'target type' on entity reference field settings with something clearer improves the title, it shouldn't be necessary.)

xjm’s picture

Bojhan’s picture

Issue tags: -Needs usability review

Agreed! I Really love if we could keep this simple.

xjm’s picture

Rerolled around #1953832: Replace 'target type' on entity reference field settings with something clearer, plus cleaning up the module name and description a little.

Bojhan’s picture

Is this RTBC?

xjm’s picture

Ready from my perspective, if all the string changes look alright.

Bojhan’s picture

Status: Needs review » Reviewed & tested by the community
webchick’s picture

Status: Reviewed & tested by the community » Needs work

Hm. If we're going to make such changes, I feel like we really ought to make the API consistent.

--- a/core/modules/entity_reference/entity_reference.info.yml
+++ b/core/modules/entity_reference/entity_reference.info.ymlundefined

@@ -1,5 +1,5 @@
-name: 'Entity reference'
+name: 'Reference Field'

For example, this doesn't make much sense. If we're going to change the name of the module, let's change the name of the module?

+++ b/core/modules/entity_reference/entity_reference.info.yml
+description: 'Provides a field that can reference other items (content, files, taxonomy terms, etc.).'

Also, for the type of people turning on modules, I don't see a reason not to expose that these are "entities" and not nonsense words like "items." For the content type setter-upper, though, that's a bit different.

Can we get a patch here that does nothing other than http://drupal.org/files/manage_fields_after.png ? It feels like the other chances are quite sweeping in nature and I'd rather not hold up a minor wording tweak.

xjm’s picture

For example, this doesn't make much sense. If we're going to change the name of the module, let's change the name of the module?

How is this any different from, you know, nodes?

Also, for the type of people turning on modules, I don't see a reason not to expose that these are "entities" and not nonsense words like "items." For the content type setter-upper, though, that's a bit different.

I disagree. The first time someone uses Drupal, one of the first things that person does is look at the modules page to see what functionality is available. For that person, the current module name and description are incomprehensible.

Edit: Also, really, "entity" is the nonsense word here to normal people. "Item" is self-explanatory. At D7 launch, "entity" made me think of this:
http://www.treknews.net/wp-content/uploads/2012/07/star-trek-tng-bluray-...

xjm’s picture

Status: Needs work » Needs review
xjm’s picture

Also, changing it on the field page but NOT the module page is a serious WTF, because there's then no relationship between the field and the module that provides it. I don't think we can do one without the other.

webchick’s picture

The name of node.module is Node. It's a totally different thing than naming entity_reference.module "Reference Field." And while "node" is a nonsense word that never means "a blog or a poll," thus somewhat justyfing a 1984-esque ban on calling things what they actually are, an "Entity" is an actual standard term in Entity-Relationship modelling, which is what you're doing when you're defining your data model for your site. Like with Taxonomy, I don't see a compelling reason to obfuscate this to end users; I'd much rather handle explaining this concept with Tour module than conflating with a generic noun that effectively means nothing.

If we want to rename the entire module to "Reference," then let's do that. But then that means renaming it wholesale, not making the UI and the API inconsistent with each other.

oresh’s picture

@webchick,
totally agree with you. I think changing the title doesn't add a lot to usability.
For developers used to 'entity reference' label and module this will be also unfamiliar and will vice versa reduce the usability. So the changes are not critical (from my point of view), and should be changed if there's a certain need for that.

amateescu’s picture

Fwiw, I'm totally opposed to changing the name of the module.

amitaibu’s picture

I agree with amateescu - IMO entity-reference (the module name) is the exact term: It's referencing of entities.

xjm’s picture

This is probably wontfix then, because I think changing the field name in the dropdown but not in the module label doesn't make any sense.

xjm’s picture

That also probably means #1847596: Remove Taxonomy term reference field in favor of Entity reference needs to wait on a solution for #1847590: Fix UX of entity reference field type selection. That's probably better in the long run in any case.

xjm’s picture

FWIW, I still think expecting end users to know what "Entity" means is setting ourselves up for failure, but D8 usability testing will show that (and we then fix it) or it won't (and then we don't).

Bojhan’s picture

I would completely agree with xjm. Entity is a very abstract term, probably not as abstract as node - but still expecting our very wide range of site builders to know about entity-relationship modelling sounds very risky. This can and will be tested in time.

YesCT’s picture

So...

in order to do some usability testing, we could still get a patch ready here that takes the word Entity out of the UI.
It's really easy to set up a link to simplytest.me that we can give to participants in a usability study.

Updating the issue summary to make the point we are waiting to decide what to do pending results. Are we thinking that May might be a good time to gather that info?

xjm’s picture

Portland might be a great opportunity to do some UX testing on ER. If at all possible, though, we should try to unblock the taxonomy field conversion patch as much as possible, since it has lots of implications for fields in general.

I'll try to split out some less controversial changes.

Bojhan’s picture

I am a little afraid we might be over extending our resources and attention, on such a small part. If its bad I am sure we will notice once we test the field UI, I am a little afraid we are setting up for a biased study if its done at Drupalcon and/or through people that we know. I just wanna avoid you all spend a lot of time on something, that can easily be tweaked and setup a possibly biased study. I'd vote for just implementing the proposed idea, we don't have to validate every tiny detail that would require way to much resources.

I intend before release, to do a more full study on Drupal and with that include a bunch of the changes we made during clean up.

Berdir’s picture

I'm not so sure about Entity being that bad.

We have two modules now that expose the concept of Entities to users. Entity translation and Entity reference. Entity translation was renamed to Content translation, but that's somewhat misleading, as we usually mean nodes if we use "content" in the UI.

So IMHO, we do need a term for "all the things you can reference/translate" with those modules. Content IMHO doesn't work and e.g. just "Reference" also might be problematic, as you can't reference *everything*.

JacobSanford’s picture

Re-roll : Discussion aside, #7 did not apply to HEAD.

JacobSanford’s picture

Issue summary: View changes

add info about the latest proposed resolution being more sweeping.

Status: Needs review » Needs work

The last submitted patch, 27: entity_reference-1953438-27.patch, failed testing.

amateescu’s picture

Issue summary: View changes
Status: Needs work » Needs review

I'd like to bring into this discussion the latest proposal from #1847596: Remove Taxonomy term reference field in favor of Entity reference:

  1. when #2349991: Provide a trait for categorizing plugin managers and use it for conditions and actions gets in, implement it for field type plugins too and (borrowing the wording from David's suggestion) introduce option groups in the field type selector, something like this:
  2. finish #1963340: Change field UI so that adding a field is a separate task and, either in the same issue or a followup, bring the field storage settings form in the new "field add" form via AJAX, thus allowing users to easily see and select the target entity type in the first step

Given that the field types will be nicely grouped and that selecting "Entity reference" will instantly (ahem.. as fast as AJAX can do it) bring in the same screen the possible "target types", are we still worried that the term "Entity" will be so confusing?

amateescu’s picture

Version: 8.0.x-dev » 8.1.x-dev
Component: entity_reference.module » user interface text

It would be nice to have a solution for this in 8.1.x. I'm also changing the component because the term 'Entity' is very wide-spread throughout core.

dawehner’s picture

To be honest in general I'm not sure whether exposing the term 'Entity' is such a bad thing.

  1. Users already potentially think about content in a generic way, more than its current incarnation in nodes. They probably think users as content as well potentially, if its rendered somehow as part of the page
  2. Users aren't stupid. Empowering them by explaining them a bit more how things are under the hood, for example by exposing those words, is kind of a recon.
  3. While it might be horrible in some user targeted distributions, it is potential acceptable because Drupal core kinda seems to target the site builder mostly, which should be better aware of some of the underlying structures.

Version: 8.1.x-dev » 8.2.x-dev

Drupal 8.1.0-beta1 was released on March 2, 2016, which means new developments and disruptive changes should now be targeted against the 8.2.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.2.x-dev » 8.3.x-dev

Drupal 8.2.0-beta1 was released on August 3, 2016, which means new developments and disruptive changes should now be targeted against the 8.3.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.3.x-dev » 8.4.x-dev

Drupal 8.3.0-alpha1 will be released the week of January 30, 2017, which means new developments and disruptive changes should now be targeted against the 8.4.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.4.x-dev » 8.5.x-dev

Drupal 8.4.0-alpha1 will be released the week of July 31, 2017, which means new developments and disruptive changes should now be targeted against the 8.5.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.5.x-dev » 8.6.x-dev

Drupal 8.5.0-alpha1 will be released the week of January 17, 2018, which means new developments and disruptive changes should now be targeted against the 8.6.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.6.x-dev » 8.7.x-dev

Drupal 8.6.0-alpha1 will be released the week of July 16, 2018, which means new developments and disruptive changes should now be targeted against the 8.7.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.7.x-dev » 8.8.x-dev

Drupal 8.7.0-alpha1 will be released the week of March 11, 2019, which means new developments and disruptive changes should now be targeted against the 8.8.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.0-alpha1 will be released the week of October 14th, 2019, which means new developments and disruptive changes should now be targeted against the 8.9.x-dev branch. (Any changes to 8.9.x will also be committed to 9.0.x in preparation for Drupal 9’s release, but some changes like significant feature additions will be deferred to 9.1.x.). For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 8.9.x-dev » 9.1.x-dev

Drupal 8.9.0-beta1 was released on March 20, 2020. 8.9.x is the final, long-term support (LTS) minor release of Drupal 8, which means new developments and disruptive changes should now be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 9.1.x-dev » 9.2.x-dev

Drupal 9.1.0-alpha1 will be released the week of October 19, 2020, which means new developments and disruptive changes should now be targeted for the 9.2.x-dev branch. For more information see the Drupal 9 minor version schedule and the Allowed changes during the Drupal 9 release cycle.

Version: 9.2.x-dev » 9.3.x-dev

Drupal 9.2.0-alpha1 will be released the week of May 3, 2021, which means new developments and disruptive changes should now be targeted for the 9.3.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.3.x-dev » 9.4.x-dev

Drupal 9.3.0-rc1 was released on November 26, 2021, which means new developments and disruptive changes should now be targeted for the 9.4.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.4.x-dev » 9.5.x-dev

Drupal 9.4.0-alpha1 was released on May 6, 2022, which means new developments and disruptive changes should now be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.5.x-dev » 10.1.x-dev

Drupal 9.5.0-beta2 and Drupal 10.0.0-beta2 were released on September 29, 2022, which means new developments and disruptive changes should now be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

smustgrave’s picture

Status: Needs review » Postponed

Postponing until the UX team can take a look.

Version: 10.1.x-dev » 11.x-dev

Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch, which currently accepts only minor-version allowed changes. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.