First 50 of 200 questions. Each one lists the choices, the correct answer, and an explanation. The checker at the top of this page saves progress in this browser when it is available.
Continue in the practice tool above to load more questions, 50 at a time.
Question 1Mendix Platform and Studio Pro Fundamentals
In Mendix Studio Pro, which document type is used to define the data model of a module, including entities, attributes, and associations?
- The page
- The module role
- The domain model Correct answer.
- The microflow
Explanation
The domain model is the visual blueprint of an app's data structure and holds entities with their attributes plus the associations that connect them. Microflows define logic, pages define the user interface, and module roles define access. All persistent data modeling starts in the domain model.
Question 2Mendix Platform and Studio Pro Fundamentals
A developer wants an entity attribute to store a true/false flag indicating whether a customer is active. Which attribute type should be selected?
- String
- Boolean Correct answer.
- Decimal
- Enumeration
Explanation
The Boolean attribute type stores exactly two states, true or false, which is the correct fit for a flag such as active or inactive. Enumeration is for a fixed list of named values, String stores text, and Decimal stores numeric values with decimals. Choosing Boolean keeps the model simple and avoids invalid third states.
Question 3Mendix Platform and Studio Pro Fundamentals
Which Studio Pro document is best suited to show a list of records and let an end user open, edit, or delete individual records?
- A Java action
- A module role mapping
- A page with a data grid or list view widget Correct answer.
- A scheduled event
Explanation
Pages host widgets, and the data grid and list view widgets are designed to display a collection of objects with controls for opening, editing, and deleting them. Scheduled events trigger logic on a timetable, Java actions extend logic in code, and module role mappings link roles to security. Only a page provides the user-facing list interaction.
Question 4Mendix Platform and Studio Pro Fundamentals
In a microflow, which element is used to branch logic based on a condition and provide separate paths for true and false outcomes?
- A decision Correct answer.
- A commit activity
- A create object activity
- A merge
Explanation
A decision element evaluates a condition and splits the flow into true and false outgoing paths. A merge rejoins split paths, a create object activity instantiates a new object, and a commit activity persists changes. Decisions are the standard branching construct in microflows.
Question 5Mendix Platform and Studio Pro Fundamentals
A developer needs to reuse the same navigation menu across the app so users can move between pages. Where is this configured in Studio Pro?
- In the navigation document Correct answer.
- In the domain model
- In a microflow
- In the project settings
Explanation
The navigation document defines the menu structure and the pages or microflows that menu items open, so it is the central place to configure app-wide navigation. The domain model holds data, microflows hold logic, and project settings cover configuration such as languages and runtime. Navigation belongs in its own dedicated document.
Question 6Mendix Platform and Studio Pro Fundamentals
What is the primary purpose of a module in a Mendix app?
- To group related documents such as domain models, pages, and microflows into a logical unit Correct answer.
- To store only the database connection string
- To represent a single end user account
- To define the color scheme of the user interface
Explanation
A module is a container that organizes related model documents, including its own domain model, pages, microflows, and security roles. Grouping by function keeps large projects maintainable and supports module-level security. Color schemes, connection strings, and user accounts are handled by other parts of the platform.
Question 7Mendix Platform and Studio Pro Fundamentals
Which of the following best describes an association in a Mendix domain model?
- A relationship between two entities that allows one entity to reference objects of another Correct answer.
- A validation rule applied to a single attribute
- A calculated value derived from other attributes
- A permission granted to a user role
Explanation
Associations connect entities and define whether one object relates to one or many objects of the other entity. They enable retrieval across related data in pages and microflows. Validation rules, calculated values, and permissions are separate concepts implemented elsewhere.
Question 8Mendix Platform and Studio Pro Fundamentals
A developer wants a microflow to run automatically every night to clean up old records. Which document should be used?
- A scheduled event Correct answer.
- A nanoflow
- A page
- An enumeration
Explanation
A scheduled event is configured to trigger a microflow at a defined interval or time, making it the correct choice for recurring background work such as nightly cleanup. Pages are for UI, enumerations define fixed value lists, and nanoflows run client-side in response to user interaction. Recurring server-side tasks belong in scheduled events.
Question 9Mendix Platform and Studio Pro Fundamentals
In a microflow, a developer retrieves a list of Order objects and wants to iterate over each one to send a confirmation. Which element accomplishes this?
- A decision
- A change object activity
- A loop with a list parameter Correct answer.
- A merge
Explanation
A loop element iterates over a list and executes its inner activities once per object, which is exactly what is needed to process each Order. A merge rejoins paths, a decision branches on a condition, and a change object activity modifies a single object. Iteration over collections requires a loop.
Question 10Mendix Platform and Studio Pro Fundamentals
A developer needs the value of an attribute from the currently selected object on a page to be available inside a microflow. How is this most commonly achieved?
- Pass the object as a microflow parameter and access its attribute Correct answer.
- Retrieve all objects of the entity in the microflow
- Commit the object before calling the microflow
- Create a new entity for each attribute value
Explanation
Microflow parameters accept objects or values from the calling context, so passing the selected object lets the microflow read its attributes directly. Committing is unnecessary for reading values, creating extra entities is wasteful, and retrieving all objects is inefficient. Parameters are the intended mechanism for passing context into logic.
Question 11Mendix Platform and Studio Pro Fundamentals
When configuring entity access in Mendix security, what does the 'Create' right control?
- Whether members of a module role may instantiate new objects of that entity Correct answer.
- Whether members of a module role may change attribute values
- Whether members of a module role may delete objects
- Whether members of a module role may read existing objects
Explanation
Entity access rights are split into create, read, write, and delete, and the create right governs whether a role can instantiate new objects of the entity. Read governs viewing, write governs modifying, and delete governs removal. Setting create correctly prevents unauthorized object creation.
Question 12Mendix Platform and Studio Pro Fundamentals
A developer wants to show a calculated total on a page that updates when the user changes a quantity field, without saving to the database. Which approach fits best?
- Add a new entity to store the total
- Use a nanoflow triggered by the field's change event to update the total Correct answer.
- Commit the object and reload the page
- Create a scheduled event to recalculate
Explanation
Nanoflows run in the browser and can respond to widget events such as a change on an input field, updating on-page values immediately without a server round trip or commit. Committing and reloading is heavy-handed, scheduled events run on a timetable, and a new entity is unnecessary. Client-side logic suits immediate UI feedback.
Question 13Mendix Platform and Studio Pro Fundamentals
Which statement correctly distinguishes a microflow from a nanoflow in Mendix?
- A microflow runs on the server, while a nanoflow runs in the client browser Correct answer.
- Both run exclusively on the server with no client execution
- Both run exclusively in the browser with no server execution
- A microflow runs in the browser, while a nanoflow runs on the server
Explanation
Microflows execute on the Mendix Runtime server and can use the full server-side API, while nanoflows execute in the client to provide responsive offline-capable logic. This difference drives choices about performance, offline support, and available activities. The other options reverse or misstate this server/client split.
Question 14Mendix Platform and Studio Pro Fundamentals
A developer defines an enumeration called OrderStatus with values New, Paid, and Shipped, then adds an attribute of that enumeration type to the Order entity. What is the benefit of this approach over a free-text String attribute?
- It forces the attribute to be unique across all orders
- It automatically creates a page for each status
- It restricts the attribute to the predefined values, preventing invalid statuses Correct answer.
- It removes the need for any entity access rules
Explanation
An enumeration attribute can only hold one of its defined values, which enforces valid statuses and simplifies logic that compares against them. It does not generate pages, bypass security, or impose uniqueness. Using enumerations instead of free text improves data integrity.
Question 15Mendix Platform and Studio Pro Fundamentals
In the domain model, what does setting an association's multiplicity to one-to-many typically mean?
- One object of the first entity can relate to many objects of the second entity Correct answer.
- Neither entity can have associations to other entities
- Both entities must always have exactly one object each
- Many objects of the first entity relate to one object of the second and never the reverse
Explanation
A one-to-many association means a single object on one side can be linked to multiple objects on the other side, such as one Customer with many Orders. Multiplicity describes cardinality, not exclusivity of other associations. The other options misstate the cardinality or add rules that do not apply.
Question 16Mendix Platform and Studio Pro Fundamentals
A developer builds a page that should only be reachable by users with an administrator role. Which mechanism enforces this at the page level?
- Page access configured for the relevant module role Correct answer.
- A decision element inside the page
- An enumeration attribute on the entity
- A scheduled event that checks the role
Explanation
Page access settings determine which module roles may open a given page, so restricting the page to the administrator role enforces the requirement. Decision elements belong to microflows, enumerations store values, and scheduled events run on a timetable. Page-level security is configured in the page's access settings.
Question 17Mendix Platform and Studio Pro Fundamentals
A developer retrieves a single Customer object in a microflow and then wants to modify one of its attributes before saving. Which combination of activities is required?
- A merge followed by a decision
- A loop followed by a rollback activity
- A retrieve activity followed by a change object activity and a commit activity Correct answer.
- A create object activity followed by a delete activity
Explanation
To modify existing data, the microflow retrieves the object, changes its attribute values with a change object activity, and commits to persist the change. Creating and deleting would remove the record, merging and decisions control flow, and a loop with rollback would discard changes. Retrieve, change, and commit form the standard update pattern.
Question 18Mendix Platform and Studio Pro Fundamentals
A developer needs to call reusable custom Java code from a microflow. Which Studio Pro document is created for this purpose?
- A nanoflow
- A Java action Correct answer.
- An enumeration
- A page
Explanation
A Java action wraps custom Java code and exposes it as an activity that microflows can call with parameters. Nanoflows are client-side logic, enumerations are value lists, and pages are UI. When built-in activities are insufficient, Java actions extend logic in code.
Question 19Mendix Platform and Studio Pro Fundamentals
A developer wants to display a message to the user when a microflow encounters invalid input and then stop processing. Which activity should be used?
- A create object activity
- A commit activity
- A validation feedback or show message activity, followed by ending the flow Correct answer.
- A merge activity
Explanation
Validation feedback attaches an error to an attribute, and show message presents information to the user; either can be followed by an end event to stop processing. Creating, committing, and merging do not communicate errors to the user. User-facing error handling requires feedback or message activities.
Question 20Mendix Platform and Studio Pro Fundamentals
A developer wants to configure a microflow so that a specific activity runs only when a retrieved Order has a total above 1000. Which element provides this conditional behavior?
- A decision element with a condition on the Order total Correct answer.
- A merge element
- A scheduled event
- A parameter of type String
Explanation
A decision evaluates an expression and routes the flow down the true or false path, so a condition on the Order total controls whether the activity runs. A merge rejoins paths, a String parameter supplies input, and a scheduled event triggers on time. Conditional logic in a microflow is expressed with decisions.
Question 21Mendix Platform and Studio Pro Fundamentals
A developer is choosing between committing an object and rolling it back within a microflow. Which statement best captures the difference?
- Commit discards changes, while rollback persists them
- Neither affects the object's stored state
- Commit persists changes to the database, while rollback discards unsaved changes to the object Correct answer.
- Both persist changes and differ only in performance
Explanation
Committing writes the object's current state to the database, whereas rolling back reverts the object to its last committed state and discards pending changes. They have opposite effects on persistence, not merely different performance. Understanding this distinction prevents accidental data loss or unwanted saves.
Question 22Mendix Platform and Studio Pro Fundamentals
A developer retrieves a list of Customers and needs to process only those with a status of Active, then pass the filtered list to a page. Which microflow approach is most appropriate?
- Retrieve all Customers and rely on the page to hide inactive ones
- Use a merge element to filter the list
- Retrieve with an XPath constraint filtering on status, then pass the resulting list Correct answer.
- Create a new entity for active Customers and copy records each time
Explanation
Applying an XPath constraint during retrieval returns only matching objects, which is efficient and keeps logic clear. Relying on the page to hide records still transfers unnecessary data, duplicating active records into a new entity is a maintenance burden, and a merge cannot filter. Filtering at retrieval is the recommended pattern.
Question 23Mendix Platform and Studio Pro Fundamentals
A developer must ensure that a microflow's change to an Order is visible to a subsequent retrieve within the same microflow before any commit occurs. Which statement is accurate about uncommitted changes?
- The changed object remains available in the microflow's context, but a fresh database retrieve will not reflect uncommitted changes Correct answer.
- Uncommitted changes are automatically committed when the microflow ends
- Uncommitted changes are discarded the moment a change object activity completes
- Uncommitted changes are immediately written to the database and visible to all users
Explanation
Changes made with a change object activity live on the object in the microflow's memory and are not written to the database until a commit occurs, so a new retrieve reads the stored state. Uncommitted changes are not visible to other users and are not auto-committed at flow end. This behavior explains why explicit commits are needed to persist data.
Question 24Mendix Platform and Studio Pro Fundamentals
A developer configures module roles and user roles in a Mendix app. Which statement correctly describes the relationship between them?
- Module roles apply only to microflows, while user roles apply only to pages
- User roles and module roles are identical and cannot be mapped to each other
- Module roles are assigned directly to end users, and user roles define entity access
- User roles are assigned to end users, and module role mappings grant those user roles the module roles that define entity and page access Correct answer.
Explanation
End users receive user roles, and module role mappings connect each user role to one or more module roles within a module. The module roles then carry the entity and page access rules. This indirection lets administrators manage access without touching every module individually.
Question 25Domain Model and Data Modeling
In a Mendix domain model, which element represents a single unit of data with attributes and is drawn as a rectangle?
- An entity Correct answer.
- A module role
- A microflow
- A page
Explanation
Entities are the core data building blocks of the domain model and are drawn as rectangles containing their attributes. Microflows, pages, and module roles are modeled elsewhere in the project and are not domain-model data units.
Question 26Domain Model and Data Modeling
Which attribute type should you choose for a value that only ever holds true or false, such as a 'IsActive' flag?
- Integer
- Enumeration
- Boolean Correct answer.
- String
Explanation
The Boolean attribute type stores exactly two states, true or false, and is the natural fit for flags. String, Integer, and Enumeration can technically store similar information but waste space and lose built-in type semantics.
Question 27Domain Model and Data Modeling
What is the purpose of a generalization (inheritance) relationship between two entities in a Mendix domain model?
- The specialized entity inherits attributes and associations of the general entity Correct answer.
- The general entity becomes read-only while the specialized entity becomes writable
- The two entities are merged into a single database table with no distinction
- The specialized entity copies the general entity's data at runtime into a separate table
Explanation
Generalization lets a specialized entity reuse the attributes and associations defined on the general entity, sharing one underlying object. This supports polymorphism and reduces duplication. It does not copy data or merge entities into one indistinguishable table.
Question 28Domain Model and Data Modeling
You need to model that one Customer can place many Orders, but each Order belongs to exactly one Customer. Which construct do you add?
- A one-to-one association from Customer to Order
- A generalization from Order to Customer
- A one-to-many association from Customer to Order Correct answer.
- A many-to-many association from Customer to Order
Explanation
A one-to-many association captures the rule that a single Customer relates to multiple Orders while each Order relates to one Customer. A many-to-many would allow an Order to belong to several Customers, and generalization is not a relationship of ownership.
Question 29Domain Model and Data Modeling
What does the owner setting on an association control?
- Which module role may read the associated entity
- Which attribute is used as the primary key for the association
- Which side of the association holds the reference and how the relationship is stored Correct answer.
- Whether the association is validated at commit time
Explanation
The owner determines the direction in which the association is stored and navigated, which affects retrieval performance and how the reference is persisted. Access rights and validation are configured separately from ownership.
Question 30Domain Model and Data Modeling
Which statement about a many-to-many association in Mendix is true?
- It requires both entities to share the same generalization
- It is stored in a separate join table managed by the platform Correct answer.
- It cannot be created between entities in different modules
- It stores only one reference per object on the owner side
Explanation
A many-to-many association is persisted through an underlying join table that Mendix maintains automatically. Neither entity needs a shared generalization, and cross-module associations are permitted when the module dependencies allow it.
Question 31Domain Model and Data Modeling
What is the primary purpose of an enumeration attribute in the domain model?
- To store free-form text of unlimited length
- To automatically generate a database index
- To restrict a value to a predefined list of named options Correct answer.
- To link two entities through a foreign key
Explanation
Enumerations define a fixed set of named values and constrain the attribute to one of them, improving data quality and readability. They do not store free text, create indexes automatically, or act as associations.
Question 32Domain Model and Data Modeling
Where is a calculated value such as 'FullName' derived from FirstName and LastName best implemented?
- As an association between FirstName and LastName
- As a generalization of the Name entity
- As a persistent String attribute updated manually by users
- As a calculated attribute or a non-persistent attribute computed in a microflow Correct answer.
Explanation
Derived values should not be stored redundantly; a calculated or non-persistent attribute computes them on demand from source data. Storing a manually maintained copy risks inconsistency and requires extra user effort.
Question 33Domain Model and Data Modeling
What does setting an attribute as the 'unique' validation rule enforce?
- No two objects of that entity may share the same value for that attribute Correct answer.
- The attribute becomes read-only after creation
- The attribute is excluded from the database
- The attribute must always be non-empty
Explanation
The unique validation constraint ensures the value is distinct across all objects of the entity, which is useful for identifiers like email or code. It does not by itself require a value, hide the attribute, or make it immutable.
Question 34Domain Model and Data Modeling
A developer wants to prevent deletion of a Customer while related Orders exist. Which domain-model feature addresses this?
- Creating a generalization from Customer to Order
- Setting the association delete behavior to prevent deletion of the owner Correct answer.
- Marking the Order entity as non-persistent
- Adding a unique validation rule to the Customer
Explanation
Association delete behavior defines what happens to related objects when one side is deleted; a preventing option blocks deletion while references remain. Non-persistent entities, uniqueness rules, and generalization do not control referential deletion.
Question 35Domain Model and Data Modeling
Which entity type should you use for data that must exist only in memory during a user session and never be committed to the database?
- A non-persistent entity Correct answer.
- A persistent entity with a unique rule
- An enumeration attribute
- A generalization of a persistent entity
Explanation
Non-persistent entities hold data in memory without a database table, ideal for temporary or computed objects. Persistent entities are stored, enumerations are value lists, and generalization does not change persistence.
Question 36Domain Model and Data Modeling
What is the effect of defining an association between entities in two different modules?
- It is allowed if the modules have the appropriate dependency configured Correct answer.
- It requires both entities to be non-persistent
- It automatically merges the two modules into one
- It is impossible because associations are limited to a single module
Explanation
Cross-module associations are supported when the consuming module declares a dependency on the module that owns the other entity. Modules are not merged, and persistence status is unrelated to the ability to associate.
Question 37Domain Model and Data Modeling
Which Mendix concept lets you define a reusable set of attributes that multiple entities can share without duplicating definitions?
- An enumeration attribute
- A calculated attribute
- Generalization with a general entity Correct answer.
- A non-persistent entity
Explanation
Generalization lets several specialized entities inherit a shared set of attributes and associations from a general entity. Enumerations, non-persistent entities, and calculated attributes solve different modeling problems.
Question 38Domain Model and Data Modeling
What happens to an object's attributes when you retrieve it from the database in Mendix?
- Non-persistent attributes are loaded from the database
- Attributes are loaded lazily one at a time on first access
- All persistent attributes are loaded according to the retrieval and access rules Correct answer.
- Only attributes explicitly listed in a microflow are loaded
Explanation
Retrieving an object loads its persistent attributes subject to the entity access rules of the user context. Non-persistent attributes are not stored in the database, and attributes are not loaded one at a time on access.
Question 39Domain Model and Data Modeling
Which validation rule should you apply to ensure a mandatory field such as 'Email' is always filled in?
- Unique
- Required Correct answer.
- Regular expression
- Range
Explanation
The required rule enforces that the attribute has a value before the object can be committed. Unique, Range, and Regular expression validate other aspects such as distinctness, numeric bounds, and format.
Question 40Domain Model and Data Modeling
A team wants to guarantee that an Order's 'OrderDate' cannot be later than today. Which mechanism is most appropriate at the domain-model level?
- A unique constraint on OrderDate
- A many-to-many association with a Calendar entity
- A validation rule or a before-commit event that checks the value Correct answer.
- A generalization of Order to a Date entity
Explanation
Business constraints on values are enforced through validation rules or event handlers such as before-commit that can reject invalid data. Uniqueness, generalization, and associations do not express a comparison against the current date.
Question 41Domain Model and Data Modeling
What does an association's multiplicity 'one-to-one' mean in a Mendix domain model?
- The association is automatically indexed on both sides
- Each object can relate to unlimited objects on the other side
- The association cannot be navigated in microflows
- Each object on one side relates to at most one object on the other side Correct answer.
Explanation
One-to-one means a single object pairs with a single object on the opposite side, such as a Person and a Passport. It does not imply unlimited relations, automatic indexing, or restricted navigation.
Question 42Domain Model and Data Modeling
Which attribute type is best suited for storing a monetary amount with decimal precision?
- Decimal Correct answer.
- Integer
- Boolean
- String
Explanation
The Decimal type stores numbers with fractional precision, which is appropriate for monetary amounts. Integer loses fractional parts, String stores text, and Boolean holds only true or false.
Question 43Domain Model and Data Modeling
What is the role of a system attribute such as 'CreatedDate' in a persistent entity?
- It must be filled in manually by the end user on every form
- It disables persistence for the entity
- It is used as the association owner reference
- It is maintained automatically by the platform to record metadata about the object Correct answer.
Explanation
System attributes like CreatedDate, ChangedDate, and Owner are maintained by the runtime to track object metadata. They are not user-entered fields, do not act as association references, and do not affect persistence.
Question 44Domain Model and Data Modeling
A developer deletes an entity that other entities reference through associations. What is a likely consequence in the domain model?
- The associations are automatically converted to generalizations
- Consistency errors appear until the referencing associations are removed or redirected Correct answer.
- The referencing entities become non-persistent
- The deleted entity's data is moved to an enumeration
Explanation
Removing an entity leaves dangling associations that must be cleaned up, producing consistency errors in the model. Associations are not silently converted, entities do not change persistence, and data is not moved to enumerations.
Question 45Domain Model and Data Modeling
Which statement best describes the relationship between a domain model and a database table in Mendix?
- Each association creates a new persistent entity
- Non-persistent entities are stored in the same table as persistent ones
- Each persistent entity maps to a table whose columns derive from its attributes Correct answer.
- Each module maps to exactly one table regardless of entities
Explanation
Mendix maps persistent entities to database tables and attributes to columns, with associations handled through foreign keys or join tables. Modules are not single tables, associations are not entities, and non-persistent entities have no table.
Question 46Domain Model and Data Modeling
You want to model that a Project has a list of Tasks and that deleting the Project should also delete its Tasks. Which configuration achieves this?
- A generalization from Task to Project
- A one-to-one association with no delete behavior
- A one-to-many association with cascade delete behavior Correct answer.
- A many-to-many association with unique validation
Explanation
A one-to-many association from Project to Task combined with cascade delete removes dependent Tasks when the Project is deleted. One-to-one, generalization, and many-to-many do not express this ownership and cascading rule.
Question 47Domain Model and Data Modeling
What is the purpose of an index on a persistent entity in Mendix?
- To convert the entity into a non-persistent one
- To encrypt the stored attribute values
- To speed up retrieval queries that filter or sort on the indexed attributes Correct answer.
- To enforce uniqueness of the entity's objects
Explanation
Indexes improve query performance for attributes frequently used in filters or sorting. They do not enforce uniqueness, provide encryption, or change an entity's persistence.
Question 48Domain Model and Data Modeling
Which construct should you use to represent a fixed categorical value like OrderStatus with values New, Shipped, and Delivered?
- A String attribute with no constraint
- A separate OrderStatus entity linked by a one-to-one association
- A Boolean attribute for each status
- An enumeration attribute on the Order entity Correct answer.
Explanation
An enumeration attribute restricts values to a predefined list and is the standard way to model status categories. Separate entities, multiple Booleans, or unconstrained Strings add complexity or allow invalid values.
Question 49Domain Model and Data Modeling
What does the 'owner' of an association determine when retrieving objects in a microflow?
- Which user role can view the associated object
- Whether the association is validated on commit
- Which direction of navigation is efficient and how the reference is stored Correct answer.
- Whether the association is shown on a page
Explanation
Association ownership determines the stored direction of the reference and influences navigation efficiency. Access, validation, and page layout are configured through other mechanisms such as access rules and page models.
Question 50Domain Model and Data Modeling
In a Mendix domain model, which construct represents a reusable predefined list of constant values that an attribute can draw from, such as a fixed set of priority levels?
- A generalization relationship
- A calculated attribute
- A non-persistent entity
- An enumeration used as the attribute type Correct answer.
Explanation
An enumeration defines a fixed, named set of values, and an attribute typed as that enumeration can only hold one of those values. This keeps the allowed values consistent across the model and exposes them to the runtime, microflows, and pages without storing lookup records.