massive update

This commit is contained in:
Michael Becker 2024-01-02 00:17:29 -05:00
parent 5d5202f185
commit c561422292
129 changed files with 3790 additions and 2009 deletions

View File

@ -2,6 +2,10 @@ from .Guid import Guid
class SQLExpression:
@staticmethod
def sqlescape(parm : str):
return parm.replace("'", "\\'")
@staticmethod
def to_string(parm):
query = ""
@ -16,7 +20,7 @@ class SQLExpression:
query += gid
elif isinstance(parm, str):
query += "'" + str(parm) + "'"
query += "'" + SQLExpression.sqlescape(str(parm)) + "'"
else:
query += str(parm)

View File

@ -0,0 +1,5 @@
class MochaSyntaxError(RuntimeError):
def __init__(self, *args):
RuntimeError.__init__(self, args)
pass

View File

@ -1,5 +1,6 @@
from .LibraryParser import LibraryParser
from ..Guid import Guid
from .MochaSyntaxError import MochaSyntaxError
class YAMLLibraryParser (LibraryParser):
@ -7,6 +8,7 @@ class YAMLLibraryParser (LibraryParser):
LibraryParser.__init__(self, manager)
self.yamlIds = dict()
self.templates = dict()
# these two are special reserved tagNames
# self.yamlIds["entityDefinitions"] = None
@ -22,20 +24,11 @@ class YAMLLibraryParser (LibraryParser):
self.load_instance(inst)
print("\n")
def load_sugar_from_file(self, filename):
print("loading sugar from " + filename)
def load_library(self, elem):
print("loading library from elem")
import yaml
with open(filename, 'r') as file:
content = yaml.safe_load_all(file)
for doc in content:
for elem in doc:
if "entityDefinitions" in elem or "instance" in elem:
continue
self.load_instance(elem)
pass
def load_tenant(self, elem):
print("loading tenant from elem")
def find_custom_tag_name(self, elem) -> (str, Guid):
# return tuple (tagname, value)
@ -72,6 +65,10 @@ class YAMLLibraryParser (LibraryParser):
self.apply_template(elem, template, instanceId)
def apply_template(self, elem, template, instanceId):
if "value" in elem:
print("VALUE found in ELEM:")
print(elem["value"])
if "attributes" in template:
attrs = template["attributes"]
@ -145,7 +142,12 @@ class YAMLLibraryParser (LibraryParser):
# self.manager.assign_relationship(globalIdentifier, relationshipInstanceId, instanceId)
# FIXME: apply relationships from the parent class template
self.apply_template(elem, createsInstanceOfTemplate, globalIdentifier)
if createsInstanceOf.get_value() in self.templates:
print("applying template for createsInstanceOf '%s'" % (createsInstanceOf.get_value()))
createsInstanceOfTemplate = self.templates[createsInstanceOf.get_value()]
self.apply_template(relationshipValue, createsInstanceOfTemplate, globalIdentifier)
else:
print("no template registered for createsInstanceOf '%s'" % (createsInstanceOf.get_value()))
def get_instance_sugar_for_elem(self, elem):
@ -189,6 +191,11 @@ class YAMLLibraryParser (LibraryParser):
customTagName = elem["customTagName"]
self.yamlIds[customTagName] = elem
print("registering customTagName '" + customTagName + "'")
if "registerForTemplate" in elem:
if elem["registerForTemplate"] == True:
self.templates[self.manager.expand_entity_references(globalIdentifier)] = elem
print("registering elem for template")
classId = None
classIndex = None
@ -282,10 +289,24 @@ class YAMLLibraryParser (LibraryParser):
for elem in doc:
if "entityDefinitions" in elem:
continue
if "instance" in elem:
# this is an instance definition (no sugar), so just load it
self.load_instance(elem)
elif "library" in elem:
self.load_library(filename, elem)
elif "tenant" in elem:
self.load_tenant(filename, elem)
else:
# this is a syntactic sugar definition, so store it for later use
elem["from_file_name"] = filename
self._instances_awaiting_sugar.append(elem)
raise MochaSyntaxError("neither 'library' nor 'tenant' top level element found")
def load_library(self, filename, elem):
if "instances" in elem:
instances = elem["instances"]
for elem1 in instances:
if "instance" in elem1:
# this is an instance definition (no sugar), so just load it
self.load_instance(elem1)
else:
# this is a syntactic sugar definition, so store it for later use
elem1["from_file_name"] = filename
self._instances_awaiting_sugar.append(elem1)
def load_tenant(self, filename, elem):
pass

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.9 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

View File

@ -1 +1,4 @@
- IDI_Module_MochaPowered_VehiclesForHire: '{bb1d56b4-c063-4232-a789-93c8419e2d31}'
- include: '../../net.alcetech.Mocha.System/000-EntityDefinitions/*.yaml'
- entityDefinitions:
- IDL_MochaPowered_VehiclesForHire: '{bb1d56b4-c063-4232-a789-93c8419e2d31}'
- IDI_Module_MochaPowered_VehiclesForHire: '{bb1d56b4-c063-4232-a789-93c8419e2d31}'

View File

@ -1 +0,0 @@
- module: '&IDI_Module_MochaPowered_VehiclesForHire;'

View File

@ -1,2 +1,4 @@
- module: '&IDI_Module_MochaPowered_VehiclesForHire;'
defaultObjectSource: '&IDI_ObjectSource_Delivered;'
- library: '&IDL_MochaPowered_VehiclesForHire;'
defaultObjectSource: '&IDI_ObjectSource_Delivered;'
instances:
- module: '&IDI_Module_MochaPowered_VehiclesForHire;'

View File

@ -0,0 +1,3 @@
- tenant: '&IDT_RydeRentalsProduction;'
tenantType: '&IDI_TenantType_Production;'

View File

@ -1,2 +1,4 @@
- entityDefinitions:
- IDI_Person_BrookeTrevino: ''
- library: '&IDI_Library_VehiclesForHire;'
- user: '{b8136d2a-8238-443b-8d9e-4f47c8a47c4b}'
username: btrevino

View File

@ -98,7 +98,8 @@
- IDC_SystemTask: '{1db33f14-3010-437c-a37d-594fdb052c52}'
- IDC_ReferencedTask: '{8a02dc7a-b38c-4f44-b05e-21625b08cc2e}'
- IDC_File: '{5D081079-E136-406A-A728-7472937A6E5E}' # {04284dae-2966-4675-b3da-af3cbed745ea}
- IDC_File: '{5D081079-E136-406A-A728-7472937A6E5E}'
- IDC_Alignment: '{04284dae-2966-4675-b3da-af3cbed745ea}'
- IDC_Tenant: '{703F9D65-C584-4D9F-A656-D0E3C247FF1F}'
@ -164,6 +165,6 @@
- IDC_ProcessUpdatesMethod: '{91583cc3-6007-40e5-a789-d08c0ff975e6}'
- IDC_ExecuteUpdateMethodBinding: '{b831bdaf-72d8-4585-a9a8-8341ab1005cb}'
- IDC_PUMProcess: '{2cdb2169-7c26-4adb-bc26-e9e75ab1b246}'
- IDC_ProcessRelatedUpdatesMethod: '{6590dd01-6cb9-4440-94b9-d165b9e94a88}'
- IDC_ExecutableForPUMB: '{6590dd01-6cb9-4440-94b9-d165b9e94a88}'
- IDC_Search: '{7010f26c-df11-4302-a14f-a45b8da28e83}'

View File

@ -61,4 +61,5 @@
- IDA_IncludeSuperclassMethods: '{3828a3f7-57ff-409b-b814-338d5ff51e19}'
- IDA_AllowAny: '{af02b1d7-b261-4eaf-9f99-37356c74e237}'
- IDA_UserNameOrPasswordIncorrectMessage: '{7a63f087-f47c-4b49-9043-94d6d59ac6c4}'
- IDA_LoginPageInstructions: '{dc11f905-335d-4e9b-8f03-55551a184dc3}'
- IDA_LoginPageInstructions: '{dc11f905-335d-4e9b-8f03-55551a184dc3}'
- IDA_OpenInNewWindow: '{4a211f11-c5c3-4b58-a7f4-ed62538c5a3d}'

View File

@ -57,7 +57,9 @@
- IDR_Task__has_title__Translation: "{D97AE03C-261F-4060-A06D-985E26FA662C}"
- IDR_Task__has_instructions__Translation: "{A9387898-9DC0-4006-94F1-1FB02EB3ECD7}"
- IDR_Task__has__Prompt: "{929B106F-7E3E-4D30-BB84-E450A4FED063}"
- IDR_Task__has__Task_Category: "{84048159-430d-4f6c-9361-115c8629c517}"
- IDR_Task_Category__for__Task: "{b9480590-b9a7-4abe-bef1-a16ddfb4792a}"
- IDR_Task__executes__Method_Call: "{D8C0D4D4-F8C6-4B92-A2C1-8BF16B16203D}"
- IDR_Task__has_preview_action_title__Translation: "{3f65ce02-11dd-4829-a46b-b9ea1b43e56a}"
@ -315,6 +317,12 @@
- IDR_Element__processed_by__Process_Related_Updates_Method: '{ed9c836a-04a4-4505-8953-3c567e841c66}'
- IDR_Process_Related_Updates_Method__processes__Element: '{bb281665-7000-4144-994e-ffb40f6b4d2d}'
- IDR_Class__processed_by__Process_Related_Updates_Method: '{ca069509-87d9-4b0b-b4f3-07d1f4cd7fcf}'
- IDR_Process_Related_Updates_Method__processes_for__Class: '{436a20fb-f672-4397-aca4-ec0ed6e2280a}'
- IDR_Process_Related_Updates_Method__uses__Executable_for_PUMB: '{50e1f14a-d6e5-4c71-b7ab-1755442728dc}'
- IDR_Executable_for_PUMB__used_by__Process_Related_Updates_Method: '{6b3c7631-3a01-42d9-98d3-f60bd98ca350}'
- IDR_PUM_Process__invokes__Execute_Update_Method_Binding: '{d3e83c17-fd38-46a0-a055-66281eabe9b0}'
- IDR_Execute_Update_Method_Binding__invoked_by__PUM_Process: '{8f22f056-12c7-4fa2-93fb-b07821bd3946}'
@ -332,4 +340,16 @@
- IDR_User_Preferences__has_recent__Search: '{2166fcf2-fc8d-4190-95ff-e7c8eaa31321}'
- IDR_Search__recent_for__User_Preferences: '{3f7506c0-0cc0-4612-91b6-94558c91f14b}'
- IDR_Style__has_horizontal__Alignment: '{cc8d60e3-1b42-4ab1-a918-3d109891bb4e}'
- IDR_Alignment__horizontal_for__Style: '{6cd4551c-027b-483a-a890-7d2b7aa02cb0}'
- IDR_Style__has_vertical__Alignment: '{24c175dd-c34c-4ffc-aef0-440aa032ceeb}'
- IDR_Alignment__vertical_for__Style: '{1a17dbdd-584a-410e-b553-b5966882452d}'
- IDR_Assign_Attribute_Method__uses__Executable_returning_Attribute: '{9313f96e-58af-416f-852e-ef83725057fc}'
- IDR_Executable_returning_Attribute__used_by__Assign_Attribute_Method: '{cd8fd04c-dcdd-4dc8-9d5c-e8f83d080cb8}'
- IDR_Assign_Attribute_Method__assigns__Attribute: '{74061875-8a27-403b-9456-02e52cfd13b2}'
- IDR_Attribute__assigned_by__Assign_Attribute_Method: '{d3b540e8-0f52-4595-bf52-1968637da59a}'

View File

@ -29,3 +29,7 @@
- IDI_Language_Chinese: '{6f908a9b-7464-4a16-aed9-7eccb8d39032}'
- IDI_Language_Japanese: '{1e16de9d-0e49-4a79-b690-4905c46a94cc}'
- IDI_Language_Korean: '{d03a795e-906b-49ee-87ea-c1bef4b8ee9a}'
- IDI_Alignment_Near: '{35ea407a-45e1-462f-a923-a526d12fbc47}'
- IDI_Alignment_Center: '{63179b92-9a6a-495b-a823-f45e353be9d8}'
- IDI_Alignment_Far: '{f19d16c7-99ff-48a3-b86a-7db8f400d869}'

View File

@ -26,6 +26,7 @@
- IDC_GetAttributeBySystemRoutineMethod: "{9d45eb8c-1fb5-4260-a69c-f99a8f7a70b8}" # 1$66
- IDC_GetElementBySystemRoutineMethod: "{321e2391-4ebb-4954-9a7e-8dc01a3a1151}" # 1$67
- IDC_UpdateBySystemRoutineMethod: "{dfdf1541-90c8-415a-b4f3-6e87dd037e12}" # 1$68
- IDC_AssignAttributeMethod: '{3312A789-3B7A-4478-B329-4FF781504F9C}' # 1$73
- IDC_CompareInstanceSetsMethod: "{dc69c998-9cea-430e-95bb-1fff6ac99f2e}" # 1$91
- IDC_CalculateDateMethod: "{1e58e284-56eb-42b4-88b9-e0a691559fa6}" # 1$92
- IDC_EvaluateConditionsMethod: "{07ed4ef4-eba6-4fc7-aecb-b5f566e584bd}" # 1$94

View File

@ -0,0 +1,6 @@
- entityDefinitions:
- IDI_TaskCategory_Class: '{9f277412-8662-43d3-97a3-71a27667b365}'
- IDI_TaskCategory_Report: '{a86afe16-bcf7-4602-90ff-8dc3b7493c5b}'
- IDI_TaskCategory_Instance: '{5303969f-dafc-4c1f-916c-f1079c3b19b5}'
- IDI_TaskCategory_MethodBinding: '{871cec9e-faf3-4996-b873-57e78c988b11}'
- IDI_TaskCategory_ReturnedWorkData: '{57443af8-65f2-4e9b-97c7-f36a4b635760}'

View File

@ -1,22 +1,24 @@
--- #definitions for YAML
- instance: '&IDC_Class;'
templateOnly: yes
customTagName: 'class'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Class__has_super__Class;'
customTagName: 'inherits'
- instance: '&IDR_Class__has_default__Task;'
customTagName: 'defaultTask'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- language: '&IDI_Language_English;'
- value: 'Class'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDC_Class;'
templateOnly: yes
customTagName: 'class'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Class__has_super__Class;'
customTagName: 'inherits'
- instance: '&IDR_Class__has_default__Task;'
customTagName: 'defaultTask'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- language: '&IDI_Language_English;'
- value: 'Class'
- class: '&IDC_Class;'
name: Class
index: 1
defaultTask: '&IDI_Task_ViewClass;'
- class: '&IDC_Class;'
name: Class
index: 1
defaultTask: '&IDI_Task_ViewClass;'

View File

@ -1,4 +1,6 @@
- class: '&IDC_Attribute;'
name: Attribute
index: 2
abstract: yes
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Attribute;'
name: Attribute
index: 2
abstract: yes

View File

@ -8,245 +8,263 @@
# the system will automatically recognize 'index' as the suggested
# instance index value
- class: '&IDC_Relationship;'
name: Relationship
index: 3
customTagName: 'relationship'
attributes:
- instance: '&IDA_RelationshipType;'
customTagName: 'type'
- instance: '&IDA_Singular;'
customTagName: 'singular'
relationships:
- instance: '&IDR_Relationship__has_source__Class;'
customTagName: 'sourceClassId'
- instance: '&IDR_Relationship__has_destination__Class;'
customTagName: 'destinationClassId'
- instance: '&IDR_Relationship__has_sibling__Relationship;'
customTagName: 'siblingRelationshipId'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Relationship;'
name: Relationship
index: 3
customTagName: 'relationship'
attributes:
- instance: '&IDA_RelationshipType;'
customTagName: 'type'
- instance: '&IDA_Singular;'
customTagName: 'singular'
relationships:
- instance: '&IDR_Relationship__has_source__Class;'
customTagName: 'sourceClassId'
- instance: '&IDR_Relationship__has_destination__Class;'
customTagName: 'destinationClassId'
- instance: '&IDR_Relationship__has_sibling__Relationship;'
customTagName: 'siblingRelationshipId'
- relationship: '&IDR_Class__has__Attribute;'
index: 1
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Attribute;'
siblingRelationshipId: '&IDR_Attribute__for__Class;'
singular: no
- relationship: '&IDR_Class__has__Attribute;'
index: 1
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Attribute;'
siblingRelationshipId: '&IDR_Attribute__for__Class;'
singular: no
- relationship: '&IDR_Attribute__for__Class;'
index: 2
sourceClassId: '&IDC_Attribute;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Attribute;'
singular: no
- relationship: '&IDR_Attribute__for__Class;'
index: 2
sourceClassId: '&IDC_Attribute;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Attribute;'
singular: no
- relationship: '&IDR_Class__has__Relationship;'
index: 3
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__for__Class;'
singular: no
- relationship: '&IDR_Class__has__Relationship;'
index: 3
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__for__Class;'
singular: no
- relationship: '&IDR_Relationship__for__Class;'
index: 4
sourceClassId: '&IDC_Relationship;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Attribute;'
singular: no
- relationship: '&IDR_Relationship__for__Class;'
index: 4
sourceClassId: '&IDC_Relationship;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Attribute;'
singular: no
- relationship: '&IDR_Relationship__has_sibling__Relationship;'
index: 5
sourceClassId: '&IDC_Relationship;'
type: 'has sibling'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__is_sibling__Relationship;'
singular: yes
- relationship: '&IDR_Relationship__has_sibling__Relationship;'
index: 5
sourceClassId: '&IDC_Relationship;'
type: 'has sibling'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__is_sibling__Relationship;'
singular: yes
- relationship: '&IDR_Relationship__is_sibling__Relationship;'
index: 6
sourceClassId: '&IDC_Relationship;'
type: 'is sibling'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__has_sibling__Relationship;'
singular: yes
- relationship: '&IDR_Relationship__is_sibling__Relationship;'
index: 6
sourceClassId: '&IDC_Relationship;'
type: 'is sibling'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__has_sibling__Relationship;'
singular: yes
- relationship: '&IDR_Class__has_super__Class;'
index: 7
sourceClassId: '&IDC_Class;'
type: 'has super'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has_sub__Class;'
singular: no
- relationship: '&IDR_Class__has_super__Class;'
index: 7
sourceClassId: '&IDC_Class;'
type: 'has super'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has_sub__Class;'
singular: no
- relationship: '&IDR_Class__has_sub__Class;'
index: 8
sourceClassId: '&IDC_Class;'
type: 'has sub'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has_super__Class;'
singular: no
- relationship: '&IDR_Class__has_sub__Class;'
index: 8
sourceClassId: '&IDC_Class;'
type: 'has sub'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has_super__Class;'
singular: no
- relationship: '&IDR_Work_Set__has_valid__Class;'
index: 9
sourceClassId: '&IDC_WorkSet;'
type: 'has valid'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__valid_for__Work_Set;'
singular: no
- relationship: '&IDR_Work_Set__has_valid__Class;'
index: 9
sourceClassId: '&IDC_WorkSet;'
type: 'has valid'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__valid_for__Work_Set;'
singular: no
- relationship: '&IDR_Class__valid_for__Work_Set;'
index: 10
sourceClassId: '&IDC_Class;'
type: 'valid for'
destinationClassId: '&IDC_WorkSet;'
siblingRelationshipId: '&IDR_Work_Set__has_valid__Class;'
singular: no
- relationship: '&IDR_Class__valid_for__Work_Set;'
index: 10
sourceClassId: '&IDC_Class;'
type: 'valid for'
destinationClassId: '&IDC_WorkSet;'
siblingRelationshipId: '&IDR_Work_Set__has_valid__Class;'
singular: no
- relationship: '&IDR_Control_Transaction_Method__processes__Element;'
index: 11
sourceClassId: '&IDC_ControlTransactionMethod;'
type: 'processes'
destinationClassId: '&IDC_Element;'
siblingRelationshipId: '&IDR_Element__processed_by__Control_Transaction_Method;'
singular: no
- relationship: '&IDR_Control_Transaction_Method__processes__Element;'
index: 11
sourceClassId: '&IDC_ControlTransactionMethod;'
type: 'processes'
destinationClassId: '&IDC_Element;'
siblingRelationshipId: '&IDR_Element__processed_by__Control_Transaction_Method;'
singular: no
- relationship: '&IDR_Element__processed_by__Control_Transaction_Method;'
index: 12
sourceClassId: '&IDC_Element;'
type: 'processed by'
destinationClassId: '&IDC_ControlTransactionMethod;'
siblingRelationshipId: '&IDR_Control_Transaction_Method__processes__Element;'
singular: yes
- relationship: '&IDR_Element__processed_by__Control_Transaction_Method;'
index: 12
sourceClassId: '&IDC_Element;'
type: 'processed by'
destinationClassId: '&IDC_ControlTransactionMethod;'
siblingRelationshipId: '&IDR_Control_Transaction_Method__processes__Element;'
singular: yes
#- relationship: '&IDR_Element__has_text_node_value__Attribute;'
# index: 13,
# sourceClassId: '&IDC_Element;'
# type: 'has text node value'
# destinationClassId: '&IDC_Attribute;'
# siblingRelationshipId: '&IDR_Element__processed_by__Control_Transaction_Method;'
# singular: yes
#- relationship: '&IDR_Element__has_text_node_value__Attribute;'
# index: 13,
# sourceClassId: '&IDC_Element;'
# type: 'has text node value'
# destinationClassId: '&IDC_Attribute;'
# siblingRelationshipId: '&IDR_Element__processed_by__Control_Transaction_Method;'
# singular: yes
# - relationship: '&IDR_Attribute__is_text_node_value_for__Element;'
# index: 14,
# sourceClassId: '&IDC_Attribute;'
# type: 'is text node value for'
# destinationClassId: '&IDC_Element;'
# siblingRelationshipId: '&IDR_Element__has_text_node_value__Attribute;'
# singular: yes
# - relationship: '&IDR_Attribute__is_text_node_value_for__Element;'
# index: 14,
# sourceClassId: '&IDC_Attribute;'
# type: 'is text node value for'
# destinationClassId: '&IDC_Element;'
# siblingRelationshipId: '&IDR_Element__has_text_node_value__Attribute;'
# singular: yes
- relationship: '&IDR_Class__has__Method;'
index: 15
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Method;'
siblingRelationshipId: '&IDR_Method__for__Class;'
singular: no
- relationship: '&IDR_Class__has__Method;'
index: 15
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Method;'
siblingRelationshipId: '&IDR_Method__for__Class;'
singular: no
- relationship: '&IDR_Method__for__Class;'
index: 16
sourceClassId: '&IDC_Method;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Method;'
singular: no
- relationship: '&IDR_Method__for__Class;'
index: 16
sourceClassId: '&IDC_Method;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Method;'
singular: no
# - relationship: '&IDR_Class__has_implementation__Method;'
# index: 17,
# sourceClassId: '&IDC_Class;'
# type: 'has implementation'
# destinationClassId: '&IDC_Method;'
# siblingRelationshipId: '&IDR_Method__implements_for__Class;'
# singular: no
# - relationship: '&IDR_Class__has_implementation__Method;'
# index: 17,
# sourceClassId: '&IDC_Class;'
# type: 'has implementation'
# destinationClassId: '&IDC_Method;'
# siblingRelationshipId: '&IDR_Method__implements_for__Class;'
# singular: no
# - relationship: '&IDR_Method__implements_for__Class;'
# index: 18,
# sourceClassId: '&IDC_Method;'
# type: 'implements for'
# destinationClassId: '&IDC_Class;'
# siblingRelationshipId: '&IDR_Class__has_implementation__Method;'
# singular: yes
# - relationship: '&IDR_Method__implements_for__Class;'
# index: 18,
# sourceClassId: '&IDC_Method;'
# type: 'implements for'
# destinationClassId: '&IDC_Class;'
# siblingRelationshipId: '&IDR_Class__has_implementation__Method;'
# singular: yes
# - relationship: '&IDR_Method__implements__Method;'
# index: 19
# sourceClassId: '&IDC_Method;'
# type: 'implements'
# destinationClassId: '&IDC_Method;'
# siblingRelationshipId: '&IDR_Method__implemented_by__Method;'
# singular: no
# - relationship: '&IDR_Method__implements__Method;'
# index: 19
# sourceClassId: '&IDC_Method;'
# type: 'implements'
# destinationClassId: '&IDC_Method;'
# siblingRelationshipId: '&IDR_Method__implemented_by__Method;'
# singular: no
# - relationship: '&IDR_Method__implemented_by__Method;'
# index: 20,
# sourceClassId: '&IDC_Method;'
# type: 'implemented by'
# destinationClassId: '&IDC_Method;'
# siblingRelationshipId: '&IDR_Method__implements__Method;'
# singular: no
# - relationship: '&IDR_Method__implemented_by__Method;'
# index: 20,
# sourceClassId: '&IDC_Method;'
# type: 'implemented by'
# destinationClassId: '&IDC_Method;'
# siblingRelationshipId: '&IDR_Method__implements__Method;'
# singular: no
- relationship: '&IDR_Class__has_default__Task;'
index: 87
sourceClassId: '&IDC_Class;'
type: 'has default'
destinationClassId: '&IDC_Task;'
siblingRelationshipId: '&IDR_Task__default_for__Class;'
singular: yes
- relationship: '&IDR_Class__has_default__Task;'
index: 87
sourceClassId: '&IDC_Class;'
type: 'has default'
destinationClassId: '&IDC_Task;'
siblingRelationshipId: '&IDR_Task__default_for__Class;'
singular: yes
- relationship: '&IDR_Task__default_for__Class;'
index: 88
sourceClassId: '&IDC_Task;'
type: 'default for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has_default__Task;'
singular: no
- relationship: '&IDR_Task__default_for__Class;'
index: 88
sourceClassId: '&IDC_Task;'
type: 'default for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has_default__Task;'
singular: no
- relationship: '&IDR_Relationship__has_source__Class;'
index: 157
sourceClassId: '&IDC_Relationship;'
type: 'has source'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__source_for__Relationship;'
singular: yes
- relationship: '&IDR_Relationship__has_source__Class;'
index: 157
sourceClassId: '&IDC_Relationship;'
type: 'has source'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__source_for__Relationship;'
singular: yes
- relationship: '&IDR_Class__source_for__Relationship;'
index: 158
sourceClassId: '&IDC_Class;'
type: 'source for'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__has_source__Class;'
singular: no
- relationship: '&IDR_Class__source_for__Relationship;'
index: 158
sourceClassId: '&IDC_Class;'
type: 'source for'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__has_source__Class;'
singular: no
- relationship: '&IDR_Relationship__has_destination__Class;'
index: 159
sourceClassId: '&IDC_Relationship;'
type: 'has destination'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__destination_for__Relationship;'
singular: yes
- relationship: '&IDR_Relationship__has_destination__Class;'
index: 159
sourceClassId: '&IDC_Relationship;'
type: 'has destination'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__destination_for__Relationship;'
singular: yes
- relationship: '&IDR_Class__destination_for__Relationship;'
index: 160
sourceClassId: '&IDC_Class;'
type: 'destination for'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__has_destination__Class;'
singular: no
- relationship: '&IDR_Class__destination_for__Relationship;'
index: 160
sourceClassId: '&IDC_Class;'
type: 'destination for'
destinationClassId: '&IDC_Relationship;'
siblingRelationshipId: '&IDR_Relationship__has_destination__Class;'
singular: no
- relationship: '&IDR_Class__has__Instance;'
index: 249
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__for__Class;'
singular: no
- relationship: '&IDR_Class__has__Instance;'
index: 249
sourceClassId: '&IDC_Class;'
type: 'has'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__for__Class;'
singular: no
- relationship: '&IDR_Instance__for__Class;'
index: 250
sourceClassId: '&IDC_Instance;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Instance;'
singular: no
- relationship: '&IDR_Instance__for__Class;'
index: 250
sourceClassId: '&IDC_Instance;'
type: 'for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__has__Instance;'
singular: no
- relationship: '&IDR_Task__has__Task_Category;'
index: 7910 # was: UI Task.has Related Menu Item
sourceClassId: '&IDC_Task;'
type: 'has'
destinationClassId: '&IDC_TaskCategory;'
siblingRelationshipId: '&IDR_Task_Category__for__Task;'
singular: yes
- relationship: '&IDR_Task_Category__for__Task;'
index: 7911 # was: Related Menu Item.for UI Task
sourceClassId: '&IDC_TaskCategory;'
type: 'for'
destinationClassId: '&IDC_Task;'
siblingRelationshipId: '&IDR_Task__has__Task_Category;'
singular: no

View File

@ -1,81 +1,86 @@
---
# YAML definition for Boolean Attribute
- class: '&IDC_TextAttribute;'
inherits: '&IDC_Attribute;'
name: Text Attribute
index: 4
customTagName: 'textAttribute'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'value'
- instance: '&IDA_MaximumLength;'
customTagName: 'maximumLength'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_TextAttribute;'
inherits: '&IDC_Attribute;'
name: Text Attribute
index: 4
customTagName: 'textAttribute'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'value'
- instance: '&IDA_MaximumLength;'
customTagName: 'maximumLength'
# YAML definition for Instances of Boolean Attribute, 1$5
# YAML definition for Instances of Boolean Attribute, 1$5
- textAttribute: '&IDA_Name;'
name: Name
index: 1
- textAttribute: '&IDA_Value;'
name: Value
index: 2
- textAttribute: '&IDA_DisplayID;'
name: Display ID
index: 3
- textAttribute: '&IDA_ClassName;'
name: Class Name
index: 4
- textAttribute: '&IDA_Expression;'
name: Expression
index: 5
- textAttribute: '&IDA_Comment;'
name: Comment
index: 6
- textAttribute: '&IDA_RelationshipType;'
name: 'Relationship Type'
index: 8
- textAttribute: '&IDA_MethodName;'
name: 'Method Name'
index: 9
- textAttribute: '&IDA_UserName;'
name: 'UserName'
index: 11
- textAttribute: '&IDA_ContentType;'
name: 'Content Type'
index: 16
- textAttribute: '&IDA_Encoding;'
name: 'Content Encoding'
index: 18
- textAttribute: '&IDA_Label;'
name: 'Label'
index: 22
- textAttribute: '&IDA_Token;'
name: 'Token'
index: 33
- textAttribute: '&IDA_UserNameOrPasswordIncorrectMessage;'
name: 'User Name or Password Incorrect Message'
index: 34
value: 'The user name or password you entered is not correct.'
translations:
- relationship: '&IDR_Translatable__has__Translation;'
values:
- language: '&IDI_Language_English;'
- value: 'User Name or Password Incorrect Message'
- textAttribute: '&IDA_Name;'
name: Name
index: 1
- textAttribute: '&IDA_Value;'
name: Value
index: 2
- textAttribute: '&IDA_DisplayID;'
name: Display ID
index: 3
- textAttribute: '&IDA_ClassName;'
name: Class Name
index: 4
- textAttribute: '&IDA_Expression;'
name: Expression
index: 5
- textAttribute: '&IDA_Comment;'
name: Comment
index: 6
- textAttribute: '&IDA_RelationshipType;'
name: 'Relationship Type'
index: 8
- textAttribute: '&IDA_MethodName;'
name: 'Method Name'
index: 9
- textAttribute: '&IDA_UserName;'
name: 'UserName'
index: 11
- textAttribute: '&IDA_ContentType;'
name: 'Content Type'
index: 16
- textAttribute: '&IDA_Encoding;'
name: 'Content Encoding'
index: 18
- textAttribute: '&IDA_Label;'
name: 'Label'
index: 22
- textAttribute: '&IDA_Token;'
name: 'Token'
index: 33
- textAttribute: '&IDA_UserNameOrPasswordIncorrectMessage;'
name: 'User Name or Password Incorrect Message'
index: 34
value: 'The user name or password you entered is not correct.'
translations:
- relationship: '&IDR_Translatable__has__Translation;'
values:
- language: '&IDI_Language_English;'
- value: 'User Name or Password Incorrect Message'
- textAttribute: '&IDA_IPAddress;'
index: 51
- textAttribute: '&IDA_Verb;'
name: Verb
index: 35
- textAttribute: '&IDA_Password;'
name: 'Password'
index: 36
- textAttribute: '&IDA_PasswordHash;'
name: 'Password Hash'
index: 37
- textAttribute: '&IDA_PasswordSalt;'
name: 'Password Salt'
index: 38
- textAttribute: '&IDA_Verb;'
name: Verb
index: 35
- textAttribute: '&IDA_Password;'
name: 'Password'
index: 36
- textAttribute: '&IDA_PasswordHash;'
name: 'Password Hash'
index: 37
- textAttribute: '&IDA_PasswordSalt;'
name: 'Password Salt'
index: 38
- textAttribute: '&IDA_IPAddress;'
index: 51
- textAttribute: '&IDA_CSSValue;'
index: 57

View File

@ -1,78 +1,74 @@
---
# YAML definition for Boolean Attribute
- class: '&IDC_BooleanAttribute;'
inherits: '&IDC_Attribute;'
name: Boolean Attribute
index: 5
# YAML definition for Instances of Boolean Attribute, 1$5
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDA_Singular;'
name: Singular
index: 1
- instance: '&IDA_Abstract;'
name: Abstract
index: 2
- instance: '&IDA_Static;'
name: Static
index: 3
- instance: '&IDA_Set;'
name: Set
index: 4
- instance: '&IDA_Build;'
name: Build
- class: '&IDC_BooleanAttribute;'
inherits: '&IDC_Attribute;'
name: Boolean Attribute
index: 5
- instance: '&IDA_True;'
name: "True"
index: 6
- instance: '&IDA_ThisInstanceEqualToInstanceParm;'
name: This instance equal to Instance Parm
index: 7
- instance: '&IDA_AllowNegative;'
name: Allow Negative
index: 8
- instance: '&IDA_StaticOnly;'
name: Static Only
index: 9
- instance: '&IDA_AddReferences;'
name: Add References
index: 10
- instance: '&IDA_RemoveExecutionMetricsConfiguration;'
class: '&IDC_BooleanAttribute;'
name: Remove Execution Metrics Configuration
index: 12
- instance: '&IDA_PassAllParms;'
class: '&IDC_BooleanAttribute;'
name: Pass All Parms
index: 13
- instance: '&IDA_DoNotUseMBResultSave;'
class: '&IDC_BooleanAttribute;'
name: Do Not Use MB Result Save
index: 14
- instance: '&IDA_BuiltFromBEMProcessNotInListForElement;'
class: '&IDC_BooleanAttribute;'
name: Built from BEM Process that is not in list for Element
index: 15
- instance: '&IDA_MultipleValidClasses;'
class: '&IDC_BooleanAttribute;'
name: Multiple Valid Classes
index: 16
- instance: '&IDA_Shared;'
class: '&IDC_BooleanAttribute;'
name: Shared
index: 17
- instance: '&IDA_UseAnyCondition;'
class: '&IDC_BooleanAttribute;'
name: Use Any Condition
index: 18
- instance: '&IDA_IncludeMIs;'
class: '&IDC_BooleanAttribute;'
name: Include MIs
index: 20
- instance: '&IDA_IncludeSuperclassMethods;'
class: '&IDC_BooleanAttribute;'
name: Include Superclass Methods
index: 21
- instance: '&IDA_AllowAny;'
class: '&IDC_BooleanAttribute;'
name: Allow Any
index: 22
# YAML definition for Instances of Boolean Attribute, 1$5
instances:
- instance: '&IDA_Singular;'
name: Singular
index: 1
- instance: '&IDA_Abstract;'
name: Abstract
index: 2
- instance: '&IDA_Static;'
name: Static
index: 3
- instance: '&IDA_Set;'
name: Set
index: 4
- instance: '&IDA_Build;'
name: Build
index: 5
- instance: '&IDA_True;'
name: "True"
index: 6
- instance: '&IDA_ThisInstanceEqualToInstanceParm;'
name: This instance equal to Instance Parm
index: 7
- instance: '&IDA_AllowNegative;'
name: Allow Negative
index: 8
- instance: '&IDA_StaticOnly;'
name: Static Only
index: 9
- instance: '&IDA_AddReferences;'
name: Add References
index: 10
- instance: '&IDA_RemoveExecutionMetricsConfiguration;'
name: Remove Execution Metrics Configuration
index: 12
- instance: '&IDA_PassAllParms;'
name: Pass All Parms
index: 13
- instance: '&IDA_DoNotUseMBResultSave;'
name: Do Not Use MB Result Save
index: 14
- instance: '&IDA_BuiltFromBEMProcessNotInListForElement;'
name: Built from BEM Process that is not in list for Element
index: 15
- instance: '&IDA_MultipleValidClasses;'
name: Multiple Valid Classes
index: 16
- instance: '&IDA_Shared;'
name: Shared
index: 17
- instance: '&IDA_UseAnyCondition;'
name: Use Any Condition
index: 18
- instance: '&IDA_IncludeMIs;'
name: Include MIs
index: 20
- instance: '&IDA_IncludeSuperclassMethods;'
name: Include Superclass Methods
index: 21
- instance: '&IDA_AllowAny;'
name: Allow Any
index: 22
- instance: '&IDA_OpenInNewWindow;'
name: Open in New Winow
index: 23

View File

@ -1,52 +1,70 @@
---
- class: '&IDC_Element;'
name: Element
index: 6
customTagName: 'element'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Label;'
customTagName: 'label'
relationships:
- instance: '&IDR_Element__has__Element_Content;'
customTagName: 'elementContents'
- instance: '&IDR_Element__processed_by__Process_Related_Updates_Method;'
customTagName: 'processedByPRUMethod'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_Element_AddMetadataInstance;'
name: add metadata instance
index: 1
- class: '&IDC_Element;'
name: Element
index: 6
customTagName: 'element'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Label;'
customTagName: 'label'
relationships:
- instance: '&IDR_Element__has__Element_Content;'
customTagName: 'elementContents'
- instance: '&IDR_Element__processed_by__Process_Related_Updates_Method;'
customTagName: 'processedByPRUMethod'
instances:
- instance: '&IDI_Element_AddMetadataInstance;'
name: add metadata instance
index: 1
- relationship: '&IDR_Element__processed_by__Process_Related_Updates_Method;'
index: 98
sourceClassId: '&IDC_Element;'
type: 'processed by'
destinationClassId: '&IDC_ProcessRelatedUpdatesMethod;'
siblingRelationshipId: '&IDR_Element_Content__for__Element;'
singular: no
- relationship: '&IDR_Process_Related_Updates_Method__processes__Element;'
index: 97
sourceClassId: '&IDC_ProcessRelatedUpdatesMethod;'
type: 'processes'
destinationClassId: '&IDC_Element;'
siblingRelationshipId: '&IDR_Element__processed_by__Process_Related_Updates_Method;'
singular: no
- relationship: '&IDR_Process_Related_Updates_Method__processes__Element;'
index: 99
sourceClassId: '&IDC_ProcessRelatedUpdatesMethod;'
type: 'processes'
destinationClassId: '&IDC_Element;'
siblingRelationshipId: '&IDR_Element__processed_by__Process_Related_Updates_Method;'
singular: no
- relationship: '&IDR_Element__has__Element_Content;'
index: 101
sourceClassId: '&IDC_Element;'
type: 'has'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__for__Element;'
singular: no
- relationship: '&IDR_Element__processed_by__Process_Related_Updates_Method;'
index: 98
sourceClassId: '&IDC_Element;'
type: 'processed by'
destinationClassId: '&IDC_ProcessRelatedUpdatesMethod;'
siblingRelationshipId: '&IDR_Element_Content__for__Element;'
singular: no
- relationship: '&IDR_Element_Content__for__Element;'
index: 102
sourceClassId: '&IDC_ElementContent;'
type: 'for'
destinationClassId: '&IDC_Element;'
siblingRelationshipId: '&IDR_Element__has__Element_Content;'
singular: no
- relationship: '&IDR_Process_Related_Updates_Method__uses__Executable_for_PUMB;'
index: 99
sourceClassId: '&IDC_ProcessRelatedUpdatesMethod;'
type: 'uses'
destinationClassId: '&IDC_ExecutableForPUMB;'
siblingRelationshipId: '&IDR_Executable_for_PUMB__used_by__Process_Related_Updates_Method;'
singular: no
- relationship: '&IDR_Executable_for_PUMB__used_by__Process_Related_Updates_Method;'
index: 100
sourceClassId: '&IDC_ExecutableForPUMB;'
type: 'used by'
destinationClassId: '&IDC_ProcessRelatedUpdatesMethod;'
siblingRelationshipId: '&IDR_Process_Related_Updates_Method__uses__Executable_for_PUMB;'
singular: no
- relationship: '&IDR_Element__has__Element_Content;'
index: 101
sourceClassId: '&IDC_Element;'
type: 'has'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__for__Element;'
singular: no
- relationship: '&IDR_Element_Content__for__Element;'
index: 102
sourceClassId: '&IDC_ElementContent;'
type: 'for'
destinationClassId: '&IDC_Element;'
siblingRelationshipId: '&IDR_Element__has__Element_Content;'
singular: no

View File

@ -1,5 +1,7 @@
---
- class: '&IDC_InstanceSet;'
name: Instance Set
index: 7
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_InstanceSet;'
name: Instance Set
index: 7

View File

@ -1,9 +1,11 @@
---
- class: '&IDC_ControlTransactionMethod;'
name: CT - Control Transaction Method
index: 8
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'CT - Control Transaction Method'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ControlTransactionMethod;'
name: CT - Control Transaction Method
index: 8
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'CT - Control Transaction Method'

View File

@ -1,9 +1,11 @@
---
- class: '&IDC_OMS;'
name: OMS
index: 9
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'OMS'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_OMS;'
name: OMS
index: 9
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'OMS'

View File

@ -1,10 +1,12 @@
---
- class: '&IDC_Method;'
name: Method
index: 10
abstract: yes
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Method'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Method;'
name: Method
index: 10
abstract: yes
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Method'

View File

@ -1,12 +1,14 @@
---
- class: '&IDC_ProcessUpdatesMethod;'
name: PU - Process Updates Method
index: 11
abstract: no
inherits: '&IDC_Method;'
customTagName: 'processUpdatesMethod'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'PU - Process Updates Method'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ProcessUpdatesMethod;'
name: PU - Process Updates Method
index: 11
abstract: no
inherits: '&IDC_Method;'
customTagName: 'processUpdatesMethod'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'PU - Process Updates Method'

View File

@ -1,25 +1,27 @@
---
- class: '&IDC_GetAttributeMethod;'
inherits: '&IDC_Method;'
name: GA - Get Attribute Method
index: 12
customTagName: getAttributeMethod
relationships:
- instance: '&IDR_Get_Attribute_Method__returns__Attribute;'
customTagName: 'returnsAttributeId'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_GetAttributeMethod;'
inherits: '&IDC_Method;'
name: GA - Get Attribute Method
index: 12
customTagName: getAttributeMethod
relationships:
- instance: '&IDR_Get_Attribute_Method__returns__Attribute;'
customTagName: 'returnsAttributeId'
- relationship: '&IDR_Get_Attribute_Method__returns__Attribute;'
index: 21
sourceClassId: '&IDC_GetAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_Attribute;'
siblingRelationshipId: '&IDR_Attribute__returned_by__Get_Attribute_Method;'
singular: no
- relationship: '&IDR_Get_Attribute_Method__returns__Attribute;'
index: 21
sourceClassId: '&IDC_GetAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_Attribute;'
siblingRelationshipId: '&IDR_Attribute__returned_by__Get_Attribute_Method;'
singular: no
- relationship: '&IDR_Attribute__returned_by__Get_Attribute_Method;'
index: 22
sourceClassId: '&IDC_Attribute;'
type: 'returned by'
destinationClassId: '&IDC_GetAttributeMethod;'
siblingRelationshipId: '&IDR_Get_Attribute_Method__returns__Attribute;'
singular: no
- relationship: '&IDR_Attribute__returned_by__Get_Attribute_Method;'
index: 22
sourceClassId: '&IDC_Attribute;'
type: 'returned by'
destinationClassId: '&IDC_GetAttributeMethod;'
siblingRelationshipId: '&IDR_Get_Attribute_Method__returns__Attribute;'
singular: no

View File

@ -1,27 +1,29 @@
---
- class: '&IDC_WorkSet;'
name: Work Set
index: 15
customTagName: workSet
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Work_Set__has_valid__Class;'
customTagName: 'validClasses'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_WorkSet;'
name: Work Set
index: 15
customTagName: workSet
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Work_Set__has_valid__Class;'
customTagName: 'validClasses'
- relationship: '&IDR_Work_Set__has_valid__Class;'
index: 9
sourceClassId: '&IDC_WorkSet;'
type: 'has valid'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__valid_for__Work_Set;'
singular: no
- relationship: '&IDR_Work_Set__has_valid__Class;'
index: 9
sourceClassId: '&IDC_WorkSet;'
type: 'has valid'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__valid_for__Work_Set;'
singular: no
- relationship: '&IDR_Class__valid_for__Work_Set;'
index: 10
sourceClassId: '&IDC_Class;'
type: 'valid for'
destinationClassId: '&IDC_WorkSet;'
siblingRelationshipId: '&IDR_Work_Set__has_valid__Class;'
singular: no
- relationship: '&IDR_Class__valid_for__Work_Set;'
index: 10
sourceClassId: '&IDC_Class;'
type: 'valid for'
destinationClassId: '&IDC_WorkSet;'
siblingRelationshipId: '&IDR_Work_Set__has_valid__Class;'
singular: no

View File

@ -1,30 +1,32 @@
---
- class: '&IDC_BEMProcess;'
name: BEM Process
index: 16
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'BEM Process'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDBEM_1;'
- class: '&IDC_BEMProcess;'
name: BEM Process
index: 16
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'BEM Process'
instances:
- instance: '&IDBEM_1;'
- relationship: '&IDR_Element_Content__built_from__BEM_Process;'
index: 105
sourceClassId: '&IDC_ElementContent;'
type: 'built from'
destinationClassId: '&IDC_BEMProcess;'
siblingRelationshipId: '&IDR_BEM_Process__builds__Element_Content;'
singular: yes
- relationship: '&IDR_Element_Content__built_from__BEM_Process;'
index: 105
sourceClassId: '&IDC_ElementContent;'
type: 'built from'
destinationClassId: '&IDC_BEMProcess;'
siblingRelationshipId: '&IDR_BEM_Process__builds__Element_Content;'
singular: yes
- relationship: '&IDR_BEM_Process__builds__Element_Content;'
index: 106
sourceClassId: '&IDC_BEMProcess;'
type: 'builds'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__built_from__BEM_Process;'
singular: no
- relationship: '&IDR_BEM_Process__builds__Element_Content;'
index: 106
sourceClassId: '&IDC_BEMProcess;'
type: 'builds'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__built_from__BEM_Process;'
singular: no

View File

@ -1,26 +1,28 @@
---
# YAML definition for Numeric Attribute
- class: '&IDC_NumericAttribute;'
inherits: '&IDC_Attribute;'
name: Numeric Attribute
index: 20
customTagName: 'numericAttribute'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'value'
- instance: '&IDA_MaximumValueNumeric;'
customTagName: 'maximumValue'
- instance: '&IDA_MinimumValueNumeric;'
customTagName: 'minimumValue'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_NumericAttribute;'
inherits: '&IDC_Attribute;'
name: Numeric Attribute
index: 20
customTagName: 'numericAttribute'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'value'
- instance: '&IDA_MaximumValueNumeric;'
customTagName: 'maximumValue'
- instance: '&IDA_MinimumValueNumeric;'
customTagName: 'minimumValue'
- numericAttribute: '&IDA_MaximumLength;'
name: 'Maximum Length'
index: 4
- numericAttribute: '&IDA_MaximumLength;'
name: 'Maximum Length'
index: 4
- numericAttribute: '&IDA_MaximumValueNumeric;'
name: 'Maximum Value'
- numericAttribute: '&IDA_MaximumValueNumeric;'
name: 'Maximum Value'
- numericAttribute: '&IDA_MinimumValueNumeric;'
name: 'Minimum Value'
- numericAttribute: '&IDA_MinimumValueNumeric;'
name: 'Minimum Value'

View File

@ -1,27 +1,29 @@
---
- class: '&IDC_AssignRelationshipMethod;'
inherits: '&IDC_Method;'
name: AR - Assign Relationship Method
index: 23
customTagName: assignRelationshipMethod
relationships:
- instance: '&IDR_Assign_Relationship_Method__assigns__Relationship;'
customTagName: 'assignsRelationshipId'
- instance: '&IDR_Assign_Relationship_Method__uses__Executable_returning_Instance_Set;'
customTagName: 'instanceId'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_AssignRelationshipMethod;'
inherits: '&IDC_Method;'
name: AR - Assign Relationship Method
index: 23
customTagName: assignRelationshipMethod
relationships:
- instance: '&IDR_Assign_Relationship_Method__assigns__Relationship;'
customTagName: 'assignsRelationshipId'
- instance: '&IDR_Assign_Relationship_Method__uses__Executable_returning_Instance_Set;'
customTagName: 'instanceId'
- relationship: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
index: 24
sourceClassId: '&IDC_GetAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_BooleanAttribute;'
siblingRelationshipId: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
singular: no
- relationship: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
index: 24
sourceClassId: '&IDC_GetAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_BooleanAttribute;'
siblingRelationshipId: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
singular: no
- relationship: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
index: 25
sourceClassId: '&IDC_BooleanAttribute;'
type: 'returned by'
destinationClassId: '&IDC_GetAttributeMethod;'
siblingRelationshipId: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
singular: no
- relationship: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
index: 25
sourceClassId: '&IDC_BooleanAttribute;'
type: 'returned by'
destinationClassId: '&IDC_GetAttributeMethod;'
siblingRelationshipId: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
singular: no

View File

@ -1,25 +1,27 @@
---
- class: '&IDC_EvaluateBooleanExpressionMethod;'
inherits: '&IDC_Method;'
name: EBE - Evaluate Boolean Expression Method
index: 24
customTagName: evaluateBooleanExpressionMethod
relationships:
- instance: '&IDR_Get_Attribute_Method__returns__Attribute;'
customTagName: 'returnsAttributeId'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_EvaluateBooleanExpressionMethod;'
inherits: '&IDC_Method;'
name: EBE - Evaluate Boolean Expression Method
index: 24
customTagName: evaluateBooleanExpressionMethod
relationships:
- instance: '&IDR_Get_Attribute_Method__returns__Attribute;'
customTagName: 'returnsAttributeId'
- relationship: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
index: 24
sourceClassId: '&IDC_GetAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_BooleanAttribute;'
siblingRelationshipId: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
singular: no
- relationship: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
index: 24
sourceClassId: '&IDC_GetAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_BooleanAttribute;'
siblingRelationshipId: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
singular: no
- relationship: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
index: 25
sourceClassId: '&IDC_BooleanAttribute;'
type: 'returned by'
destinationClassId: '&IDC_GetAttributeMethod;'
siblingRelationshipId: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
singular: no
- relationship: '&IDR_Boolean_Attribute__returned_by__Evaluate_Boolean_Expression_Method;'
index: 25
sourceClassId: '&IDC_BooleanAttribute;'
type: 'returned by'
destinationClassId: '&IDC_GetAttributeMethod;'
siblingRelationshipId: '&IDR_Evaluate_Boolean_Expression_Method__returns__Boolean_Attribute;'
singular: no

View File

@ -1,29 +1,31 @@
---
- class: '&IDC_MethodBinding;'
name: Method Binding
index: 27
abstract: yes
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Method Binding'
relationships:
- instance: '&IDR_Method_Binding__executes__Method;'
customTagName: 'executesMethod'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_MethodBinding;'
name: Method Binding
index: 27
abstract: yes
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Method Binding'
relationships:
- instance: '&IDR_Method_Binding__executes__Method;'
customTagName: 'executesMethod'
- relationship: '&IDR_Method_Binding__executes__Method;'
index: 32
sourceClassId: '&IDC_MethodBinding;'
type: 'executes'
destinationClassId: '&IDC_Method;'
siblingRelationshipId: '&IDR_Method__executed_by__Method_Binding;'
singular: yes
- relationship: '&IDR_Method_Binding__executes__Method;'
index: 32
sourceClassId: '&IDC_MethodBinding;'
type: 'executes'
destinationClassId: '&IDC_Method;'
siblingRelationshipId: '&IDR_Method__executed_by__Method_Binding;'
singular: yes
- relationship: '&IDR_Method__executed_by__Method_Binding;'
index: 33
sourceClassId: '&IDC_Method;'
type: 'executed by'
destinationClassId: '&IDC_MethodBinding;'
siblingRelationshipId: '&IDR_Method_Binding__executes__Method;'
singular: no
- relationship: '&IDR_Method__executed_by__Method_Binding;'
index: 33
sourceClassId: '&IDC_Method;'
type: 'executed by'
destinationClassId: '&IDC_MethodBinding;'
siblingRelationshipId: '&IDR_Method_Binding__executes__Method;'
singular: no

View File

@ -1,32 +1,34 @@
---
- class: '&IDC_BuildAttributeMethod;'
inherits: '&IDC_Method;'
name: BA - Build Attribute Method
index: 30
customTagName: buildAttributeMethod
attributes:
- instance: '&IDA_Verb;'
customTagName: 'verb'
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'initialValue'
relationships:
- instance: '&IDR_Build_Attribute_Method__returns__Attribute;'
customTagName: 'returnsAttributeId'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_BuildAttributeMethod;'
inherits: '&IDC_Method;'
name: BA - Build Attribute Method
index: 30
customTagName: buildAttributeMethod
attributes:
- instance: '&IDA_Verb;'
customTagName: 'verb'
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'initialValue'
relationships:
- instance: '&IDR_Build_Attribute_Method__returns__Attribute;'
customTagName: 'returnsAttributeId'
- relationship: '&IDR_Build_Attribute_Method__returns__Attribute;'
index: 60
sourceClassId: '&IDC_BuildAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_Attribute;'
siblingRelationshipId: '&IDR_Attribute__returned_by__Build_Attribute_Method;'
singular: no
- relationship: '&IDR_Build_Attribute_Method__returns__Attribute;'
index: 60
sourceClassId: '&IDC_BuildAttributeMethod;'
type: 'returns'
destinationClassId: '&IDC_Attribute;'
siblingRelationshipId: '&IDR_Attribute__returned_by__Build_Attribute_Method;'
singular: no
- relationship: '&IDR_Attribute__returned_by__Build_Attribute_Method;'
index: 61
sourceClassId: '&IDC_Attribute;'
type: 'returned by'
destinationClassId: '&IDC_BuildAttributeMethod;'
siblingRelationshipId: '&IDR_Build_Attribute_Method__returns__Attribute;'
singular: no
- relationship: '&IDR_Attribute__returned_by__Build_Attribute_Method;'
index: 61
sourceClassId: '&IDC_Attribute;'
type: 'returned by'
destinationClassId: '&IDC_BuildAttributeMethod;'
siblingRelationshipId: '&IDR_Build_Attribute_Method__returns__Attribute;'
singular: no

View File

@ -1,11 +1,13 @@
---
- class: '&IDC_Person;'
name: Person
index: 33
relationships:
- instance: '&IDR_Person__has__Person_Name;'
customTagName: 'names'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_Element_AddMetadataInstance;'
name: add metadata instance
index: 1
- class: '&IDC_Person;'
name: Person
index: 33
relationships:
- instance: '&IDR_Person__has__Person_Name;'
customTagName: 'names'
instances:
- instance: '&IDI_Element_AddMetadataInstance;'
name: add metadata instance
index: 1

View File

@ -1,35 +1,37 @@
- class: '&IDC_User;'
name: System User
index: 39
customTagName: 'user'
attributes:
- instance: '&IDA_UserName;'
customTagName: 'username'
- instance: '&IDA_PasswordHash;'
customTagName: 'passwordHash'
- instance: '&IDA_PasswordSalt;'
customTagName: 'passwordSalt'
relationships:
- instance: '&IDR_System_Account__has__User_Preferences;'
customTagName: 'hasUserPreferences'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_User;'
name: System User
index: 39
customTagName: 'user'
attributes:
- instance: '&IDA_UserName;'
customTagName: 'username'
- instance: '&IDA_PasswordHash;'
customTagName: 'passwordHash'
- instance: '&IDA_PasswordSalt;'
customTagName: 'passwordSalt'
relationships:
- instance: '&IDR_System_Account__has__User_Preferences;'
customTagName: 'hasUserPreferences'
- class: '&IDC_UserLogin;'
name: System Account Signon
index: 4328
- class: '&IDC_UserLogin;'
name: System Account Signon
index: 4328
# System Account Signon.for System User (3$12257)
- relationship: '&IDR_User_Login__has__User;'
index: 12257
sourceClassId: '&IDC_UserLogin;'
type: 'for'
destinationClassId: '&IDC_User;'
# siblingRelationshipId: '&IDR_User__for__User_Login;'
singular: no
# System Account Signon.for System User (3$12257)
- relationship: '&IDR_User_Login__has__User;'
index: 12257
sourceClassId: '&IDC_UserLogin;'
type: 'for'
destinationClassId: '&IDC_User;'
# siblingRelationshipId: '&IDR_User__for__User_Login;'
singular: no
# - relationship: '&IDR_User__for__User_Login;'
# index: 88
# sourceClassId: '&IDC_User;'
# type: 'for'
# destinationClassId: '&IDC_UserLogin;'
# siblingRelationshipId: '&IDR_User_Login__has__User;'
# singular: no
# - relationship: '&IDR_User__for__User_Login;'
# index: 88
# sourceClassId: '&IDC_User;'
# type: 'for'
# destinationClassId: '&IDC_UserLogin;'
# siblingRelationshipId: '&IDR_User_Login__has__User;'
# singular: no

View File

@ -1,4 +1,6 @@
- class: '&IDC_Layout;'
name: Layout
index: 41
abstract: yes
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Layout;'
name: Layout
index: 41
abstract: yes

View File

@ -1,5 +1,7 @@
---
- class: '&IDC_WorkData;'
name: Work Data
index: 42
abstract: yes
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_WorkData;'
name: Work Data
index: 42
abstract: yes

View File

@ -1,7 +1,9 @@
- class: '&IDC_ElementContentTestClass;'
index: 47
description: the Element Content test class is the target to be abused by EC attribute submit update tests
customTagName: elementContentTestClass
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ElementContentTestClass;'
index: 47
description: the Element Content test class is the target to be abused by EC attribute submit update tests
customTagName: elementContentTestClass
- elementContentTestClass: '&IDI_ElementContentTestClass_1;'
index: 1
- elementContentTestClass: '&IDI_ElementContentTestClass_1;'
index: 1

View File

@ -0,0 +1,7 @@
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ExecutableForPUMB;'
index: 53
name: Executable for PUMB
description: ""
abstract: yes

View File

@ -1,15 +1,38 @@
---
- class: '&IDC_ProcessRelatedUpdatesMethod;'
name: PRU - Process Related Updates Method
index: 54
abstract: no
inherits: '&IDC_Method;'
customTagName: 'processRelatedUpdatesMethod'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'PRU - Process Related Updates Method'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ProcessRelatedUpdatesMethod;'
name: PRU - Process Related Updates Method
index: 54
abstract: no
inherits: '&IDC_Method;'
customTagName: 'processRelatedUpdatesMethod'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Process_Related_Updates_Method__uses__Executable_for_PUMB;'
customTagName: 'usesExecutableForPUMB'
- instance: '&IDR_Process_Related_Updates_Method__processes_for__Class;'
customTagName: 'processesForClass'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'PRU - Process Related Updates Method'
- relationship: '&IDR_Class__processed_by__Process_Related_Updates_Method;'
index: 183
sourceClassId: '&IDC_Class;'
type: 'processed by'
destinationClassId: '&IDC_ProcessRelatedUpdatesMethod;'
siblingRelationshipId: '&IDR_Process_Related_Updates_Method__processes_for__Class;'
singular: no
- relationship: '&IDR_Process_Related_Updates_Method__processes_for__Class;'
index: 184
sourceClassId: '&IDC_ProcessRelatedUpdatesMethod;'
type: 'processes for'
destinationClassId: '&IDC_Class;'
siblingRelationshipId: '&IDR_Class__processed_by__Process_Related_Updates_Method;'
singular: no

View File

@ -1,72 +1,74 @@
---
- relationship: '&IDR_Element_Content__has__Instance;'
index: 103
sourceClassId: '&IDC_ElementContent;'
type: 'has'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__for__Element_Content;'
singular: no
- relationship: '&IDR_Instance__for__Element_Content;'
index: 104
sourceClassId: '&IDC_Instance;'
type: 'for'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__has__Instance;'
singular: no
- relationship: '&IDR_Element_Content__has__Layout;'
index: 105
sourceClassId: '&IDC_ElementContent;'
type: 'has'
destinationClassId: '&IDC_Layout;'
siblingRelationshipId: '&IDR_Layout__for__Element_Content;'
singular: no
- relationship: '&IDR_Layout__for__Element_Content;'
index: 106
sourceClassId: '&IDC_Layout;'
type: 'for'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__has__Layout;'
singular: no
- class: '&IDC_ElementContent;'
name: Element Content
index: 56
customTagName: 'elementContent'
defaultTask: '&IDI_Task_ViewElementContent;'
attributes:
- instance: '&IDA_Order;'
customTagName: 'order'
- instance: '&IDA_Label;'
customTagName: 'label'
relationships:
- instance: '&IDR_Element_Content__has__Instance;'
customTagName: 'defaultDataType'
- instance: '&IDR_Element_Content__has__Element_Content_Display_Option;'
customTagName: 'displayOptions'
- instance: '&IDR_Element_Content__has__Layout;'
customTagName: 'layout'
- instance: '&IDR_Element_Content__built_from__BEM_Process;'
customTagName: 'builtFromBEMProcess'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_Element_AddMetadataInstance;'
name: add metadata instance
index: 1
- relationship: '&IDR_Element_Content__has__Element_Content_Display_Option;'
index: 259
sourceClassId: '&IDC_ElementContent;'
type: 'has'
destinationClassId: '&IDC_ElementContentDisplayOption;'
siblingRelationshipId: '&IDR_Element_Content_Display_Option__for__Element_Content;'
singular: no
- relationship: '&IDR_Element_Content_Display_Option__for__Element_Content;'
index: 260
sourceClassId: '&IDC_ElementContentDisplayOption;'
type: 'for'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__has__Element_Content_Display_Option;'
singular: no
- relationship: '&IDR_Element_Content__has__Instance;'
index: 103
sourceClassId: '&IDC_ElementContent;'
type: 'has'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__for__Element_Content;'
singular: no
- relationship: '&IDR_Instance__for__Element_Content;'
index: 104
sourceClassId: '&IDC_Instance;'
type: 'for'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__has__Instance;'
singular: no
- relationship: '&IDR_Element_Content__has__Layout;'
index: 105
sourceClassId: '&IDC_ElementContent;'
type: 'has'
destinationClassId: '&IDC_Layout;'
siblingRelationshipId: '&IDR_Layout__for__Element_Content;'
singular: no
- relationship: '&IDR_Layout__for__Element_Content;'
index: 106
sourceClassId: '&IDC_Layout;'
type: 'for'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__has__Layout;'
singular: no
- class: '&IDC_ElementContent;'
name: Element Content
index: 56
customTagName: 'elementContent'
defaultTask: '&IDI_Task_ViewElementContent;'
attributes:
- instance: '&IDA_Order;'
customTagName: 'order'
- instance: '&IDA_Label;'
customTagName: 'label'
relationships:
- instance: '&IDR_Element_Content__has__Instance;'
customTagName: 'defaultDataType'
- instance: '&IDR_Element_Content__has__Element_Content_Display_Option;'
customTagName: 'displayOptions'
- instance: '&IDR_Element_Content__has__Layout;'
customTagName: 'layout'
- instance: '&IDR_Element_Content__built_from__BEM_Process;'
customTagName: 'builtFromBEMProcess'
instances:
- instance: '&IDI_Element_AddMetadataInstance;'
name: add metadata instance
index: 1
- relationship: '&IDR_Element_Content__has__Element_Content_Display_Option;'
index: 259
sourceClassId: '&IDC_ElementContent;'
type: 'has'
destinationClassId: '&IDC_ElementContentDisplayOption;'
siblingRelationshipId: '&IDR_Element_Content_Display_Option__for__Element_Content;'
singular: no
- relationship: '&IDR_Element_Content_Display_Option__for__Element_Content;'
index: 260
sourceClassId: '&IDC_ElementContentDisplayOption;'
type: 'for'
destinationClassId: '&IDC_ElementContent;'
siblingRelationshipId: '&IDR_Element_Content__has__Element_Content_Display_Option;'
singular: no

View File

@ -1,15 +1,17 @@
---
- class: '&IDC_Module;'
name: Module
index: 57
customTagName: 'module'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Module__has__Instance;'
- instance: '&IDR_Instance__for__Module'
#- instance: '&IDR_Module__owned_by__Owner;'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_Module_MochaBaseSystem;'
name: 'Mocha Base System'
- class: '&IDC_Module;'
name: Module
index: 57
customTagName: 'module'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Module__has__Instance;'
- instance: '&IDR_Instance__for__Module'
#- instance: '&IDR_Module__owned_by__Owner;'
instances:
- instance: '&IDI_Module_MochaBaseSystem;'
name: 'Mocha Base System'

View File

@ -1,4 +1,6 @@
- class: '&IDC_CommonNumeric;'
name: 'Common Numeric'
index: 58
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_CommonNumeric;'
name: 'Common Numeric'
index: 58

View File

@ -1,27 +1,29 @@
---
- class: '&IDC_GetInstanceSetBySystemRoutineMethod;'
inherits: '&IDC_Method;'
name: GSS - Get Instance Set By System Routine Method
index: 65
customTagName: getInstanceSetBySystemRoutineMethod
relationships:
# - instance: '&IDR_Get_Instance_Set_By_System_Routine_Method__returns__Instance_Set;'
# customTagName: 'returnsInstanceSetId'
- instance: '&IDR_Get_Instance_Set_By_System_Routine_Method__uses__System_Instance_Set_Routine;'
customTagName: 'systemInstanceSetRoutine'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_GetInstanceSetBySystemRoutineMethod;'
inherits: '&IDC_Method;'
name: GSS - Get Instance Set By System Routine Method
index: 65
customTagName: getInstanceSetBySystemRoutineMethod
relationships:
# - instance: '&IDR_Get_Instance_Set_By_System_Routine_Method__returns__Instance_Set;'
# customTagName: 'returnsInstanceSetId'
- instance: '&IDR_Get_Instance_Set_By_System_Routine_Method__uses__System_Instance_Set_Routine;'
customTagName: 'systemInstanceSetRoutine'
- relationship: '&IDR_Get_Instance_Set_By_System_Routine_Method__uses__System_Instance_Set_Routine;'
index: 131
sourceClassId: '&IDC_GetInstanceSetBySystemRoutineMethod;'
type: 'uses'
destinationClassId: '&IDC_SystemInstanceSetRoutine;'
siblingRelationshipId: '&IDR_System_Instance_Set_Routine__used_by__Get_Instance_Set_By_System_Routine_Method;'
singular: yes
- relationship: '&IDR_Get_Instance_Set_By_System_Routine_Method__uses__System_Instance_Set_Routine;'
index: 131
sourceClassId: '&IDC_GetInstanceSetBySystemRoutineMethod;'
type: 'uses'
destinationClassId: '&IDC_SystemInstanceSetRoutine;'
siblingRelationshipId: '&IDR_System_Instance_Set_Routine__used_by__Get_Instance_Set_By_System_Routine_Method;'
singular: yes
- relationship: '&IDR_System_Instance_Set_Routine__used_by__Get_Instance_Set_By_System_Routine_Method;'
index: 132
sourceClassId: '&IDC_SystemInstanceSetRoutine;'
type: 'used by'
destinationClassId: '&IDC_GetInstanceSetBySystemRoutineMethod;'
siblingRelationshipId: '&IDR_Get_Instance_Set_By_System_Routine_Method__uses__System_Instance_Set_Routine;'
singular: no
- relationship: '&IDR_System_Instance_Set_Routine__used_by__Get_Instance_Set_By_System_Routine_Method;'
index: 132
sourceClassId: '&IDC_SystemInstanceSetRoutine;'
type: 'used by'
destinationClassId: '&IDC_GetInstanceSetBySystemRoutineMethod;'
siblingRelationshipId: '&IDR_Get_Instance_Set_By_System_Routine_Method__uses__System_Instance_Set_Routine;'
singular: no

View File

@ -1,6 +1,8 @@
---
- class: '&IDC_SystemInstanceSetRoutine;'
name: System Instance Set Routine
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_SystemInstanceSetRoutine_GetUserForUserNameParm;'
name: 'Get User For User Name Parm'
- class: '&IDC_SystemInstanceSetRoutine;'
name: System Instance Set Routine
instances:
- instance: '&IDI_SystemInstanceSetRoutine_GetUserForUserNameParm;'
name: 'Get User For User Name Parm'

View File

@ -0,0 +1,50 @@
---
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_AssignAttributeMethod;'
inherits: '&IDC_Method;'
name: AA - Assign Attribute Method
index: 73
customTagName: assignAttributeMethod
attributes:
- instance: '&IDA_Verb;'
customTagName: 'verb'
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Assign_Attribute_Method__uses__Executable_returning_Attribute;'
customTagName: 'usesExecutableReturningAttribute'
- instance: '&IDR_Assign_Attribute_Method__assigns__Attribute;'
customTagName: 'assignsAttribute'
- relationship: '&IDR_Assign_Attribute_Method__uses__Executable_returning_Attribute;'
index: 139
sourceClassId: '&IDC_AssignAttributeMethod;'
type: 'uses'
destinationClassId: '&IDC_ExecutableReturningAttribute;'
siblingRelationshipId: '&IDR_Executable_returning_Attribute__used_by__Assign_Attribute_Method;'
singular: no
- relationship: '&IDR_Executable_returning_Attribute__used_by__Assign_Attribute_Method;'
index: 140
sourceClassId: '&IDC_ExecutableReturningAttribute;'
type: 'used by'
destinationClassId: '&IDC_AssignAttributeMethod;'
siblingRelationshipId: '&IDR_Assign_Attribute_Method__uses__Executable_returning_Attribute;'
singular: no
- relationship: '&IDR_Assign_Attribute_Method__assigns__Attribute;'
index: 141
sourceClassId: '&IDC_AssignAttributeMethod;'
type: 'assigns'
destinationClassId: '&IDC_Attribute;'
siblingRelationshipId: '&IDR_Attribute__assigned_by__Assign_Attribute_Method;'
singular: no
- relationship: '&IDR_Attribute__assigned_by__Assign_Attribute_Method;'
index: 142
sourceClassId: '&IDC_Attribute;'
type: 'assigned by'
destinationClassId: '&IDC_AssignAttributeMethod;'
siblingRelationshipId: '&IDR_Assign_Attribute_Method__assigns__Attribute;'
singular: no

View File

@ -1,5 +1,7 @@
---
- class: '&IDC_ExecuteUpdateMethodBinding;'
index: 83
name: Execute Update Method Binding
inherits: '&IDC_MethodBinding;'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ExecuteUpdateMethodBinding;'
index: 83
name: Execute Update Method Binding
inherits: '&IDC_MethodBinding;'

View File

@ -1,14 +1,16 @@
---
- class: '&IDC_ReturnInstanceSetMethodBinding;'
name: Return Instance Set Method Binding
index: 87
customTagName: returnInstanceSetMethodBinding
inherits: '&IDC_MethodBinding;'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Return Instance Set Method Binding'
relationships: # FIXME: remove this when we can properly inherit definitions in zq-python
- instance: '&IDR_Method_Binding__executes__Method;'
customTagName: 'executesMethod'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ReturnInstanceSetMethodBinding;'
name: Return Instance Set Method Binding
index: 87
customTagName: returnInstanceSetMethodBinding
inherits: '&IDC_MethodBinding;'
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Return Instance Set Method Binding'
relationships: # FIXME: remove this when we can properly inherit definitions in zq-python
- instance: '&IDR_Method_Binding__executes__Method;'
customTagName: 'executesMethod'

View File

@ -1,30 +1,32 @@
---
- class: '&IDC_InstanceSource;'
name: Instance Source
index: 109
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_InstanceSource_System;'
name: 'System'
- instance: '&IDI_InstanceSource_Delivered;'
name: 'Delivered'
- instance: '&IDI_InstanceSource_Custom;'
name: 'Custom'
- class: '&IDC_InstanceSource;'
name: Instance Source
index: 109
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
instances:
- instance: '&IDI_InstanceSource_System;'
name: 'System'
- instance: '&IDI_InstanceSource_Delivered;'
name: 'Delivered'
- instance: '&IDI_InstanceSource_Custom;'
name: 'Custom'
- relationship: '&IDR_Instance__has__Instance_Source;'
index: 209
sourceClassId: '&IDC_Instance;'
type: 'has'
destinationClassId: '&IDC_InstanceSource;'
siblingRelationshipId: '&IDR_Instance_Source__for__Instance;'
singular: yes
- relationship: '&IDR_Instance__has__Instance_Source;'
index: 209
sourceClassId: '&IDC_Instance;'
type: 'has'
destinationClassId: '&IDC_InstanceSource;'
siblingRelationshipId: '&IDR_Instance_Source__for__Instance;'
singular: yes
- relationship: '&IDR_Instance_Source__for__Instance;'
index: 210
sourceClassId: '&IDC_InstanceSource;'
type: 'for'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__has__Instance_Source;'
singular: no
- relationship: '&IDR_Instance_Source__for__Instance;'
index: 210
sourceClassId: '&IDC_InstanceSource;'
type: 'for'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__has__Instance_Source;'
singular: no

View File

@ -1,46 +1,48 @@
---
- class: '&IDC_ElementContentDisplayOption;'
name: Element Content Display Option
index: 116
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Element Content Display Option'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_DisplayOption_DisplayAsPageTitle;'
name: Display as Page Title
index: 1
- instance: '&IDI_DisplayOption_NotEnterable;'
name: Not Enterable
index: 2
- instance: '&IDI_DisplayOption_SubmitNotEnterable;'
name: Submit Not Enterable
index: 3
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
name: Show Subelements Vertically
index: 4
- instance: '&IDI_DisplayOption_Singular;'
name: Singular
index: 5
- instance: '&IDI_DisplayOption_DoNotShow;'
name: Do Not Show
index: 6
- instance: '&IDI_DisplayOption_InitializeForEntry;'
name: Initialize For Entry
index: 7
- instance: '&IDI_DisplayOption_DoNotShowLabel;'
name: Do Not Show Label
index: 9
- instance: '&IDI_DisplayOption_WideText;'
name: Wide Text
index: 10
- instance: '&IDI_DisplayOption_Required;'
name: Required
index: 11
- instance: '&IDI_DisplayOption_DoNotShowIfEmpty;'
name: Do Not Show If Empty
index: 12
- instance: '&IDI_DisplayOption_ObscuredText;'
name: Obscured Text
index: 13
- class: '&IDC_ElementContentDisplayOption;'
name: Element Content Display Option
index: 116
translations:
- relationship: '&IDR_Class__has_title__Translation;'
values:
- languageInstanceId: '&IDI_Language_English;'
value: 'Element Content Display Option'
instances:
- instance: '&IDI_DisplayOption_DisplayAsPageTitle;'
name: Display as Page Title
index: 1
- instance: '&IDI_DisplayOption_NotEnterable;'
name: Not Enterable
index: 2
- instance: '&IDI_DisplayOption_SubmitNotEnterable;'
name: Submit Not Enterable
index: 3
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
name: Show Subelements Vertically
index: 4
- instance: '&IDI_DisplayOption_Singular;'
name: Singular
index: 5
- instance: '&IDI_DisplayOption_DoNotShow;'
name: Do Not Show
index: 6
- instance: '&IDI_DisplayOption_InitializeForEntry;'
name: Initialize For Entry
index: 7
- instance: '&IDI_DisplayOption_DoNotShowLabel;'
name: Do Not Show Label
index: 9
- instance: '&IDI_DisplayOption_WideText;'
name: Wide Text
index: 10
- instance: '&IDI_DisplayOption_Required;'
name: Required
index: 11
- instance: '&IDI_DisplayOption_DoNotShowIfEmpty;'
name: Do Not Show If Empty
index: 12
- instance: '&IDI_DisplayOption_ObscuredText;'
name: Obscured Text
index: 13

View File

@ -1,29 +1,31 @@
- class: '&IDC_Language;'
name: 'Language'
index: 234
abstract: no
customTagName: 'language'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Language;'
name: 'Language'
index: 234
abstract: no
customTagName: 'language'
- language: '&IDI_Language_English;'
index: 1
- language: '&IDI_Language_English;'
index: 1
- language: '&IDI_Language_Spanish;'
index: 2
- language: '&IDI_Language_Spanish;'
index: 2
- language: '&IDI_Language_French;'
index: 3
- language: '&IDI_Language_French;'
index: 3
- language: '&IDI_Language_German;'
index: 4
- language: '&IDI_Language_German;'
index: 4
- language: '&IDI_Language_Italian;'
index: 5
- language: '&IDI_Language_Italian;'
index: 5
- language: '&IDI_Language_Chinese;'
index: 6
- language: '&IDI_Language_Chinese;'
index: 6
- language: '&IDI_Language_Japanese;'
index: 7
- language: '&IDI_Language_Japanese;'
index: 7
- language: '&IDI_Language_Korean;'
index: 8
- language: '&IDI_Language_Korean;'
index: 8

View File

@ -1,10 +1,12 @@
- class: '&IDC_Tenant;'
name: 'Tenant'
index: 361
abstract: no
sealed: yes
customTagName: 'tenant'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Tenant;'
name: 'Tenant'
index: 361
abstract: no
sealed: yes
customTagName: 'tenant'
- tenant: '&IDI_Tenant_Singleton;'
index: 1
- tenant: '&IDI_Tenant_Singleton;'
index: 1

View File

@ -1,56 +1,58 @@
- class: '&IDC_PUMProcess;'
name: PUM Process
index: 371
abstract: no
customTagName: pumProcess
relationships:
- instance: '&IDR_PUM_Process__invokes__Execute_Update_Method_Binding;'
customTagName: invokesExecutesUpdateMethodBindings
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_PUMProcess;'
name: PUM Process
index: 371
abstract: no
customTagName: pumProcess
relationships:
- instance: '&IDR_PUM_Process__invokes__Execute_Update_Method_Binding;'
customTagName: invokesExecutesUpdateMethodBindings
- relationship: '&IDR_PUM_Process__invokes__Execute_Update_Method_Binding;'
index: 859
sourceClassId: '&IDC_PUMProcess;'
type: 'invokes'
destinationClassId: '&IDC_ExecuteUpdateMethodBinding;'
siblingRelationshipId: '&IDR_Execute_Update_Method_Binding__invoked_by__PUM_Process;'
singular: no
- relationship: '&IDR_PUM_Process__invokes__Execute_Update_Method_Binding;'
index: 859
sourceClassId: '&IDC_PUMProcess;'
type: 'invokes'
destinationClassId: '&IDC_ExecuteUpdateMethodBinding;'
siblingRelationshipId: '&IDR_Execute_Update_Method_Binding__invoked_by__PUM_Process;'
singular: no
- relationship: '&IDR_Execute_Update_Method_Binding__invoked_by__PUM_Process;'
index: 860
sourceClassId: '&IDC_ExecuteUpdateMethodBinding;'
type: 'invoked by'
destinationClassId: '&IDC_PUMProcess;'
siblingRelationshipId: '&IDR_PUM_Process__invokes__Execute_Update_Method_Binding;'
singular: no
- relationship: '&IDR_Execute_Update_Method_Binding__invoked_by__PUM_Process;'
index: 860
sourceClassId: '&IDC_ExecuteUpdateMethodBinding;'
type: 'invoked by'
destinationClassId: '&IDC_PUMProcess;'
siblingRelationshipId: '&IDR_PUM_Process__invokes__Execute_Update_Method_Binding;'
singular: no
- relationship: '&IDR_PUM_Process__invokes__Process_Related_Updates_Method;'
index: 861
sourceClassId: '&IDC_PUMProcess;'
type: 'invokes'
destinationClassId: '&IDC_ProcessRelatedUpdatesMethod;'
siblingRelationshipId: '&IDR_Process_Related_Updates_Method__invoked_by__PUM_Process;'
singular: no
- relationship: '&IDR_PUM_Process__invokes__Process_Related_Updates_Method;'
index: 861
sourceClassId: '&IDC_PUMProcess;'
type: 'invokes'
destinationClassId: '&IDC_ProcessRelatedUpdatesMethod;'
siblingRelationshipId: '&IDR_Process_Related_Updates_Method__invoked_by__PUM_Process;'
singular: no
- relationship: '&IDR_Process_Related_Updates_Method__invoked_by__PUM_Process;'
index: 862
sourceClassId: '&IDC_ProcessRelatedUpdatesMethod;'
type: 'invoked by'
destinationClassId: '&IDC_PUMProcess;'
siblingRelationshipId: '&IDR_PUM_Process__invokes__Process_Related_Updates_Method;'
singular: no
- relationship: '&IDR_Process_Related_Updates_Method__invoked_by__PUM_Process;'
index: 862
sourceClassId: '&IDC_ProcessRelatedUpdatesMethod;'
type: 'invoked by'
destinationClassId: '&IDC_PUMProcess;'
siblingRelationshipId: '&IDR_PUM_Process__invokes__Process_Related_Updates_Method;'
singular: no
- relationship: '&IDR_Process_Updates_Method__has__PUM_Process;'
index: 863
sourceClassId: '&IDC_ProcessUpdatesMethod;'
type: 'has'
destinationClassId: '&IDC_PUMProcess;'
siblingRelationshipId: '&IDR_PUM_Process__for__Process_Updates_Method;'
singular: yes
- relationship: '&IDR_Process_Updates_Method__has__PUM_Process;'
index: 863
sourceClassId: '&IDC_ProcessUpdatesMethod;'
type: 'has'
destinationClassId: '&IDC_PUMProcess;'
siblingRelationshipId: '&IDR_PUM_Process__for__Process_Updates_Method;'
singular: yes
- relationship: '&IDR_PUM_Process__for__Process_Updates_Method;'
index: 864
sourceClassId: '&IDC_PUMProcess;'
type: 'for'
destinationClassId: '&IDC_ProcessUpdatesMethod;'
siblingRelationshipId: '&IDR_Process_Updates_Method__has__PUM_Process;'
singular: no
- relationship: '&IDR_PUM_Process__for__Process_Updates_Method;'
index: 864
sourceClassId: '&IDC_PUMProcess;'
type: 'for'
destinationClassId: '&IDC_ProcessUpdatesMethod;'
siblingRelationshipId: '&IDR_Process_Updates_Method__has__PUM_Process;'
singular: no

View File

@ -1,3 +1,5 @@
- class: '&IDC_Search;'
name: Search
index: 496
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Search;'
name: Search
index: 496

View File

@ -1,3 +1,5 @@
- class: '&IDC_GroupLayout;'
index: 1599
customTagName: 'groupLayout'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_GroupLayout;'
index: 1599
customTagName: 'groupLayout'

View File

@ -1,8 +1,10 @@
- class: '&IDC_ImageLayout;'
index: 1604
customTagName: 'imageLayout'
inherits: '&IDC_Layout;'
relationships:
- instance: '&IDR_Layout__has__Style;'
customTagName: 'style'
customTagNameCreatesInstanceOf: '&IDC_Style;'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ImageLayout;'
index: 1604
customTagName: 'imageLayout'
inherits: '&IDC_Layout;'
relationships:
- instance: '&IDR_Layout__has__Style;'
customTagName: 'style'
customTagNameCreatesInstanceOf: '&IDC_Style;'

View File

@ -1,62 +1,104 @@
- class: '&IDC_Style;'
index: 1605
customTagName: 'style'
registerForTemplate: yes
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Style__has_width__Measurement;'
customTagName: 'width'
customTagNameCreatesInstanceOf: '&IDC_Measurement;'
- instance: '&IDR_Style__has_height__Measurement;'
customTagName: 'height'
customTagNameCreatesInstanceOf: '&IDC_Measurement;'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Style;'
index: 1605
customTagName: 'style'
registerForTemplate: yes
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
relationships:
- instance: '&IDR_Style__has_width__Measurement;'
customTagName: 'width'
customTagNameCreatesInstanceOf: '&IDC_Measurement;'
- instance: '&IDR_Style__has_height__Measurement;'
customTagName: 'height'
customTagNameCreatesInstanceOf: '&IDC_Measurement;'
- instance: '&IDR_Style__has_horizontal__Alignment;'
customTagName: 'horizontalAlignment'
- instance: '&IDR_Style__has_vertical__Alignment;'
customTagName: 'verticalAlignment'
- relationship: '&IDR_Style__has_width__Measurement;'
index: 24610
sourceClassId: '&IDC_Style;'
type: 'has width'
destinationClassId: '&IDC_Measurement;'
siblingRelationshipId: '&IDR_Measurement__width_for__Style;'
singular: yes
- relationship: '&IDR_Style__has_width__Measurement;'
index: 24610
sourceClassId: '&IDC_Style;'
type: 'has width'
destinationClassId: '&IDC_Measurement;'
siblingRelationshipId: '&IDR_Measurement__width_for__Style;'
singular: yes
- relationship: '&IDR_Measurement__width_for__Style;'
index: 24611
sourceClassId: '&IDC_Measurement;'
type: 'width for'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__has_width__Measurement;'
singular: no
- relationship: '&IDR_Measurement__width_for__Style;'
index: 24611
sourceClassId: '&IDC_Measurement;'
type: 'width for'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__has_width__Measurement;'
singular: no
- relationship: '&IDR_Style__has_height__Measurement;'
index: 24612
sourceClassId: '&IDC_Style;'
type: 'has height'
destinationClassId: '&IDC_Measurement;'
siblingRelationshipId: '&IDR_Measurement__height_for__Style;'
singular: yes
- relationship: '&IDR_Style__has_height__Measurement;'
index: 24612
sourceClassId: '&IDC_Style;'
type: 'has height'
destinationClassId: '&IDC_Measurement;'
siblingRelationshipId: '&IDR_Measurement__height_for__Style;'
singular: yes
- relationship: '&IDR_Measurement__height_for__Style;'
index: 24613
sourceClassId: '&IDC_Measurement;'
type: 'height for'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__has_height__Measurement;'
singular: no
- relationship: '&IDR_Measurement__height_for__Style;'
index: 24613
sourceClassId: '&IDC_Measurement;'
type: 'height for'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__has_height__Measurement;'
singular: no
- relationship: '&IDR_Layout__has__Style;'
index: 24620
sourceClassId: '&IDC_Layout;'
type: 'has'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__for__Layout;'
singular: no
- relationship: '&IDR_Layout__has__Style;'
index: 24614
sourceClassId: '&IDC_Layout;'
type: 'has'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__for__Layout;'
singular: no
- relationship: '&IDR_Style__for__Layout;'
index: 24615
sourceClassId: '&IDC_Style;'
type: 'for'
destinationClassId: '&IDC_Layout;'
siblingRelationshipId: '&IDR_Layout__has__Style;'
singular: no
- relationship: '&IDR_Style__has_horizontal__Alignment;'
index: 24618
sourceClassId: '&IDC_Style;'
type: 'has horizontal'
destinationClassId: '&IDC_Alignment;'
siblingRelationshipId: '&IDR_Alignment__horizontal_for__Style;'
singular: yes
- relationship: '&IDR_Alignment__horizontal_for__Style;'
index: 24619
sourceClassId: '&IDC_Alignment;'
type: 'horizontal for'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__has_horizontal__Alignment;'
singular: no
- relationship: '&IDR_Style__has_vertical__Alignment;'
index: 24620
sourceClassId: '&IDC_Style;'
type: 'has vertical'
destinationClassId: '&IDC_Alignment;'
siblingRelationshipId: '&IDR_Alignment__vertical_for__Style;'
singular: yes
- relationship: '&IDR_Alignment__vertical_for__Style;'
index: 24621
sourceClassId: '&IDC_Alignment;'
type: 'vertical for'
destinationClassId: '&IDC_Style;'
siblingRelationshipId: '&IDR_Style__has_vertical__Alignment;'
singular: no
- relationship: '&IDR_Style__for__Layout;'
index: 24621
sourceClassId: '&IDC_Style;'
type: 'for'
destinationClassId: '&IDC_Layout;'
siblingRelationshipId: '&IDR_Layout__has__Style;'
singular: no

View File

@ -1,10 +1,29 @@
- class: '&IDC_Measurement;'
index: 1606
name: 'Measurement'
customTagName: 'measurement'
attributes:
- instance: '&IDA_Value;'
customTagName: value
relationships:
- instance: '&IDR_Measurement__has__Measurement_Unit;'
customTagName: unit
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Measurement;'
index: 1606
name: 'Measurement'
customTagName: 'measurement'
registerForTemplate: yes
attributes:
- instance: '&IDA_Value;'
customTagName: value
relationships:
- instance: '&IDR_Measurement__has__Measurement_Unit;'
customTagName: unit
- relationship: '&IDR_Measurement__has__Measurement_Unit;'
index: 24616
sourceClassId: '&IDC_Measurement;'
type: 'has'
destinationClassId: '&IDC_MeasurementUnit;'
siblingRelationshipId: '&IDR_Measurement_Unit__for__Measurement;'
singular: no
- relationship: '&IDR_Measurement_Unit__for__Measurement;'
index: 24617
sourceClassId: '&IDC_MeasurementUnit;'
type: 'for'
destinationClassId: '&IDC_Measurement;'
siblingRelationshipId: '&IDR_Measurement__has__Measurement_Unit;'
singular: no

View File

@ -1,46 +1,56 @@
- class: '&IDC_MeasurementUnit;'
name: 'Measurement Unit'
# zq-yaml: this attribute on the instance should be interpreted as an alias for that global identifier
# so if we write ... { width: { value: 4, unit: em } } it should refer to {D55B...}
instanceReferenceAliasTagName: 'symbol'
- library: '&IDL_MochaBaseSystem;'
instances:
- instance: '&IDI_MeasurementUnit_Centimeter;'
name: 'Centimeter'
symbol: 'cm'
description: 'Measurement is in centimeters.'
- instance: '&IDI_MeasurementUnit_Em;'
name: 'Em'
symbol: 'em'
description: "Measurement is relative to the height of the parent element's font."
- instance: '&IDI_MeasurementUnit_Ex;'
name: 'Ex'
symbol: 'ex'
description: "Measurement is relative to the height of the lowercase letter x of the parent element's font."
- instance: '&IDI_MeasurementUnit_Inch;'
name: 'Inch'
symbol: 'in'
description: "Measurement is in inches."
- instance: "&IDI_MeasurementUnit_Millimeter;"
name: "Millimeter"
symbol: 'mm'
description: "Measurement is in millimeters."
- instance: "&IDI_MeasurementUnit_Percentage;"
name: "Percentage"
symbol: '%'
description: "Measurement is a percentage relative to the parent element."
- instance: "&IDI_MeasurementUnit_Pica;"
name: "Pica"
symbol: 'pc'
description: "Measurement is in picas. A pica represents 12 points."
- instance: "&IDI_MeasurementUnit_Pixel;"
name: "Pixel"
symbol: "px"
description: "Measurement is in pixels."
- instance: "&IDI_MeasurementUnit_Point;"
name: "Point"
symbol: "pt"
description: "Measurement is in points. A point represents 1/72 of an inch."
- instance: "&IDI_MeasurementUnit_Twip;"
name: "Twip"
symbol: null
description: "Measurement is in twips. A twip is 1/20th of a point. This is not natively supported by CSS."
- class: '&IDC_MeasurementUnit;'
name: 'Measurement Unit'
index: 1607
# zq-yaml: this attribute on the instance should be interpreted as an alias for that global identifier
# so if we write ... { width: { value: 4, unit: em } } it should refer to {D55B...}
instanceReferenceAliasTagName: 'symbol'
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Comment;'
customTagName: 'description'
- instance: '&IDA_CSSValue;'
customTagName: 'symbol'
instances:
- instance: '&IDI_MeasurementUnit_Centimeter;'
name: 'Centimeter'
symbol: 'cm'
description: 'Measurement is in centimeters.'
- instance: '&IDI_MeasurementUnit_Em;'
name: 'Em'
symbol: 'em'
description: "Measurement is relative to the height of the parent element's font."
- instance: '&IDI_MeasurementUnit_Ex;'
name: 'Ex'
symbol: 'ex'
description: "Measurement is relative to the height of the lowercase letter x of the parent element's font."
- instance: '&IDI_MeasurementUnit_Inch;'
name: 'Inch'
symbol: 'in'
description: "Measurement is in inches."
- instance: "&IDI_MeasurementUnit_Millimeter;"
name: "Millimeter"
symbol: 'mm'
description: "Measurement is in millimeters."
- instance: "&IDI_MeasurementUnit_Percentage;"
name: "Percentage"
symbol: '%'
description: "Measurement is a percentage relative to the parent element."
- instance: "&IDI_MeasurementUnit_Pica;"
name: "Pica"
symbol: 'pc'
description: "Measurement is in picas. A pica represents 12 points."
- instance: "&IDI_MeasurementUnit_Pixel;"
name: "Pixel"
symbol: "px"
description: "Measurement is in pixels."
- instance: "&IDI_MeasurementUnit_Point;"
name: "Point"
symbol: "pt"
description: "Measurement is in points. A point represents 1/72 of an inch."
- instance: "&IDI_MeasurementUnit_Twip;"
name: "Twip"
symbol: null
description: "Measurement is in twips. A twip is 1/20th of a point. This is not natively supported by CSS."

View File

@ -1,12 +1,14 @@
- class: '&IDC_File;'
customTagName: 'file'
index: 1614
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'data'
- instance: '&IDA_ContentType;'
customTagName: 'contentType'
- instance: '&IDA_Encoding;'
customTagName: 'contentEncoding'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_File;'
customTagName: 'file'
index: 1614
attributes:
- instance: '&IDA_Name;'
customTagName: 'name'
- instance: '&IDA_Value;'
customTagName: 'data'
- instance: '&IDA_ContentType;'
customTagName: 'contentType'
- instance: '&IDA_Encoding;'
customTagName: 'contentEncoding'

View File

@ -0,0 +1,7 @@
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Alignment;'
instances:
- instance: '&IDI_Alignment_Near;'
- instance: '&IDI_Alignment_Center;'
- instance: '&IDI_Alignment_Far;'

View File

@ -1,7 +1,9 @@
- class: '&IDC_Task;'
name: 'Task'
index: 2993
abstract: yes
relationships:
- instance: '&IDR_Task__related_action_for__Instance;'
customTagName: relatedActionForInstanceId
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_Task;'
name: 'Task'
index: 2993
abstract: yes
relationships:
- instance: '&IDR_Task__related_action_for__Instance;'
customTagName: relatedActionForInstanceId

View File

@ -1,16 +1,20 @@
- class: '&IDC_HardcodedTask;'
name: 'Hardcoded Task'
index: 2994
inherits: '&IDC_Task;'
customTagName: 'hardcodedTask'
attributes:
- instance: '&IDA_ClassName;'
customTagName: 'className'
- hardcodedTask: '&IDI_Task_ViewClass;'
name: 'View Class'
className: 'Mocha\\UI\\Tasks\\ViewClass'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_HardcodedTask;'
name: 'Hardcoded Task'
index: 2994
inherits: '&IDC_Task;'
customTagName: 'hardcodedTask'
attributes:
- instance: '&IDA_Name;' #!FIXME: inherit from class 'inherits' attribute
customTagName: 'name'
- instance: '&IDA_ClassName;'
customTagName: 'className'
- hardcodedTask: '&IDI_Task_ViewClass;'
name: 'View Class'
className: 'Mocha\\UI\\Tasks\\ViewClass'
- hardcodedTask: '&IDI_Task_ViewElementContent;'
name: 'View Element Content'
className: 'Mocha\\UI\\Tasks\\ViewElementContent'
- hardcodedTask: '&IDI_Task_ViewElementContent;'
name: 'View Element Content'
className: 'Mocha\\UI\\Tasks\\ViewElementContent'

View File

@ -1,20 +1,22 @@
- class: '&IDC_SequenceTask;'
index: 2997
name: Sequence Task
customTagName: sequenceTask
superclasses:
- '&IDC_Task;'
attributes:
- instance: '&IDA_Schedulable'
customTagName: schedulable
- instance: '&IDA_LongRunning;'
customTagName: longRunning
- instance: '&IDA_SuppressRIHints;'
customTagName: suppressRIHints
- instance: '&IDA_ShowSpreadsheetButtonOnSelection;'
customTagName: showSpreadsheetButtonOnSelection
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_SequenceTask;'
index: 2997
name: Sequence Task
customTagName: sequenceTask
superclasses:
- '&IDC_Task;'
attributes:
- instance: '&IDA_Schedulable'
customTagName: schedulable
- instance: '&IDA_LongRunning;'
customTagName: longRunning
- instance: '&IDA_SuppressRIHints;'
customTagName: suppressRIHints
- instance: '&IDA_ShowSpreadsheetButtonOnSelection;'
customTagName: showSpreadsheetButtonOnSelection
relationships:
- instance: '&IDR_Task__has_initiating__Element;'
customTagName: initiatingElementId
relationships:
- instance: '&IDR_Task__has_initiating__Element;'
customTagName: initiatingElementId

View File

@ -0,0 +1,20 @@
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_RedirectTask;'
index: 3001
name: Redirect Task
customTagName: redirectTask
superclasses:
- '&IDC_Task;'
attributes:
- instance: '&IDA_Name;'
customTagName: name
- instance: '&IDA_OpenInNewWindow'
customTagName: openInNewWindow
- instance: '&IDA_TargetURL'
customTagName: targetUrl
relationships:
- instance: '&IDR_Task__has__Task_Category;'
customTagName: taskCategory

View File

@ -1,25 +1,27 @@
- class: '&IDC_ButtonLayout;'
index: 3009
name: Button Layout
customTagName: buttonLayout
superclasses:
- instance: '&IDC_Layout;'
relationships:
- instance: '&IDR_Button_Layout__executes_task_from__Instance_Set;'
customTagName: 'executesTask'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ButtonLayout;'
index: 3009
name: Button Layout
customTagName: buttonLayout
superclasses:
- instance: '&IDC_Layout;'
relationships:
- instance: '&IDR_Button_Layout__executes_task_from__Instance_Set;'
customTagName: 'executesTask'
- relationship: '&IDR_Button_Layout__executes_task_from__Instance_Set;'
index: 9232
sourceClassId: '&IDC_ButtonLayout;'
type: 'executes task from'
destinationClassId: '&IDC_InstanceSet;'
siblingRelationshipId: '&IDR_Instance_Set__has_task_executed_by__Button_Layout;'
singular: yes
- relationship: '&IDR_Button_Layout__executes_task_from__Instance_Set;'
index: 9232
sourceClassId: '&IDC_ButtonLayout;'
type: 'executes task from'
destinationClassId: '&IDC_InstanceSet;'
siblingRelationshipId: '&IDR_Instance_Set__has_task_executed_by__Button_Layout;'
singular: yes
- relationship: '&IDR_Instance_Set__has_task_executed_by__Button_Layout;'
index: 9233
sourceClassId: '&IDC_InstanceSet;'
type: 'has task executed by'
destinationClassId: '&IDC_ButtonLayout;'
siblingRelationshipId: '&IDR_Button_Layout__executes_task_from__Instance_Set;'
singular: no
- relationship: '&IDR_Instance_Set__has_task_executed_by__Button_Layout;'
index: 9233
sourceClassId: '&IDC_InstanceSet;'
type: 'has task executed by'
destinationClassId: '&IDC_ButtonLayout;'
siblingRelationshipId: '&IDR_Button_Layout__executes_task_from__Instance_Set;'
singular: no

View File

@ -1,56 +1,58 @@
- class: '&IDC_UserPreferences;'
index: 4307
customTagName: userPreferences
relationships:
- instance: '&IDR_User_Preferences__has_favorite__Instance;'
customTagName: 'favoriteInstances'
- instance: '&IDR_User_Preferences__has_recent__Search;'
customTagName: 'recentSearches'
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_UserPreferences;'
index: 4307
customTagName: userPreferences
relationships:
- instance: '&IDR_User_Preferences__has_favorite__Instance;'
customTagName: 'favoriteInstances'
- instance: '&IDR_User_Preferences__has_recent__Search;'
customTagName: 'recentSearches'
- relationship: '&IDR_System_Account__has__User_Preferences;'
index: 12211
sourceClassId: '&IDC_User;'
type: 'has'
destinationClassId: '&IDC_UserPreferences;'
siblingRelationshipId: '&IDR_User_Preferences__for__System_Account;'
singular: yes
- relationship: '&IDR_System_Account__has__User_Preferences;'
index: 12211
sourceClassId: '&IDC_User;'
type: 'has'
destinationClassId: '&IDC_UserPreferences;'
siblingRelationshipId: '&IDR_User_Preferences__for__System_Account;'
singular: yes
- relationship: '&IDR_User_Preferences__for__System_Account;'
index: 12212
sourceClassId: '&IDC_UserPreferences;'
type: 'for'
destinationClassId: '&IDC_User;'
siblingRelationshipId: '&IDR_System_Account__has__User_Preferences;'
singular: yes
- relationship: '&IDR_User_Preferences__for__System_Account;'
index: 12212
sourceClassId: '&IDC_UserPreferences;'
type: 'for'
destinationClassId: '&IDC_User;'
siblingRelationshipId: '&IDR_System_Account__has__User_Preferences;'
singular: yes
- relationship: '&IDR_User_Preferences__has_favorite__Instance;'
index: 12213
sourceClassId: '&IDC_UserPreferences;'
type: 'has'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__favorite_for__User_Preferences;'
singular: no
- relationship: '&IDR_User_Preferences__has_favorite__Instance;'
index: 12213
sourceClassId: '&IDC_UserPreferences;'
type: 'has'
destinationClassId: '&IDC_Instance;'
siblingRelationshipId: '&IDR_Instance__favorite_for__User_Preferences;'
singular: no
- relationship: '&IDR_Instance__favorite_for__User_Preferences;'
index: 12214
sourceClassId: '&IDC_Instance;'
type: 'for'
destinationClassId: '&IDC_UserPreferences;'
siblingRelationshipId: '&IDR_User_Preferences__has_favorite__Instance;'
singular: no
- relationship: '&IDR_Instance__favorite_for__User_Preferences;'
index: 12214
sourceClassId: '&IDC_Instance;'
type: 'for'
destinationClassId: '&IDC_UserPreferences;'
siblingRelationshipId: '&IDR_User_Preferences__has_favorite__Instance;'
singular: no
- relationship: '&IDR_User_Preferences__has_recent__Search;'
index: 12215
sourceClassId: '&IDC_UserPreferences;'
type: 'has recent'
destinationClassId: '&IDC_Search;'
siblingRelationshipId: '&IDR_Search__recent_for__User_Preferences;'
singular: no
- relationship: '&IDR_User_Preferences__has_recent__Search;'
index: 12215
sourceClassId: '&IDC_UserPreferences;'
type: 'has recent'
destinationClassId: '&IDC_Search;'
siblingRelationshipId: '&IDR_Search__recent_for__User_Preferences;'
singular: no
- relationship: '&IDR_Search__recent_for__User_Preferences;'
index: 12216
sourceClassId: '&IDC_Search;'
type: 'recent for'
destinationClassId: '&IDC_UserPreferences;'
siblingRelationshipId: '&IDR_User_Preferences__has_recent__Search;'
singular: no
- relationship: '&IDR_Search__recent_for__User_Preferences;'
index: 12216
sourceClassId: '&IDC_Search;'
type: 'recent for'
destinationClassId: '&IDC_UserPreferences;'
siblingRelationshipId: '&IDR_User_Preferences__has_recent__Search;'
singular: no

View File

@ -1,32 +1,34 @@
- class: '&IDC_ConditionalSelectAttributeMethod;'
index: 13038
name: SAC - Conditional Select Attribute Method
customTagName: conditionalSelectAttributeMethod
superclasses:
- '&IDC_Method;'
relationships:
- instance: '&IDR_Conditional_Method__has__Conditional_Method_Case;'
customTagName: cases
# let's try this, define a custom tag name local to this particular context
# otherwise, we would have to have e.g. 'conditionalSelectAttributeCase' and 'conditionalSelectInstanceSetCase' because they're different..
instanceCustomTagName: case
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_ConditionalSelectAttributeMethod;'
index: 13038
name: SAC - Conditional Select Attribute Method
customTagName: conditionalSelectAttributeMethod
superclasses:
- '&IDC_Method;'
relationships:
- instance: '&IDR_Conditional_Method__has__Conditional_Method_Case;'
customTagName: cases
# let's try this, define a custom tag name local to this particular context
# otherwise, we would have to have e.g. 'conditionalSelectAttributeCase' and 'conditionalSelectInstanceSetCase' because they're different..
instanceCustomTagName: case
- conditionalSelectAttributeMethod: '{c047715b-2547-47be-9437-9af40f1d6fdf}'
forClassId: '&IDC_ConditionalSelectAttributeMethod'
verb: 'get'
name: 'example item from choices depending on arbitrary magic'
cases:
- case: '{ec04570c-c5ac-4146-ba4a-a9a496465067}'
#conditionGroup: '{23705abe-d562-4335-b78b-1ba06d886866}'
trueConditions: '&IDMB_Common_Boolean__get__Arbitrary_Magic_Toggle;'
falseConditions:
useAnyCondition: no
# default implementation: `Common Numeric@get 42 (BA)*P*S[ramb]`
executableReturningAttribute: '&IDMB_Common_Numeric__get__42;'
- case: '{3e149124-cc01-4427-ae19-167a23e8b647}' # default case
#conditionGroup: '{b5585cf6-0483-437f-9dc9-fb804f5b7db2}'
trueConditions:
falseConditions:
useAnyCondition: no
executableReturningAttribute: '&IDA_DateAndTime;'
- conditionalSelectAttributeMethod: '{c047715b-2547-47be-9437-9af40f1d6fdf}'
forClassId: '&IDC_ConditionalSelectAttributeMethod'
verb: 'get'
name: 'example item from choices depending on arbitrary magic'
cases:
- case: '{ec04570c-c5ac-4146-ba4a-a9a496465067}'
#conditionGroup: '{23705abe-d562-4335-b78b-1ba06d886866}'
trueConditions: '&IDMB_Common_Boolean__get__Arbitrary_Magic_Toggle;'
falseConditions:
useAnyCondition: no
# default implementation: `Common Numeric@get 42 (BA)*P*S[ramb]`
executableReturningAttribute: '&IDMB_Common_Numeric__get__42;'
- case: '{3e149124-cc01-4427-ae19-167a23e8b647}' # default case
#conditionGroup: '{b5585cf6-0483-437f-9dc9-fb804f5b7db2}'
trueConditions:
falseConditions:
useAnyCondition: no
executableReturningAttribute: '&IDA_DateAndTime;'

View File

@ -0,0 +1,21 @@
- library: '&IDL_MochaBaseSystem;'
instances:
- class: '&IDC_TaskCategory;'
index: 3004 # was `Related Menu Item`
name: Task Category
customTagName: taskCategory
attributes:
- instance: '&IDA_Name'
customTagName: name
# ents defined in ../000-EntityDefinitions/016-TaskCategories.yaml
- taskCategory: '&IDI_TaskCategory_Class;'
name: 'Class'
- taskCategory: '&IDI_TaskCategory_Report;'
name: 'Report'
- taskCategory: '&IDI_TaskCategory_Instance;'
name: 'Instance'
- taskCategory: '&IDI_TaskCategory_MethodBinding;'
name: 'Method Binding'
- taskCategory: '&IDI_TaskCategory_ReturnedWorkData;'
name: 'Returned Work Data'

View File

@ -1,2 +1,4 @@
- evaluateBooleanExpressionMethod: '&IDM_Common_Boolean__is__Date_And_Time_parm_less_than_or_equal_to_Nth_of_this_same_month;'
returnsAttributeId: '&IDA_Value;'
- library: '&IDL_MochaBaseSystem;'
instances:
- evaluateBooleanExpressionMethod: '&IDM_Common_Boolean__is__Date_And_Time_parm_less_than_or_equal_to_Nth_of_this_same_month;'
returnsAttributeId: '&IDA_Value;'

View File

@ -1,42 +1,44 @@
# Date And Time Adjustment@adjust Date And Time parm to 'Nth of month'(CD)*P*S
- calculateDateMethod: '&IDM_Date_And_Time_Adjustment__adjust__Date_And_Time_parm_to_Nth_of_month;'
index: 848
forClassId: '&IDC_DateAndTimeAdjustment;'
verb: 'adjust'
name: 'Date And Time parm to "Nth of month"'
module: '&IDI_Module_MochaBaseSystem_OOP_OOPMethodExamples;'
methodAccess: '&IDI_MethodAccess_RootA2;'
static: yes
final: no
parameters:
# Date And Time [DT(ms)]
- instance: '&IDI_WorkData_DateAndTime;'
required: yes
nullable: yes
- library: '&IDL_MochaBaseSystem;'
instances:
# Date And Time Adjustment@adjust Date And Time parm to 'Nth of month'(CD)*P*S
- calculateDateMethod: '&IDM_Date_And_Time_Adjustment__adjust__Date_And_Time_parm_to_Nth_of_month;'
index: 848
forClassId: '&IDC_DateAndTimeAdjustment;'
verb: 'adjust'
name: 'Date And Time parm to "Nth of month"'
module: '&IDI_Module_MochaBaseSystem_OOP_OOPMethodExamples;'
methodAccess: '&IDI_MethodAccess_RootA2;'
static: yes
final: no
parameters:
# Date And Time [DT(ms)]
- instance: '&IDI_WorkData_DateAndTime;'
required: yes
nullable: yes
# Day of the Month [NM]
- instance: '&IDI_WorkData_DayOfTheMonth;'
required: yes
nullable: yes
# Day of the Month [NM]
- instance: '&IDI_WorkData_DayOfTheMonth;'
required: yes
nullable: yes
returnAttributeId: '&IDA_DateAndTime;'
returnAttributeId: '&IDA_DateAndTime;'
# method implementation
initialDateAttributeId: '&IDA_DateAndTime;'
timeZoneRSMBId: null
preIncrement:
# Common Numeric@get 1(BA)*S(public)[ramb]
- amountRAMB: '&IDMB_Common_Numeric__get_1;'
# dateInterval can be one of the following:
# * An instance of `Date Interval` class
# * A Return Instance Set Method Binding [RSMB] returning
# an instance of a `Date Interval` class
# * (empty)
dateInterval: '&IDI_DateInterval_Month;'
subtract: yes
setToStartOfInterval: null
setToEndOfInterval:
dateInterval: 'Month'
postIncrement:
- amountRAMB: '&IDA_DayOfTheMonth;'
dateInterval: '&IDI_DateInterval_Day;'
# method implementation
initialDateAttributeId: '&IDA_DateAndTime;'
timeZoneRSMBId: null
preIncrement:
# Common Numeric@get 1(BA)*S(public)[ramb]
- amountRAMB: '&IDMB_Common_Numeric__get_1;'
# dateInterval can be one of the following:
# * An instance of `Date Interval` class
# * A Return Instance Set Method Binding [RSMB] returning
# an instance of a `Date Interval` class
# * (empty)
dateInterval: '&IDI_DateInterval_Month;'
subtract: yes
setToStartOfInterval: null
setToEndOfInterval:
dateInterval: 'Month'
postIncrement:
- amountRAMB: '&IDA_DayOfTheMonth;'
dateInterval: '&IDI_DateInterval_Day;'

View File

@ -1,28 +1,30 @@
- getReferencedAttributeMethod: '&IDM_Translation__get__Translation_Value;'
description: 'Returns Translation Value Text Attribute for the given Translation and Language parms'
forClassId: '&IDC_Translation;'
verb: 'get'
name: 'Translation Value'
moduleId: '&IDI_Module_MochaBaseSystem;'
methodAccess: '&IDI_MethodAccess_Public;'
static: yes
final: no
parameters:
# Date And Time [DT(ms)]
- instance: '&IDI_WorkSet_Translation;'
required: yes
nullable: no
- instance: '&IDI_WorkSet_Language;'
required: yes
nullable: yes # defaults to User@get preferred Language
comment: ''
tags: []
docs:
- title: GRA method documentation
- iid: null
returnsAttributeId: '&IDA_Value;'
# method implementation
loopOnInstanceSetId: '&IDMB_Translation__get__Translation_Value_Instance_for_Translation_and_Language;'
getAttributeId: '&IDMB_Translation_Value__get__Value;'
accumulationFunctionId: null
- library: '&IDL_MochaBaseSystem;'
instances:
- getReferencedAttributeMethod: '&IDM_Translation__get__Translation_Value;'
description: 'Returns Translation Value Text Attribute for the given Translation and Language parms'
forClassId: '&IDC_Translation;'
verb: 'get'
name: 'Translation Value'
moduleId: '&IDI_Module_MochaBaseSystem;'
methodAccess: '&IDI_MethodAccess_Public;'
static: yes
final: no
parameters:
# Date And Time [DT(ms)]
- instance: '&IDI_WorkSet_Translation;'
required: yes
nullable: no
- instance: '&IDI_WorkSet_Language;'
required: yes
nullable: yes # defaults to User@get preferred Language
comment: ''
tags: []
docs:
- title: GRA method documentation
- iid: null
returnsAttributeId: '&IDA_Value;'
# method implementation
loopOnInstanceSetId: '&IDMB_Translation__get__Translation_Value_Instance_for_Translation_and_Language;'
getAttributeId: '&IDMB_Translation_Value__get__Value;'
accumulationFunctionId: null

View File

@ -1,7 +1,9 @@
- getInstanceSetBySystemRoutineMethod: '&IDM_User__get__User_for_User_Name_parm;'
index: 100
systemInstanceSetRoutine: '&IDI_SystemInstanceSetRoutine_GetUserForUserNameParm;'
- library: '&IDL_MochaBaseSystem;'
instances:
- getInstanceSetBySystemRoutineMethod: '&IDM_User__get__User_for_User_Name_parm;'
index: 100
systemInstanceSetRoutine: '&IDI_SystemInstanceSetRoutine_GetUserForUserNameParm;'
- returnInstanceSetMethodBinding: '&IDMB_User__get__User_for_User_Name_parm;'
index: 100
executesMethod: '&IDM_User__get__User_for_User_Name_parm;'
- returnInstanceSetMethodBinding: '&IDMB_User__get__User_for_User_Name_parm;'
index: 100
executesMethod: '&IDM_User__get__User_for_User_Name_parm;'

View File

@ -1,17 +1,19 @@
---
- element: '&IDE_LoginPage;'
name: login page
label: Log In
# elementContents:
# - elementContent: '&IDE_LoginPageSubedit;'
# displayOptions:
# - instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
# - instance: '&IDI_DisplayOption_Singular;'
elementContents:
- instance: '{079fbdf6-26cc-45bc-9c66-1bcb97638659}'
- library: '&IDL_MochaBaseSystem;'
instances:
- element: '&IDE_LoginPage;'
name: login page
label: Log In
# elementContents:
# - elementContent: '&IDE_LoginPageSubedit;'
# displayOptions:
# - instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
# - instance: '&IDI_DisplayOption_Singular;'
elementContents:
- instance: '{079fbdf6-26cc-45bc-9c66-1bcb97638659}'
- elementContent: '{079fbdf6-26cc-45bc-9c66-1bcb97638659}'
defaultDataType: '&IDE_LoginPageSubedit;'
displayOptions:
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- instance: '&IDI_DisplayOption_Singular;'
- elementContent: '{079fbdf6-26cc-45bc-9c66-1bcb97638659}'
defaultDataType: '&IDE_LoginPageSubedit;'
displayOptions:
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- instance: '&IDI_DisplayOption_Singular;'

View File

@ -1,25 +1,27 @@
- element: '&IDE_ViewElementContent;'
name: view element content
module: '&IDI_Module_MochaBaseSystem;'
elementContents:
- instance: '{4004bfb2-0f81-4e52-a88b-646ba564be3b}'
- library: '&IDL_MochaBaseSystem;'
instances:
- element: '&IDE_ViewElementContent;'
name: view element content
module: '&IDI_Module_MochaBaseSystem;'
elementContents:
- instance: '{4004bfb2-0f81-4e52-a88b-646ba564be3b}'
- elementContent: '{4004bfb2-0f81-4e52-a88b-646ba564be3b}'
defaultDataType: '&IDE_ViewElementContent_Summary;'
order: a
displayOptions:
- instance: '&IDI_DisplayOption_Singular;'
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- elementContent: '{4004bfb2-0f81-4e52-a88b-646ba564be3b}'
defaultDataType: '&IDE_ViewElementContent_Summary;'
order: a
displayOptions:
- instance: '&IDI_DisplayOption_Singular;'
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- element: '&IDE_ViewElementContent_Summary;'
name: view element content summary
module: '&IDI_Module_MochaBaseSystem;'
elementContents:
- instance: '{bce8db21-66e1-4cfb-b398-9f010747c225}'
- element: '&IDE_ViewElementContent_Summary;'
name: view element content summary
module: '&IDI_Module_MochaBaseSystem;'
elementContents:
- instance: '{bce8db21-66e1-4cfb-b398-9f010747c225}'
- elementContent: '{bce8db21-66e1-4cfb-b398-9f010747c225}'
defaultDataType: '&IDR_Element_Content__for__Element;'
label: 'For Element'
order: a
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- elementContent: '{bce8db21-66e1-4cfb-b398-9f010747c225}'
defaultDataType: '&IDR_Element_Content__for__Element;'
label: 'For Element'
order: a
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'

View File

@ -1,81 +1,135 @@
---
- element: '{29694806-1882-4cf9-b1c9-aaeee2d729a5}'
name: Element Tests
index: 113800
processedByPRUMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
elementContents:
- instance: '{91b1a767-08ac-47f0-9f30-620de6374d12}'
- instance: '{628550d8-673d-4156-8983-447ea2ee6d1b}'
- instance: '{8c69fd8c-28fa-4f3c-a283-5d0006c1027d}'
- instance: '{535b1507-68ed-4981-8cd4-e8e843a24916}'
- instance: '{d74123b5-9fde-4c2a-bd28-8cd00ce86734}'
- library: '&IDL_MochaBaseSystem;'
instances:
- element: '{29694806-1882-4cf9-b1c9-aaeee2d729a5}'
name: Element Tests
index: 113800
processedByPRUMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
elementContents:
- instance: '{91b1a767-08ac-47f0-9f30-620de6374d12}'
- instance: '{628550d8-673d-4156-8983-447ea2ee6d1b}'
- instance: '{8c69fd8c-28fa-4f3c-a283-5d0006c1027d}'
- instance: '{535b1507-68ed-4981-8cd4-e8e843a24916}'
- instance: '{d74123b5-9fde-4c2a-bd28-8cd00ce86734}'
- instance: '{d5653b81-a5e2-4f77-92f8-bcbae09f0d71}'
- class: '{cce471d6-5fe7-4202-b678-9fcab20fd864}'
name: 'Element Tests Testing Class 1'
processedByPRUMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
- class: '{cce471d6-5fe7-4202-b678-9fcab20fd864}'
name: 'Element Tests Testing Class 1'
customTagName: 'ettc'
processedByPRUMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
attributes:
- instance: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}' # test with maxlength 20
customTagName: 'twml'
- instance: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}' # req field test
customTagName: 'rqft'
- ettc: '{98e038eb-ad55-4259-a4c5-8e82c221270c}'
twml: 'hi world'
rqft: 'test test'
- processRelatedUpdatesMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
name: 'PRU for Element Tests Class 1'
- processRelatedUpdatesMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
name: 'PRU for Element Tests Class 1'
processesForClass: '{cce471d6-5fe7-4202-b678-9fcab20fd864}'
usesExecutableForPUMB:
- instance: '{d6aea527-d0a8-4070-9332-9101ee14c656}'
- buttonLayout: '&IDI_ButtonLayout_DefaultButtonGroup;'
executesTask: '&IDI_SequenceTask_TestMethodBinding;'
- assignAttributeMethod: '{d6aea527-d0a8-4070-9332-9101ee14c656}'
usesExecutableReturningAttribute: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}' # EC
assignsAttribute: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}' # req field test
- elementContent: '{628550d8-673d-4156-8983-447ea2ee6d1b}'
layout: '&IDI_ButtonLayout_DefaultButtonGroup;'
label: 'Test Method Binding'
value:
- taskId: '{d44b1278-4e29-44f4-b1ca-2e6bde40377e}'
- buttonLayout: '&IDI_ButtonLayout_DefaultButtonGroup;'
executesTask: '&IDI_SequenceTask_TestMethodBinding;'
- textAttribute: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}'
name: 'Test_With_MaxLength_20'
maximumLength: 20
- elementContent: '{628550d8-673d-4156-8983-447ea2ee6d1b}'
layout: '&IDI_ButtonLayout_DefaultButtonGroup;'
label: 'Test Method Binding'
value:
- taskId: '{d44b1278-4e29-44f4-b1ca-2e6bde40377e}'
- textAttribute: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}'
name: 'Test_for_Required_Field'
- textAttribute: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}'
name: 'Test_With_MaxLength_20'
maximumLength: 20
- textAttribute: '{dd33bb2a-1e10-4090-a846-89a225103c07}'
name: 'Not Enterable Text Attribute Test'
value: 'This element content is `Not Enterable`, and will always have its default value'
- textAttribute: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}'
name: 'Test_for_Required_Field'
- elementContent: '{91b1a767-08ac-47f0-9f30-620de6374d12}'
order: 'a'
label: 'Element Content Test Class'
defaultDataType: '&IDI_ElementContentTestClass_1;'
displayOptions:
- instance: '&IDI_DisplayOption_DoNotShow;'
- textAttribute: '{dd33bb2a-1e10-4090-a846-89a225103c07}'
name: 'Not Enterable Text Attribute Test'
value: 'This element content is `Not Enterable`, and will always have its default value'
- elementContent: '{535b1507-68ed-4981-8cd4-e8e843a24916}'
order: 'b'
label: 'Label Override for Not Enterable'
defaultDataType: '{dd33bb2a-1e10-4090-a846-89a225103c07}'
builtFromBEMProcess: '&IDBEM_1;'
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- elementContent: '{91b1a767-08ac-47f0-9f30-620de6374d12}'
order: 'a'
label: 'Element Content Test Class'
defaultDataType: '{cce471d6-5fe7-4202-b678-9fcab20fd864}'
value: '{98e038eb-ad55-4259-a4c5-8e82c221270c}'
#displayOptions:
#- instance: '&IDI_DisplayOption_DoNotShow;'
- derivedECParameter: '{08563151-04c7-40d1-adff-a3dc2e12be2b}'
assignsToParm: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}'
# contextType: null
# specificWorkData: null
# onMultipleSelection: null
- elementContent: '{535b1507-68ed-4981-8cd4-e8e843a24916}'
order: 'b'
label: 'Label Override for Not Enterable'
defaultDataType: '{dd33bb2a-1e10-4090-a846-89a225103c07}'
builtFromBEMProcess: '&IDBEM_1;'
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- elementContent: '{8c69fd8c-28fa-4f3c-a283-5d0006c1027d}'
order: 'c'
label: 'Test with MaxLength 20'
defaultDataType: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}'
builtFromBEMProcess: '&IDBEM_1;'
parameters:
- instance: '{08563151-04c7-40d1-adff-a3dc2e12be2b}'
- elementContent: '{8c69fd8c-28fa-4f3c-a283-5d0006c1027d}'
order: 'c'
label: 'Test with MaxLength 20'
defaultDataType: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}'
builtFromBEMProcess: '&IDBEM_1;'
parameters:
- derivedECParameter: '{08563151-04c7-40d1-adff-a3dc2e12be2b}'
assignsToParm: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}'
# contextType: null
# specificWorkData: null
# onMultipleSelection: null
# Test for Required Field
- derivedECParameter: '{a8c306ed-9eb6-49c8-a6dc-357617e493d5}'
assignsToParm: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}'
- elementContent: '{d74123b5-9fde-4c2a-bd28-8cd00ce86734}'
order: 'd'
label: 'This field is required'
defaultDataType: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}'
builtFromBEMProcess: '&IDBEM_1;'
displayOptions:
- instance: '&IDI_DisplayOption_Required;'
parameters:
# Test for Required Field
- derivedECParameter: '{a8c306ed-9eb6-49c8-a6dc-357617e493d5}'
assignsToParm: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}'
- elementContent: '{d74123b5-9fde-4c2a-bd28-8cd00ce86734}'
order: 'd'
label: 'This field is required'
defaultDataType: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}'
builtFromBEMProcess: '&IDBEM_1;'
displayOptions:
- instance: '&IDI_DisplayOption_Required;'
parameters:
- instance: '{a8c306ed-9eb6-49c8-a6dc-357617e493d5}'
- element: '{0f95606c-3653-4e40-af4e-34c501b669af}'
name: Test Horizozntal EC with Grid Layout
index: 113803
#processedByPRUMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
elementContents:
- instance: '{482845f5-c9cc-4c7b-ad5b-5aecbce3b086}'
- instance: '{c38d8498-005e-4046-8150-e3def3c091ca}'
- instance: '{a3032fd2-e149-4b00-b702-17862254adc2}'
- elementContent: '{482845f5-c9cc-4c7b-ad5b-5aecbce3b086}'
label: 'Not Enterable Again'
defaultDataType: '{dd33bb2a-1e10-4090-a846-89a225103c07}'
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- elementContent: '{c38d8498-005e-4046-8150-e3def3c091ca}'
label: 'Test with MaxLength 20 Again'
defaultDataType: '{1a907d6e-b3fd-4f8e-a170-550aeb2faea5}'
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- elementContent: '{a3032fd2-e149-4b00-b702-17862254adc2}'
label: 'Required Field Again'
defaultDataType: '{d53d7283-92a2-4a62-b8f2-cf0a0b975634}'
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- elementContent: '{d5653b81-a5e2-4f77-92f8-bcbae09f0d71}'
order: 'e'
label: 'Test Horizontal EC with Grid Layout'
defaultDataType: '{0f95606c-3653-4e40-af4e-34c501b669af}'
# builtFromBEMProcess: '&IDBEM_1;'
# displayOptions:
# - instance: '&IDI_DisplayOption_Required;'
parameters:
- instance: '{a8c306ed-9eb6-49c8-a6dc-357617e493d5}'

View File

@ -1,38 +1,40 @@
---
- element: '&IDE_HomePage;'
name: Home Page
label: Home Page
index: 113859
elementContents:
- instance: '{16c0571e-b025-4a8f-afdd-4443d0a06831}'
- instance: '{cc15510f-6230-4e29-b7b8-b887bc5f3ff0}'
- library: '&IDL_MochaBaseSystem;'
instances:
- element: '&IDE_HomePage;'
name: Home Page
label: Home Page
index: 113859
elementContents:
- instance: '{16c0571e-b025-4a8f-afdd-4443d0a06831}'
- instance: '{cc15510f-6230-4e29-b7b8-b887bc5f3ff0}'
- element: '{5e66e253-e19b-4ae5-8c5c-6775f5881e2a}'
name: Home Page Welcome
index: 113860
#processedByPRUMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
elementContents:
- instance: '{572e3060-025b-4dff-a352-23dd8bfcfa0a}'
- element: '{5e66e253-e19b-4ae5-8c5c-6775f5881e2a}'
name: Home Page Welcome
index: 113860
#processedByPRUMethod: '{2aa20384-4132-49d3-a661-ae7d9a2e2feb}'
elementContents:
- instance: '{572e3060-025b-4dff-a352-23dd8bfcfa0a}'
- elementContent: '{572e3060-025b-4dff-a352-23dd8bfcfa0a}'
defaultDataType: '{e3549308-76b9-4602-98fc-012cccf37f74}'
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- instance: '&IDI_DisplayOption_DoNotShowLabel;'
- instance: '&IDI_DisplayOption_WideText;'
- elementContent: '{572e3060-025b-4dff-a352-23dd8bfcfa0a}'
defaultDataType: '{e3549308-76b9-4602-98fc-012cccf37f74}'
displayOptions:
- instance: '&IDI_DisplayOption_NotEnterable;'
- instance: '&IDI_DisplayOption_DoNotShowLabel;'
- instance: '&IDI_DisplayOption_WideText;'
- textAttribute: '{e3549308-76b9-4602-98fc-012cccf37f74}'
name: 'Home Page Welcome Text'
value: 'Welcome to Mocha'
- textAttribute: '{e3549308-76b9-4602-98fc-012cccf37f74}'
name: 'Home Page Welcome Text'
value: 'Welcome to Mocha'
- elementContent: '{16c0571e-b025-4a8f-afdd-4443d0a06831}'
defaultDataType: '{5e66e253-e19b-4ae5-8c5c-6775f5881e2a}'
displayOptions:
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- instance: '&IDI_DisplayOption_Singular;'
- elementContent: '{16c0571e-b025-4a8f-afdd-4443d0a06831}'
defaultDataType: '{5e66e253-e19b-4ae5-8c5c-6775f5881e2a}'
displayOptions:
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- instance: '&IDI_DisplayOption_Singular;'
- elementContent: '{cc15510f-6230-4e29-b7b8-b887bc5f3ff0}'
defaultDataType: '{29694806-1882-4cf9-b1c9-aaeee2d729a5}'
displayOptions:
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- instance: '&IDI_DisplayOption_Singular;'
- elementContent: '{cc15510f-6230-4e29-b7b8-b887bc5f3ff0}'
defaultDataType: '{29694806-1882-4cf9-b1c9-aaeee2d729a5}'
displayOptions:
- instance: '&IDI_DisplayOption_ShowSubelementsVertically;'
- instance: '&IDI_DisplayOption_Singular;'

View File

@ -1,8 +1,10 @@
- workSet: '&IDI_WorkSet_ClassForEditClassTask;'
name: 'Class for Edit Class Task'
validClasses:
- instance: '&IDC_Class;'
- library: '&IDL_MochaBaseSystem;'
instances:
- workSet: '&IDI_WorkSet_ClassForEditClassTask;'
name: 'Class for Edit Class Task'
validClasses:
- instance: '&IDC_Class;'
- sequenceTask: '{9dbdb202-e9f8-49ca-bbc2-0b63df651246}'
name: 'Edit Class'
relatedTaskParameter: '&IDI_WorkSet_ClassForEditClassTask;'
- sequenceTask: '{9dbdb202-e9f8-49ca-bbc2-0b63df651246}'
name: 'Edit Class'
relatedTaskParameter: '&IDI_WorkSet_ClassForEditClassTask;'

View File

@ -0,0 +1,7 @@
- library: '&IDL_MochaBaseSystem;'
instances:
- redirectTask: '{4f8a0e8e-e139-4cc6-b8cf-a32e67bd192d}'
name: 'ViewInCodeEditor'
openInNewWindow: yes
taskCategory: '&IDI_TaskCategory_Instance;'
targetUrl: 'https://localhost:47071/?hi'

View File

@ -1,20 +1,22 @@
- sequenceTask: '&IDI_SequenceTask_TestMethodBinding;'
index: 312
name: 'Test Method Binding'
- library: '&IDL_MochaBaseSystem;'
instances:
- sequenceTask: '&IDI_SequenceTask_TestMethodBinding;'
index: 312
name: 'Test Method Binding'
initialElement: '{2696449c-a517-48cc-9348-03abca291cf0}'
- element: '{2696449c-a517-48cc-9348-03abca291cf0}'
elementContents:
- instance: '{fda2b13e-4495-4b35-bde2-40d2ab57b977}'
- elementContent: '{fda2b13e-4495-4b35-bde2-40d2ab57b977}'
label: 'Test Parms'
# TODO: implement get element contents from method (maybe Get Element from Parameters Method?)
initialElement: '{2696449c-a517-48cc-9348-03abca291cf0}'
- element: '{2696449c-a517-48cc-9348-03abca291cf0}'
elementContents:
- instance: '{fda2b13e-4495-4b35-bde2-40d2ab57b977}'
- elementContent: '{fda2b13e-4495-4b35-bde2-40d2ab57b977}'
label: 'Test Parms'
# TODO: implement get element contents from method (maybe Get Element from Parameters Method?)
# Test Parms gets its contents from `Method Binding.has Parameter Assignment`
# Test Parms gets its contents from `Method Binding.has Parameter Assignment`
# Test Context has:
# Effective Moment [DT]
# Effective Local Date Time [DT]
# Effective Date Time Zone [DT]+TZ
# Test Context has:
# Effective Moment [DT]
# Effective Local Date Time [DT]
# Effective Date Time Zone [DT]+TZ

View File

@ -1,21 +1,23 @@
# - task: '&IDI_Task_ViewClass;'
# name: View Class
# module: '&IDI_Module_MochaBaseSystem;'
# schedulable: no
# longRunning: no
# suppressRIHints: no
# stepName: View Class
# showSpreadsheetButtonOnSelection: no
# relatedAction:
# object: '&IDC_Class;'
# action: 'View'
# menuPath: 'Class > View'
# initiatingElement: '&IDI_Element_ViewClass;'
# taskDirectiveRAMB: '&IDMB_Element__get_Help_Text_for_View_Element;' # Element@get Help Text for View Element(GRA)*P*S(public)[ramb]
# enableSaveParameters: no
# enableReportGroups: no
# handledByControlTransaction: '&IDM_Element__View_Start;' # Element@ View Start(CT)*S
# respondsWithElement: '&IDE_ViewElementEdit;'
# updating: no
# targetAudience: 'ESS'
# businessProcessType: 'VIEWELEMENT'
# - library: '&IDL_MochaBaseSystem;'
# instances:
# - task: '&IDI_Task_ViewClass;'
# name: View Class
# module: '&IDI_Module_MochaBaseSystem;'
# schedulable: no
# longRunning: no
# suppressRIHints: no
# stepName: View Class
# showSpreadsheetButtonOnSelection: no
# relatedAction:
# object: '&IDC_Class;'
# action: 'View'
# menuPath: 'Class > View'
# initiatingElement: '&IDI_Element_ViewClass;'
# taskDirectiveRAMB: '&IDMB_Element__get_Help_Text_for_View_Element;' # Element@get Help Text for View Element(GRA)*P*S(public)[ramb]
# enableSaveParameters: no
# enableReportGroups: no
# handledByControlTransaction: '&IDM_Element__View_Start;' # Element@ View Start(CT)*S
# respondsWithElement: '&IDE_ViewElementEdit;'
# updating: no
# targetAudience: 'ESS'
# businessProcessType: 'VIEWELEMENT'

View File

@ -1,21 +1,23 @@
- task: '&IDI_Task_ViewElement;'
name: View Element
module: '&IDI_Module_MochaBaseSystem;'
schedulable: no
longRunning: no
suppressRIHints: no
stepName: View Element
showSpreadsheetButtonOnSelection: no
relatedAction:
object: '&IDC_Element;'
action: 'View'
menuPath: 'Element > View'
initiatingElement: '&IDI_Element_ViewElement;'
taskDirectiveRAMB: '&IDMB_Element__get_Help_Text_for_View_Element;' # Element@get Help Text for View Element(GRA)*P*S(public)[ramb]
enableSaveParameters: no
enableReportGroups: no
handledByControlTransaction: '&IDM_Element__View_Start;' # Element@ View Start(CT)*S
respondsWithElement: '&IDE_ViewElementEdit;'
updating: no
targetAudience: 'ESS'
businessProcessType: 'VIEWELEMENT'
- library: '&IDL_MochaBaseSystem;'
instances:
- task: '&IDI_Task_ViewElement;'
name: View Element
module: '&IDI_Module_MochaBaseSystem;'
schedulable: no
longRunning: no
suppressRIHints: no
stepName: View Element
showSpreadsheetButtonOnSelection: no
relatedAction:
object: '&IDC_Element;'
action: 'View'
menuPath: 'Element > View'
initiatingElement: '&IDI_Element_ViewElement;'
taskDirectiveRAMB: '&IDMB_Element__get_Help_Text_for_View_Element;' # Element@get Help Text for View Element(GRA)*P*S(public)[ramb]
enableSaveParameters: no
enableReportGroups: no
handledByControlTransaction: '&IDM_Element__View_Start;' # Element@ View Start(CT)*S
respondsWithElement: '&IDE_ViewElementEdit;'
updating: no
targetAudience: 'ESS'
businessProcessType: 'VIEWELEMENT'

View File

@ -1,29 +1,37 @@
- user: '{B066A54B-B160-4510-A805-436D3F90C2E6}'
username: zq-environments
- library: '&IDL_MochaBaseSystem;'
instances:
- user: '{B066A54B-B160-4510-A805-436D3F90C2E6}'
username: zq-environments
- user: '{098DDA82-CD04-4B53-8C75-89D420EA6902}'
username: zq-developer
passwordHash: f4f166c4d578cb5ca942e07851d7c09de07d417463f2d8e5165a779f768d14b370cd1e82826a94b617b6c6359253e8c12ea8285cba1e6e69e2e13f2bdc0425d0
passwordSalt: 7e893ba949b041bab73c6f4f0bcb9413
hasUserPreferences: '{d7e9b412-c916-42e7-b788-3bbfac92822c}'
- user: '{098DDA82-CD04-4B53-8C75-89D420EA6902}'
username: zq-developer
passwordHash: f4f166c4d578cb5ca942e07851d7c09de07d417463f2d8e5165a779f768d14b370cd1e82826a94b617b6c6359253e8c12ea8285cba1e6e69e2e13f2bdc0425d0
passwordSalt: 7e893ba949b041bab73c6f4f0bcb9413
hasUserPreferences: '{d7e9b412-c916-42e7-b788-3bbfac92822c}'
- userPreferences: '{d7e9b412-c916-42e7-b788-3bbfac92822c}'
favoriteInstances:
- instance: '{098DDA82-CD04-4B53-8C75-89D420EA6902}'
- userPreferences: '{d7e9b412-c916-42e7-b788-3bbfac92822c}'
favoriteInstances:
- instance: '{098DDA82-CD04-4B53-8C75-89D420EA6902}'
- user: '{69e291d8-381b-4ad8-9013-f3b0a0c693fe}'
username: superuser
passwordHash: f4f166c4d578cb5ca942e07851d7c09de07d417463f2d8e5165a779f768d14b370cd1e82826a94b617b6c6359253e8c12ea8285cba1e6e69e2e13f2bdc0425d0
passwordSalt: 7e893ba949b041bab73c6f4f0bcb9413
- user: '{69e291d8-381b-4ad8-9013-f3b0a0c693fe}'
username: superuser
passwordHash: 0bdbeeecd24e93a0d84ff2946c519761d4db2c52d9449d2de5bf3b74a8bcdfbee9d72bb88121a63700d09554983e7f881021ecf493f83dec19e8f7e465529c34
passwordSalt: 5e28b86839ed4ca9838c112723aeaa27
- user: '{232A8CBF-0D2B-4BDA-BE86-3E2FA25A3FB5}'
username: zq-support
- user: '{232A8CBF-0D2B-4BDA-BE86-3E2FA25A3FB5}'
username: zq-support
- user: '{FB20A79C-EAA2-4A98-A1DA-BDC351854694}'
username: zq-configurator
- user: '{FB20A79C-EAA2-4A98-A1DA-BDC351854694}'
username: zq-configurator
- user: '{63F2EF51-DC73-48EC-856A-6FBBEDE01A8A}'
username: zq-implementer
- user: '{63F2EF51-DC73-48EC-856A-6FBBEDE01A8A}'
username: zq-implementer
- user: '{739C26BC-740F-4CB0-BCB1-2A28FA570E7D}'
username: admin
- user: '{739C26BC-740F-4CB0-BCB1-2A28FA570E7D}'
username: admin
- user: '{9235065b-761f-43ab-9696-bc3f1c93cd74}'
username: btrevino
# password: W0rkd@yruleZ!
passwordHash: e52c91700614cea617b9b557f2b04e397854c7670f1564c81dc453f891e9fbbcb6a7ea624749a248c19e797093dfcd2148ebe1475ca53523ac22409494c90eb0
passwordSalt: d8f400c74def4e2781c25a7c0c4f92e0

View File

@ -0,0 +1,3 @@
- tenant: '&IDT_Defaultt;'
libraryReferences:
- libraryReference: '&IDL_MochaBaseSystem;'

181
mockups/ide.html Normal file
View File

@ -0,0 +1,181 @@
<html>
<head>
<style type="text/css">
:root
{
--uwt-cursor-color: #fff;
}
@keyframes cursorblink
{
0%
{
border-right-color: var(--uwt-cursor-color);
}
50%
{
border-right-color: transparent;
}
100%
{
border-right-color: var(--uwt-cursor-color);
}
}
div.mcx-codebox
{
font-family: monospace;
}
span.mcx-code-instance
{
cursor: default;
text-underline-offset: 6px;
}
span.mcx-code-instance:hover
{
cursor: pointer;
text-decoration: underline;
}
span.mcx-code-instance-title
{
color: #00aa00;
}
span.mcx-code-instance-id
{
color: #aaaa00;
}
span.mcx-code-line > *
{
padding: 4px;
}
span.uwt-selected
{
background-color: #0000aa;
animation-name: cursorblink;
animation-duration: 0.5s;
animation-iteration-count: infinite;
border-right-style: solid;
border-right-width: 2px;
border-right-color: #000000;
}
span.uwt-selected:empty
{
background-color: transparent;
padding: 4px 0px;
}
</style>
<script type="text/javascript">
function TextEditor(parentElement)
{
this.ParentElement = parentElement;
window.addEventListener("keydown", function(e)
{
//console.log(e);
var sels = document.getElementsByClassName("uwt-selected");
var sel = null;
if (sels.length > 0)
{
sel = sels[0];
}
if (e.keyCode == 32 || e.keyCode == 61 || e.keyCode == 179 || (e.keyCode >= 48 && e.keyCode <= 59) || (e.keyCode >= 65 && e.keyCode <= 90))
{
var ps = sel.previousSibling;
if (ps)
{
var parent = ps.parentElement;
sel.remove();
ps.textContent += String.fromCharCode(e.keyCode);
parent.append(sel);
}
}
else if (e.keyCode == 37 || e.keyCode == 8) /* ArrowLeft | Backspace */
{
var ps = sel.previousSibling;
var pa = sel.nextSibling;
if (ps)
{
if (ps.nodeName === "#text")
{
var parent = ps.parentElement;
var before = ps.textContent;
var after = before.substring(before.length - 1);
if (pa)
{
after += pa.textContent;
pa.remove();
}
before = before.substring(0, before.length - 1);
if (e.keyCode == 8)
{
after = after.substring(1);
}
ps.remove();
sel.remove();
parent.append(document.createTextNode(before));
parent.append(sel);
parent.append(document.createTextNode(after));
//ps.textContent = after;
//parent.appendChild(sel);
}
if (sel.previousSibling.textContent == "")
{
sel.previousElementSibling.className = sel.previousElementSibling.className + " uwt-selected";
sel.remove();
}
}
}
else if (e.keyCode == 39) /* ArrowRight */
{
var ps = sel.previousSibling;
var pa = sel.nextSibling;
if (ps)
{
if (ps.nodeName === "#text")
{
var parent = ps.parentElement;
var before = ps.textContent;
var after = "";
if (pa)
{
after = pa.textContent.substring(1);
before = before + pa.textContent.substring(0, 1);
pa.remove();
}
ps.remove();
sel.remove();
parent.append(document.createTextNode(before));
parent.append(sel);
parent.append(document.createTextNode(after));
//ps.textContent = after;
//parent.appendChild(sel);
}
}
}
else
{
console.log("unhandled keyCode " + e.keyCode);
}
});
}
window.addEventListener("load", function()
{
var items = document.getElementsByClassName("mcx-codebox");
for (var i = 0; i < items.length; i++)
{
items[i].NativeObject = new TextEditor(items[i]);
}
});
</script>
</head>
<body>
<div class="mcx-codebox">
<span class="mcx-code-line">SELECT * FROM <span class="mcx-code-instance"><span class="mcx-code-instance-title">`Method returning an Attribute`</span> <span class="mcx-code-instance-id">[1$132]</span></span> WHERE<span class="uwt-selected"></span></span>
</div>
</body>
</html>

View File

@ -1,7 +1,7 @@
<?php
require_once ("lib/phast/Compilers/StyleSheet/Internal/LessStyleSheetCompiler.inc.php");
require_once ("lib/phast/Compilers/StyleSheet/Internal/Formatters/CompressedFormatter.inc.php");
require_once ("lib/phast/Compilers/StyleSheet/LESS/Internal/LessStyleSheetCompiler.inc.php");
require_once ("lib/phast/Compilers/StyleSheet/LESS/Internal/Formatters/CompressedFormatter.inc.php");
use Phast\Compilers\StyleSheet\Internal\LessStyleSheetCompiler;
use Phast\Compilers\StyleSheet\Internal\Formatters\CompressedFormatter;

View File

@ -6,18 +6,35 @@
use Mocha\Oop\Method;
use Mocha\Oop\MethodBinding;
use Phast\UUID;
class InstanceReference
{
public Oms $OMS;
public int $DatabaseId;
public InstanceKey $InstanceKey;
public $GlobalIdentifier;
public UUID $GlobalIdentifier;
public function __construct(Oms $oms, int $databaseId, InstanceKey $instanceKey, $globalIdentifier)
public static function toInstanceKeys(array $instanceReferences) : array
{
$keys = [ ];
foreach ($instanceReferences as $instanceReference)
{
$keys[] = $instanceReference->InstanceKey;
}
return $keys;
}
public function __construct(Oms $oms, int $databaseId, InstanceKey $instanceKey, UUID|string $globalIdentifier)
{
$this->OMS = $oms;
$this->DatabaseId = $databaseId;
$this->InstanceKey = $instanceKey;
if (is_string($globalIdentifier))
{
$globalIdentifier = UUID::Parse($globalIdentifier);
}
$this->GlobalIdentifier = $globalIdentifier;
}
@ -39,5 +56,14 @@
{
return new MethodBinding($this);
}
public function __is_equal(InstanceReference $other)
{
return $this->GlobalIdentifier->__is_equal($other->GlobalIdentifier);
}
public function __is_not_equal(InstanceReference $other)
{
return !$this->__is_equal($other);
}
}
?>

View File

@ -129,5 +129,7 @@ class KnownClassGuids
const ButtonLayout = "6f6338db68e04cc7b257d1b97cf3cb92";
const ImageLayout = "4b1bb7c6168e4ce0b4f876dd5069a80b";
const ProcessRelatedUpdatesMethod = "2953e69803c54752a1ebcbbfa8f13905";
}
?>

View File

@ -6,10 +6,10 @@ class KnownInstanceGuids
/**
* The GUID of the default tenant instance.
*/
const DefaultTenant = "F2C9D4A99EFB426384DB66A9DA65AD00";
const DefaultTenant = "{F2C9D4A9-9EFB-4263-84DB-66A9DA65AD00}";
const DisplayOption__DisplayAsPageTitle = "369335cf4a3d4349930062bd72dafeb6";
const DisplayOption__DisplayAsPageTitle = "{369335cf-4a3d-4349-9300-62bd72dafeb6}";
const DisplayOption__NotEnterable = "831e921b51324b379303da0994a0f828";
const DisplayOption__SubmitNotEnterable = "f480a1d6cc9b4606bce1d6757fa99bad";
const DisplayOption__ShowSubelementsVertically = "8bfd1ae21474413db4dd6cd4993080d1";
@ -34,5 +34,10 @@ class KnownInstanceGuids
const ElementContent__PasswordForLoginPage = "51b51be344fd48f1971f682aee0a6132";
const Element__ViewElementContent = "e68bb6c429eb4c77908a1b3793c952bc";
const Alignment__Near = "35ea407a45e1462fa923a526d12fbc47";
const Alignment__Center = "{63179b92-9a6a-495b-a823-f45e353be9d8}";
const Alignment__Far = "f19d16c799ff48a3b86a7db8f400d869";
}
?>

View File

@ -1,8 +1,11 @@
<?php
namespace Mocha\Core;
use Phast\UUID;
class KnownRelationshipGuids
{
const Class__has_super__Class = "100F0308855D4EC599FAD8976CA20053";
const Class__has_super__Class = "{100F0308-855D-4EC5-99FA-D8976CA20053}";
const Class__has_sub__Class = "C14BC80D879C4E6F9123E8DFB13F4666";
const Class__has__Method = "2DA282715E464472A6F5910B5DD6F608";
@ -151,6 +154,11 @@ class KnownRelationshipGuids
const Style__has__Style_Rule = "4CC8A654B2DF4B17A95624939530790E";
const Style_Rule__has__Style_Property = "B69C2708E78D413AB491ABB6F1D2A6E0";
const Style__has_width__Measurement = "4930ca87641a426d9d67cda6d5f22303";
const Style__has_height__Measurement = "978e6de0af7345a0bb56aaf451615b06";
const Measurement__has__Measurement_Unit = "C97200821F40406D80B781C1B690354D";
const Page__has_master__Page = "9bdbfd640915419f83fde8cf8bcc74ae";
const Page__master_for__Page = "7fe8f2a2c94d401083aa9300cc99d71d";
@ -261,10 +269,25 @@ class KnownRelationshipGuids
const Style__implements__Style = "99b1c16af2cb4cc5a3bb82a96335aa39";
const Style__implemented_for__Style = "271ef8161e944f02a8054f9536c28dca";
const Style__has_horizontal__Alignment = "{cc8d60e3-1b42-4ab1-a918-3d109891bb4e}";
const Style__has_vertical__Alignment = "{24c175dd-c34c-4ffc-aef0-440aa032ceeb}";
const Get_Instance_Set_by_System_Routine_Method__uses__System_Instance_Set_Routine = "{085bd706-eece-4604-ac04-b7af114d1d21}";
const System_Instance_Set_Routine__used_by__Get_Instance_Set_By_System_Routine_Method = "{6fb6534c-2a46-4d6d-b9df-fd581f19efed}";
const System_Account__has__User_Preferences = "{ada4deb2-adfd-409f-b13a-9856fabd5522}";
const User_Preferences__for__System_Account = "{ab2372a5-a4c7-488a-89f6-67e5834f8c83}";
const Button_Layout__executes_task_from__Instance_Set = "04d104faa6c4425ea6cd56d847c63e9d";
const Element__processed_by__Process_Related_Updates_Method = "{ed9c836a-04a4-4505-8953-3c567e841c66}";
const Process_Related_Updates_Method__uses__Executable_for_PUMB = "{50e1f14a-d6e5-4c71-b7ab-1755442728dc}";
const Process_Related_Updates_Method__processes_for__Class = "{436a20fb-f672-4397-aca4-ec0ed6e2280a}";
const Assign_Attribute_Method__uses__Executable_returning_Attribute = "{9313f96e-58af-416f-852e-ef83725057fc}";
const Assign_Attribute_Method__assigns__Attribute = "{74061875-8a27-403b-9456-02e52cfd13b2}";
}
?>

View File

@ -2,12 +2,10 @@
namespace Mocha\Core;
use Phast\UUID;
class OmsContext
{
private $elementParms;
private $workData;
public $workData;
public function __construct()
{
@ -39,7 +37,7 @@
{
$this->workData[$parmId] = $value;
}
public function getWorkData(InstanceReference $elementContent, string $parmId, $defaultValue = null)
public function getWorkData(string $parmId, $defaultValue = null)
{
if (array_key_exists($parmId, $this->workData))
{

View File

@ -1,9 +1,11 @@
<?php
namespace Mocha\Oms;
use InvalidArgumentException;
use Mocha\Core\InstanceKey;
use Mocha\Core\InstanceReference;
use Mocha\Core\TenantReference;
use Phast\UUID;
class MySQLDatabaseOms extends DatabaseOms
{
@ -193,8 +195,10 @@
return $ir;
}
private $_instanceCache;
private static bool $useInstanceCache = true; // makes a 0.2ms difference!
public function getInstanceByGlobalIdentifier(string $globalIdentifier) : ?InstanceReference
public function getInstanceByGlobalIdentifier(UUID|string $globalIdentifier) : ?InstanceReference
{
$tenant = $this->getTenant();
if ($tenant === null)
@ -203,11 +207,25 @@
return null;
}
if (is_string($globalIdentifier))
{
$globalIdentifier = UUID::parse($globalIdentifier);
}
if ($this->_instanceCache == null || !MySQLDatabaseOms::$useInstanceCache)
{
$this->_instanceCache = array();
}
if (array_key_exists($globalIdentifier->__toString(), $this->_instanceCache))
{
return $this->_instanceCache[$globalIdentifier->__toString()];
}
$query = "CALL mocha_get_instance_by_global_identifier(mocha_normalize_uuid(:global_identifier))";
$stmt = $this->PDO->prepare($query);
$parms = array
(
"global_identifier" => $globalIdentifier
"global_identifier" => $globalIdentifier->__toString()
);
$result = $stmt->execute($parms);
@ -236,6 +254,7 @@
$global_id = $values[0]["global_identifier"];
$ir = new InstanceReference($this, $dbid, new InstanceKey($class_id, $inst_id), $global_id);
$this->_instanceCache[$ir->GlobalIdentifier->__toString()] = $ir;
return $ir;
}
@ -257,6 +276,8 @@
$result = $stmt->execute($parms);
trigger_error($query, \E_USER_NOTICE);
trigger_error("source inst id: " . $sourceInstance->InstanceKey, \E_USER_NOTICE);
trigger_error("relationship inst id: " . $relationshipInstance->InstanceKey, \E_USER_NOTICE);
foreach ($parms as $key => $value)
{
trigger_error($key . ": '" . $value . "'", \E_USER_NOTICE);
@ -274,7 +295,10 @@
foreach ($values as $value)
{
$retval = $this->getInstanceFromDatabase($value);
$ret[] = $retval;
if ($retval !== null)
{
$ret[] = $retval;
}
}
return $ret;
}
@ -387,7 +411,7 @@
{
foreach ($values as $value)
{
$inst = $this->getInstanceFromDatabase($values[0]);
$inst = $this->getInstanceFromDatabase($value);
$insts[] = $inst;
}
}
@ -396,6 +420,9 @@
public function getInstanceFromDatabase($value)
{
if ($value["class_id"] === null)
return null;
$retval = new InstanceReference($this, $value["id"], new InstanceKey($value["class_id"], $value["inst_id"]), $value["global_identifier"]);
return $retval;
}

View File

@ -12,6 +12,8 @@
use Mocha\Core\OmsContext;
use Mocha\Core\TenantReference;
use Phast\UUID;
abstract class Oms
{
public function __construct()
@ -22,7 +24,7 @@
/**
* Gets the instance with the specified global identifier.
*/
public function getInstanceByGlobalIdentifier(string $inst) : ?InstanceReference
public function getInstanceByGlobalIdentifier(UUID|string $inst) : ?InstanceReference
{
return null;
}
@ -60,6 +62,7 @@
*/
public function getParentClass(InstanceReference $inst) : ?InstanceReference
{
$gid = $inst->GlobalIdentifier->__toString();
$forClass = $this->getRelatedInstance($inst, $this->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Instance__for__Class));
return $forClass;
}
@ -207,7 +210,7 @@
}
return $arry;
}
else if (is_string($instanceReferenceOrGuidOrInstanceKey))
else if (is_string($instanceReferenceOrGuidOrInstanceKey) || $instanceReferenceOrGuidOrInstanceKey instanceof UUID)
{
// assume GUID
return $this->getInstanceByGlobalIdentifier($instanceReferenceOrGuidOrInstanceKey);
@ -220,6 +223,7 @@
{
return $instanceReferenceOrGuidOrInstanceKey;
}
echo ("ERR");
return null;
}
@ -246,5 +250,47 @@
// get attribute: Translation@get Value(GA)[ramb]
}
public function executeMethod(OmsContext $context, InstanceReference $methodInstance)
{
$methodInstanceClass = $this->getParentClass($methodInstance);
//$context->setWorkData("{d53d7283-92a2-4a62-b8f2-cf0a0b975634}", "blah blah");
if ($methodInstanceClass->GlobalIdentifier->__is_equal(UUID::Parse(KnownClassGuids::ProcessRelatedUpdatesMethod)))
{
$classForPRU = $this->getRelatedInstance($methodInstance, KnownRelationshipGuids::Process_Related_Updates_Method__processes_for__Class);
if ($classForPRU !== null)
{
echo("current work data for '" . $classForPRU->GlobalIdentifier . "' = '" . $context->getWorkData($classForPRU->GlobalIdentifier->__toString()) . "'");
}
$instExecutablesForPUMB = $this->getRelatedInstances($methodInstance, KnownRelationshipGuids::Process_Related_Updates_Method__uses__Executable_for_PUMB);
foreach ($instExecutablesForPUMB as $instExecutableForPUMB)
{
if ($instExecutableForPUMB !== null)
{
$assignsAttribute = $this->getRelatedInstance($instExecutableForPUMB, KnownRelationshipGuids::Assign_Attribute_Method__assigns__Attribute);
$usesExecutableReturningAttribute = $this->getRelatedInstance($instExecutableForPUMB, KnownRelationshipGuids::Assign_Attribute_Method__uses__Executable_returning_Attribute);
$context->setWorkData($assignsAttribute->GlobalIdentifier->__toString(), $usesExecutableReturningAttribute);
echo ("assigning attribute '" . $assignsAttribute->GlobalIdentifier . "' the value from executable '" . $usesExecutableReturningAttribute->GlobalIdentifier . "'");
//echo ("the value from work data is '" . $context->getWorkData($usesExecutableReturningAttribute->GlobalIdentifier) . "'");
}
else
{
echo ("executable for PUMB is null");
}
}
}
}
public function is_a(InstanceReference $inst, InstanceReference|string|InstanceKey $what)
{
$pclass = $this->getParentClass($inst);
if ($pclass === null)
return false;
if ($pclass->__is_equal($this->normalizeInstanceReference($what)))
return true;
return false;
}
}
?>

View File

@ -6,6 +6,8 @@
use Mocha\Core\KnownRelationshipGuids;
use Mocha\Oop\Method;
use Phast\UUID;
class GetInstanceSetBySystemRoutineMethod
{
private $Method;
@ -23,7 +25,7 @@
$instSystemRoutine = $oms->getRelatedInstance($instMethod, $oms->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Get_Instance_Set_by_System_Routine_Method__uses__System_Instance_Set_Routine));
$singular = false; // $oms->getAttributeValue($instSystemRoutine, $oms->getInstanceByGlobalIdentifier(KnownAttributeGuids::Singular));
if ($instSystemRoutine->GlobalIdentifier == "430f572dd1164b0497b265a9e9230ce5")
if ($instSystemRoutine->GlobalIdentifier->__is_equal(UUID::parse("430f572dd1164b0497b265a9e9230ce5")))
{
// get User for User Name parm
$userName = $parms["960FAF025C5940F791A720012A99D9ED"];

View File

@ -24,6 +24,8 @@
require("ui/ElementContent.inc.php");
require("ui/ValidationResult.inc.php");
require("ui/controls/InstanceBrowser.inc.php");
require("ui/renderers/html/HTMLRenderer.inc.php");
require("ui/tasks/Task.inc.php");

View File

@ -0,0 +1,193 @@
<?php
namespace Mocha\UI\Controls;
use Mocha\Core\InstanceKey;
use Mocha\Core\InstanceReference;
use Mocha\Oms\MySQLDatabaseOms;
use Phast\HTMLControl;
use Phast\System;
use Phast\WebControl;
use Phast\WebControlAttribute;
use Phast\WebControls\AdditionalDetailWidget;
use Phast\WebControls\HiddenField;
use Phast\WebControls\MenuItemCommand;
class InstanceBrowser extends WebControl
{
public $Name;
public array $SelectedInstances;
public array $ValidClasses;
public function __construct(array $instanceReferences = null)
{
parent::__construct();
$this->Name = null;
$this->TagName = "div";
$this->ClassList[] = "mcx-instancebrowser";
$this->ValidClasses = array();
if ($instanceReferences === null)
{
$instanceReferences = array();
}
$this->SelectedInstances = $instanceReferences;
}
protected function OnInitialize()
{
/**
* @var MySQLDatabaseOms
*/
$oms = mocha_get_oms();
if ($this->Editable) $this->ClassList[] = "mcx-editable";
if ($this->MultiSelect) $this->ClassList[] = "mcx-multiselect";
if (count($this->SelectedInstances) == 0)
{
$this->ClassList[] = "mcx-empty";
}
if ($this->DisplayAsCount)
{
$this->ClassList[] = "mcx-display-as-count";
}
$selectedInstanceIds = implode(",", InstanceReference::toInstanceKeys($this->SelectedInstances));
$this->Attributes[] = new WebControlAttribute("data-instance-ids", $selectedInstanceIds);
$this->Attributes[] = new WebControlAttribute("data-valid-class-ids", implode(",", InstanceReference::toInstanceKeys($this->ValidClasses)));
/*
System.Web.UI.WebControls.TextBox txt = new System.Web.UI.WebControls.TextBox();
txt.AutoCompleteType = System.Web.UI.WebControls.AutoCompleteType.Disabled;
txt.ID = String.Format("{0}_TextBox", this.ID);
if (Text != null)
txt.Text = Text;
this.Controls.Add(txt);
*/
$hidden = new HiddenField();
if ($this->Name !== null)
{
$hidden->Name = $this->Name . "_hidden";
}
$hidden->Value = $selectedInstanceIds;
$this->Controls[] = $hidden;
/*
Oms oms = Page.GetOMS();
System.Web.UI.HtmlControls.HtmlGenericControl ul = new System.Web.UI.HtmlControls.HtmlGenericControl("ul");
if (DisplayAsCount)
{
System.Web.UI.HtmlControls.HtmlGenericControl li = new System.Web.UI.HtmlControls.HtmlGenericControl("li");
System.Web.UI.HtmlControls.HtmlAnchor a = new System.Web.UI.HtmlControls.HtmlAnchor();
a.AddCssClass("mcx-count-link");
a.InnerText = InstanceReferences.Count.ToString();
li.Controls.Add(a);
ul.Controls.Add(li);
}
else
{
for (int i = 0; i < InstanceReferences.Count; i++)
{
Instance inst = oms.GetInstance(InstanceReferences[i]);
System.Web.UI.HtmlControls.HtmlGenericControl li = new System.Web.UI.HtmlControls.HtmlGenericControl("li");
MBS.Web.Controls.ActionPreviewButton apb = new MBS.Web.Controls.ActionPreviewButton();
apb.PreviewContent.Controls.Add(new System.Web.UI.HtmlControls.HtmlGenericControl("h1") { InnerHtml = oms.GetInstanceText(inst) });
apb.Attributes["data-preview-url"] = String.Format("~/api/preview/{0}", InstanceReferences[i]);
apb.Attributes["data-instance-id"] = InstanceReferences[i].ToString();
string tenantName = Page.GetCurrentTenantName();
apb.TargetUrl = String.Format("~/{0}/d/inst/{1}.htmld", tenantName, InstanceReferences[i]);
if (Text != null)
{
apb.Text = Text;
}
else if (oms != null)
{
if (inst != null)
{
apb.Text = oms.GetInstanceText(inst);
if (String.IsNullOrEmpty(apb.Text))
{
apb.Text = oms.GetTTC(inst);
}
}
else
{
apb.Text = String.Format("(NULL INSTANCE: {0})", InstanceReferences[i]);
}
}
else
{
apb.Text = InstanceReferences[i].ToString();
}
li.Controls.Add(apb);
ul.Controls.Add(li);
}
}
*/
$ul = new WebControl();
$ul->TagName = "ul";
foreach ($this->SelectedInstances as $inst)
{
$li = new WebControl();
$li->TagName = "li";
$instParent = $oms->getParentClass($inst);
$parentClassName = $oms->getInstanceText($instParent);
$adw = new AdditionalDetailWidget("");
$adw->Attributes[] = new WebControlAttribute("data-instance-id", $inst->InstanceKey);
$adw->ClassList[] = "mcx-moniker";
$adw->ClassTitle = $parentClassName;
$adw->Text = $oms->getInstanceText($inst);
/*
$this->MenuItems = array(
new MenuItemCommand("Element Tests Testing Class 1", null, null, null, array(
new MenuItemCommand("Delete")
)),
new MenuItemCommand("Debugging", null, null, null, array(
new MenuItemCommand("Show in Code Editor")
)),
new MenuItemCommand("Favorite", null, null, null, array(
new MenuItemCommand("Add to Favorites"),
new MenuItemCommand("Manage Favorites")
)),
new MenuItemCommand("Integration IDs", null, null, null, array(
new MenuItemCommand("View IDs"),
new MenuItemCommand("Edit External IDs"),
new MenuItemCommand("Edit Reference ID"),
new MenuItemCommand("Maintain Reference IDs")
)),
new MenuItemCommand("Method Binding", null, null, null, array(
new MenuItemCommand("View"),
new MenuItemCommand("Edit")
))
);
*/
$adw->TargetURL = System::ExpandRelativePath("~/d/inst/" . $inst->InstanceKey . ".htmld");
$li->Controls[] = $adw;
$ul->Controls[] = $li;
}
$this->Controls[] = $ul;
parent::OnInitialize();
}
}

View File

@ -12,10 +12,13 @@
use Mocha\Oms\MySQLDatabaseOms;
use Mocha\UI\Controls\InstanceBrowser;
use Mocha\UI\ValidationResult;
use Phast\System;
use Phast\Utilities\Stopwatch;
use Phast\UUID;
class HTMLRenderer
{
/**
@ -42,6 +45,7 @@
public $StyleClasses;
public bool $IsPostback;
public string $SubmitButtonText;
public function __construct(OmsContext $context)
{
@ -50,6 +54,7 @@
$this->FailedValidationElements = [];
$this->IsPostback = false;
$this->StyleClasses = [];
$this->SubmitButtonText = "Save Changes";
}
/**
* Thanks https://stackoverflow.com/a/31107425
@ -100,8 +105,20 @@
$oms = mocha_get_oms();
$parentClass = $oms->getParentClass($task);
if ($parentClass->GlobalIdentifier == KnownClassGuids::HardcodedTask)
if ($parentClass->GlobalIdentifier->__is_equal(UUID::parse(KnownClassGuids::HardcodedTask)))
{
echo ("<!-- task: " . $task->InstanceKey . " {" . $task->GlobalIdentifier . "} -->");
$taskName = $oms->getAttributeValue($task, KnownAttributeGuids::Name);
echo ("<div class=\"uwt-page-header\">");
echo ("<h1> " .$taskName . "</h1>");
echo ("<h2>");
$adw = new InstanceBrowser(array($relatedInstance));
$adw->Render();
echo ("</h2>");
echo ("</div>");
$className = $oms->getAttributeValue($task, KnownAttributeGuids::ClassName);
$taskClass = null;
try
@ -118,7 +135,7 @@
if ($value instanceof InstanceReference)
{
$pc = $oms->getParentClass($value);
if ($pc->GlobalIdentifier == KnownClassGuids::Element)
if ($pc->GlobalIdentifier->__is_equal(UUID::parse(KnownClassGuids::Element)))
{
$this->renderInitialElement($value);
}
@ -135,6 +152,16 @@
}
}
private function updateWorkDataWithElementContents()
{
echo ("updating work datas from element contents...<br/>");
echo ("current work data: <br/>");
print_r($this->Context->workData);
echo ("<br/><br/>");
echo ("proposed changes: <br/>");
}
public function processPostback(InstanceReference $element)
{
/**
@ -149,23 +176,26 @@
}
else
{
$ecs = array();
$result = null;
foreach ($_POST as $key => $value)
{
if (str_starts_with($key, "ec_"))
{
$ecid = substr($key, 3);
$ecs[$ecid] = $value;
}
}
$inst_ec = $oms->getInstanceByKey(InstanceKey::Parse($ecid));
if (!$this->checkValidationsForElementContent($inst_ec, $value))
{
$result = false;
}
$result = null;
foreach ($ecs as $key => $value)
{
$inst_ec = $oms->getInstanceByKey(InstanceKey::Parse($key));
if (!$this->checkValidationsForElementContent($inst_ec, $value))
{
$result = false;
$instParameterAssignments = $oms->getRelatedInstances($inst_ec, KnownRelationshipGuids::Element_Content__has__Parameter_Assignment);
foreach ($instParameterAssignments as $parmAssignment)
{
$assignsToParm = $oms->getRelatedInstance($parmAssignment, KnownRelationshipGuids::Parameter_Assignment__assigns_to__Parameter);
}
$this->Context->setElementParm($inst_ec, $inst_ec->GlobalIdentifier->__toString(), $value);
}
}
@ -181,6 +211,39 @@
}
else
{
$this->updateWorkDataWithElementContents();
$pru = $oms->getRelatedInstance($element, KnownRelationshipGuids::Element__processed_by__Process_Related_Updates_Method);
if ($pru !== null)
{
echo ("<!-- executing pru for " . $element->InstanceKey . " -->");
$oms->executeMethod($this->Context, $pru);
return true;
}
else
{
echo ("<!-- pru is null for " . $element->InstanceKey . " -->");
}
$contents = $oms->getRelatedInstances($element, KnownRelationshipGuids::Element__has__Element_Content);
foreach ($contents as $content)
{
$contentInstance = $oms->getRelatedInstance($content, KnownRelationshipGuids::Element_Content__has__Instance);
if ($contentInstance == null)
{
echo ("<!-- contentInstance is null for " . $content->InstanceKey . " -->");
continue;
}
$pc = $oms->getParentClass($contentInstance);
if ($pc->GlobalIdentifier->__is_equal(UUID::parse(KnownClassGuids::Element)))
{
echo("<!-- executing sub PRU -->");
$this->processPostback($contentInstance);
}
}
/*
// process updates
foreach ($ecs as $key => $value)
{
@ -190,8 +253,10 @@
return false;
}
}
*/
}
}
return true;
}
/**
@ -285,8 +350,8 @@
if ($ecLayoutParentClass !== null)
{
if (
($ecLayoutParentClass->GlobalIdentifier == KnownClassGuids::ButtonLayout)
|| ($ecLayoutParentClass->GlobalIdentifier == KnownClassGuids::ImageLayout)
($ecLayoutParentClass->GlobalIdentifier->__is_equal(UUID::parse(KnownClassGuids::ButtonLayout)))
|| ($ecLayoutParentClass->GlobalIdentifier->__is_equal(UUID::parse(KnownClassGuids::ImageLayout)))
)
{
return false;
@ -319,7 +384,7 @@
return true;
}
public function buildStyleAttribute(array $constantStyles, array $stylesFromInstanceSet)
public function buildStyleAttribute(bool $isBlockElement, array $constantStyles, array $stylesFromInstanceSet)
{
/**
* @var MySQLDatabaseOms
@ -334,17 +399,76 @@
foreach ($stylesFromInstanceSet as $ir)
{
# $styleHasStyleRule = $oms->getRelatedInstances($ir, KnownRelationshipGuids::Style__has__Style_Rule);
$styleHasWidthAttr = $oms->getAttributeValue($ir, KnownRelationshipGuids::Style__has_width__Measurement);
$styleHasWidthAttr = $oms->getRelatedInstance($ir, KnownRelationshipGuids::Style__has_width__Measurement);
if ($styleHasWidthAttr !== null)
{
$value = $oms->getAttributeValue($styleHasWidthAttr, KnownAttributeGuids::Value);
$unit = $oms->getRelatedInstance($styleHasWidthAttr, KnownRelationshipGuids::Measurement__has__Measurement_Unit);
$unitValue = $oms->getAttributeValue($unit, KnownAttributeGuids::CSSValue);
$str .= "width: " . $value . $unitValue . ";";
}
$styleHasHeightAttr = $oms->getAttributeValue($ir, KnownRelationshipGuids::Style__has_height__Measurement);
$styleHasHeightAttr = $oms->getRelatedInstance($ir, KnownRelationshipGuids::Style__has_height__Measurement);
if ($styleHasHeightAttr !== null)
{
$value = $oms->getAttributeValue($styleHasHeightAttr, KnownAttributeGuids::Value);
$unit = $oms->getRelatedInstance($styleHasHeightAttr, KnownRelationshipGuids::Measurement__has__Measurement_Unit);
$unitValue = $oms->getAttributeValue($unit, KnownAttributeGuids::CSSValue);
$str .= "height: " . $value . $unitValue . ";";
}
$styleHasHorizontalAlignment = $oms->getRelatedInstance($ir, KnownRelationshipGuids::Style__has_horizontal__Alignment);
if ($styleHasHorizontalAlignment !== null)
{
if ($isBlockElement)
{
if ($styleHasHorizontalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Near)))
{
$str .= "margin-right: auto;";
}
else if ($styleHasHorizontalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Center)))
{
$str .= "margin-left: auto; margin-right: auto;";
}
else if ($styleHasHorizontalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Far)))
{
$str .= "margin-left: auto;";
}
}
else
{
if ($styleHasHorizontalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Near)))
{
$value = "left";
}
else if ($styleHasHorizontalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Center)))
{
$value = "center";
}
else if ($styleHasHorizontalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Far)))
{
$value = "right";
}
$str .= "text-align: " . $value . ";";
}
}
$styleHasVerticalAlignment = $oms->getRelatedInstance($ir, KnownRelationshipGuids::Style__has_vertical__Alignment);
if ($styleHasVerticalAlignment !== null)
{
if ($styleHasVerticalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Near)))
{
$value = "top";
}
else if ($styleHasVerticalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Center)))
{
$value = "center";
}
else if ($styleHasVerticalAlignment->GlobalIdentifier->__is_equal(UUID::parse(KnownInstanceGuids::Alignment__Far)))
{
$value = "bottom";
}
$str .= "vertical-align: " . $value . ";";
}
}
return $str;
}
public function renderElementContent(InstanceReference $elementContent)
@ -355,6 +479,9 @@
$oms = mocha_get_oms();
$ecInst = $oms->getRelatedInstance($elementContent, $oms->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Element_Content__has__Instance));
echo ("<!-- " . $elementContent->InstanceKey . " ; " . $ecInst->InstanceKey . " -->");
$ecLayout = $oms->getRelatedInstance($elementContent, $oms->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Element_Content__has__Layout));
if ($ecLayout !== null)
{
@ -363,16 +490,30 @@
$ecLayoutParentClass = $oms->getParentClass($ecLayout);
if ($ecLayoutParentClass !== null)
{
if ($ecLayoutParentClass->GlobalIdentifier == KnownClassGuids::ButtonLayout)
if ($ecLayoutParentClass->GlobalIdentifier->__is_equal(UUID::parse(KnownClassGuids::ButtonLayout)))
{
// override layout : button
echo ("<a class=\"uwt-button\" href=\"\">");
echo ("<a class=\"uwt-button\" href=\"");
$executesTaskFromIS = $oms->getRelatedInstance($ecLayout, KnownRelationshipGuids::Button_Layout__executes_task_from__Instance_Set);
if ($executesTaskFromIS !== null)
{
echo(System::ExpandRelativePath("~/d/task/" . $executesTaskFromIS->InstanceKey . ".htmld"));
}
echo("\">");
//
// 3$7872 Button Layout.uses for label Text Attribute
// 3$7873 Text Attribute.label for Button Layout
//
// TODO: get Translatable label text from EC
// $attrLabel = $oms->getRelatedInstance($ecLayout, KnownRelationshipGuids::Button_Layout__uses_for_label__Text_Attribute);
// if ($attrLabel !== null)
// {
// }
$attrLabel = $oms->getAttributeValue($elementContent, KnownAttributeGuids::Label, "NO_LABEL_" . $elementContent->InstanceKey);
echo ($attrLabel);
echo ("</a>");
}
else if ($ecLayoutParentClass->GlobalIdentifier == KnownClassGuids::ImageLayout)
else if ($ecLayoutParentClass->GlobalIdentifier->__is_equal(UUID::parse(KnownClassGuids::ImageLayout)))
{
// override layout : image
echo ("<div class=\"uwt-image\" style=\"");
@ -382,7 +523,7 @@
$attrContentEncoding = $oms->getAttributeValue($ecInst, KnownAttributeGuids::Encoding);
$attrValue = $oms->getAttributeValue($ecInst, KnownAttributeGuids::Value);
echo ($this->buildStyleAttribute([
echo ($this->buildStyleAttribute(true, [
"background-image" => "url('data:" . $attrContentType . ";" . $attrContentEncoding . "," . $attrValue . "')"
], $ecStyles));
echo("\">&nbsp;</div>");
@ -401,12 +542,11 @@
{
$displayOptions = $oms->getRelatedInstances($elementContent, $oms->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Element_Content__has__Element_Content_Display_Option));
$ecPClass = $oms->getParentClass($ecInst);
if (strtolower($ecPClass->GlobalIdentifier) == strtolower(KnownClassGuids::Element))
if ($oms->is_a($ecInst, KnownClassGuids::Element))
{
$this->renderElement($ecInst, $displayOptions);
}
else if (strtolower($ecPClass->GlobalIdentifier) == strtolower(KnownClassGuids::Relationship))
else if ($oms->is_a($ecInst, KnownClassGuids::Relationship))
{
if (!$oms->instanceSetContains($displayOptions, $oms->getInstanceByGlobalIdentifier(KnownInstanceGuids::DisplayOption__NotEnterable)))
{
@ -416,23 +556,14 @@
{
// get the current value of the relationship
$value = $oms->getRelatedInstances($this->TargetInstance, $ecInst);
if (count($value) > 0)
{
$this->renderBeginTag("ul");
$this->renderBeginTag("li");
$this->renderEndTag("li");
$this->renderEndTag("ul");
}
else
{
echo("(empty)");
}
$adw = new InstanceBrowser();
$adw->Name = "ib_" . $elementContent->InstanceKey;
$adw->SelectedInstances = $value;
//echo("calling Render");
$adw->Render();
}
}
else if (strtolower($ecPClass->GlobalIdentifier) == strtolower(KnownClassGuids::TextAttribute))
else if ($oms->is_a($ecInst, KnownClassGuids::TextAttribute))
{
$value = $oms->getAttributeValue($this->TargetInstance, $ecInst);
if ($value === null)
@ -456,7 +587,9 @@
}
else
{
echo ("<span class=\"mcx-value\">unknown pclass ident " . $ecPClass->GlobalIdentifier . "</span>");
$adw = new InstanceBrowser(array($ecInst));
$adw->Render();
// echo ("<span class=\"mcx-value\">unknown pclass ident " . $oms->getParentClass($ecInst)->GlobalIdentifier . "</span>");
}
echo ("</td>");
}
@ -537,13 +670,15 @@
return "";
}
public function renderInitialElement(InstanceReference $element)
private Stopwatch $_stopwatch;
public function renderBeginPage($title = "")
{
/**
* @var MySQLDatabaseOms
*/
$oms = mocha_get_oms();
$metaCharset = "UTF-8";
$metaAttributes = [];
$metaAttributes["viewport"] = "width=device-width, initial-scale=1.0";
@ -557,6 +692,53 @@
echo ("<meta name=\"" . $key . "\" content=\"" . $value . "\" />");
}
$this->renderBeginTag("title");
echo($title);
$this->renderEndTag("title");
echo("<link rel=\"stylesheet\" type=\"text/css\" href=\"" . System::ExpandRelativePath("~/themes/" . System::GetConfigurationValue("Application.ThemeName") . "/theme.css", false, true) . "\" />");
$this->renderTag("script", array("type" => "text/javascript", "src" => System::ExpandRelativePath("~/scripts/phast/System.js.php", false, true)));
$this->renderTag("script", array("type" => "text/javascript", "src" => System::ExpandRelativePath("~/scripts/mocha.js.php", false, true)));
$this->renderBeginTag("script", array("type" => "text/javascript"));
echo("System.BasePath = '" . System::GetConfigurationValue("Application.BasePath") . "';");
echo("System.IsTenantedHostingEnabled = function() { return false; };");
echo("System.TenantName = '" . $oms->getTenantName() . "';");
$this->renderEndTag("script");
$this->renderEndTag("head");
$bodyClasses = [ "uwt-header-visible" ];
foreach ($this->StyleClasses as $className)
{
$bodyClasses[] = $className;
}
if ($this->IsPostback)
{
$bodyClasses[] = "uwt-postback";
}
$this->renderBeginTag("body", null, $bodyClasses);
$this->renderBeginTag("div", [ ], [ "uwt-page-header" ] );
$this->renderEndTag("div");
}
public function renderEndPage()
{
echo ("</form>");
$this->renderEndTag("body");
$this->renderEndTag("html");
$this->_stopwatch->stop();
$this->logRequestSuccess($this->_stopwatch->getElapsedTime());
}
public function renderInitialElement(InstanceReference $element)
{
/**
* @var MySQLDatabaseOms
*/
$oms = mocha_get_oms();
$this->_stopwatch = new Stopwatch();
$this->_stopwatch->start();
$applicationTitle = "Mocha"; // TOOD: get tenant application title
$pageTitle = null;
$pageTitle = $oms->getAttributeValue($element, KnownAttributeGuids::Label);
@ -573,29 +755,8 @@
{
$title = $applicationTitle;
}
$this->renderBeginTag("title");
echo($title);
$this->renderEndTag("title");
echo("<link rel=\"stylesheet\" type=\"text/css\" href=\"" . System::ExpandRelativePath("~/themes/clearview/theme.css", false, true) . "\" />");
$this->renderTag("script", array("type" => "text/javascript", "src" => System::ExpandRelativePath("~/scripts/phast/System.js.php", false, true)));
$this->renderTag("script", array("type" => "text/javascript", "src" => System::ExpandRelativePath("~/scripts/mocha.js.php", false, true)));
$this->renderBeginTag("script", array("type" => "text/javascript"));
echo("System.BasePath = '" . System::GetConfigurationValue("Application.BasePath") . "';");
echo("System.IsTenantedHostingEnabled = function() { return false; };");
echo("System.TenantName = '" . $oms->getTenantName() . "';");
$this->renderEndTag("script");
$this->renderEndTag("head");
$bodyClasses = [];
foreach ($this->StyleClasses as $className)
{
$bodyClasses[] = $className;
}
if ($this->IsPostback)
{
$bodyClasses[] = "uwt-postback";
}
$this->renderBeginTag("body", null, $bodyClasses);
$this->renderBeginPage($title);
if ($this->IsPostback)
{
echo("<div class=\"uwt-alert-container\">");
@ -624,14 +785,22 @@
$this->renderElement($element, [ $DO_Singular ]);
echo("<div class=\"uwt-page-footer\">");
echo ("<input class=\"uwt-button uwt-color-primary\" type=\"submit\" value=\"OK\" />");
echo ("<input class=\"uwt-button uwt-color-primary\" type=\"submit\" value=\"" . $this->SubmitButtonText . "\" />");
echo("</div>");
echo ("</form>");
$this->renderEndTag("body");
$this->renderEndTag("html");
$this->renderEndPage();
}
public function renderTag($tagName, ?array $attributeList = null, ?array $classList = null)
public function logRequestSuccess(float $elapsedTime)
{
echo("\n<!--\nSUCCESS!\n\n" .
"request: " . $_SERVER["REQUEST_METHOD"] . " " . $_SERVER["REQUEST_URI"] . "\n" .
"ip address: " . $_SERVER["REMOTE_ADDR"] . "\n" .
"render time: " . $elapsedTime . " ms\n" .
"\n-->");
}
public function renderTag($tagName, ?array $attributeList = null, ?array $classList = null, $content = null)
{
$canBeEmpty = true;
if ($tagName == "script")
@ -639,13 +808,17 @@
$canBeEmpty = false;
}
if ($canBeEmpty)
if ($canBeEmpty && $content === null)
{
echo ("<" . $tagName . $this->renderArray($classList, " ", " class=\"", "\"") . $this->renderKeyedArray($attributeList, " ", " ", "", "=", "", "", "\"", "\"") . " />");
}
else
{
$this->renderBeginTag($tagName, $attributeList, $classList);
if ($content !== null)
{
echo($content);
}
$this->renderEndTag($tagName);
}
}
@ -659,6 +832,33 @@
echo ("</" . $tagName . ">");
}
private function get__EC_Override_Label_or_default_Instance_Title(array $parms)
{
/**
* @var MySQLDatabaseOms
*/
$oms = mocha_get_oms();
$ecInst = $parms[KnownClassGuids::Instance];
$elementContent = $parms[KnownClassGuids::ElementContent];
$title = $oms->getAttributeValue($ecInst, $oms->getInstanceByGlobalIdentifier(KnownAttributeGuids::Name));
$label = $oms->getAttributeValue($elementContent, $oms->getInstanceByGlobalIdentifier(KnownAttributeGuids::Label));
//!HACK
if ($ecInst->InstanceKey->ClassIndex == 6)
{
// ELements should not have a title
$title = "";
}
if ($label !== null)
{
$title = $label;
}
//$title = "TODO:call Instance@get Title [ramb]";
return $title;
}
public function renderElement(InstanceReference $element, array $displayOptions)
{
/**
@ -668,7 +868,9 @@
if ($oms->instanceSetContains($displayOptions, $oms->getInstanceByGlobalIdentifier(KnownInstanceGuids::DisplayOption__ShowSubelementsVertically)))
{
$this->renderBeginTag("table", [ "data-instance-id" => $element->InstanceKey ], [ "uwt-formview", "mcx-element" ]);
echo("<!-- show subelements vertically -->");
# $this->renderBeginTag("table", [ "data-instance-id" => $element->InstanceKey ], [ "uwt-formview", "mcx-element" ]);
$this->renderBeginTag("div", [ "data-instance-id" => $element->InstanceKey ], [ "uwt-formview", "mcx-element" ]);
$contents = $oms->getRelatedInstances($element, $oms->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Element__has__Element_Content));
foreach ($contents as $elementContent)
@ -677,8 +879,14 @@
{
continue;
}
$ecInst = $oms->getRelatedInstance($elementContent, KnownRelationshipGuids::Element_Content__has__Instance);
$mcx_classes = [ "mcx-elementcontent" ];
if ($ecInst->InstanceKey->ClassIndex == 6)
{
$mcx_classes = [ "mcx-element" ];
}
if ($oms->instanceSetContains($displayOptions, $oms->getInstanceByGlobalIdentifier(KnownInstanceGuids::DisplayOption__Required)))
{
$mcx_classes[] = "mcx-required";
@ -688,51 +896,48 @@
$mcx_classes[] = "mcx-failed-validation";
}
$ecInst = $oms->getRelatedInstance($elementContent, KnownRelationshipGuids::Element_Content__has__Instance);
$this->renderBeginTag("tr", [ "data-instance-id" => $ecInst->InstanceKey, "data-ecid" => $elementContent->InstanceKey ], $mcx_classes);
// $this->renderBeginTag("tr", [ "data-instance-id" => $ecInst->InstanceKey, "data-ecid" => $elementContent->InstanceKey ], $mcx_classes);
$this->renderBeginTag("div", [ "data-instance-id" => $ecInst->InstanceKey, "data-ecid" => $elementContent->InstanceKey ], $mcx_classes);
$title = $oms->getAttributeValue($ecInst, $oms->getInstanceByGlobalIdentifier(KnownAttributeGuids::Name));
$label = $oms->getAttributeValue($elementContent, $oms->getInstanceByGlobalIdentifier(KnownAttributeGuids::Label));
//!HACK
if ($ecInst->InstanceKey->ClassIndex == 6)
{
// ELements should not have a title
$title = "";
}
if ($label !== null)
{
$title = $label;
}
$title = $this->get__EC_Override_Label_or_default_Instance_Title(array
(
KnownClassGuids::Instance => $ecInst,
KnownClassGuids::ElementContent => $elementContent
));
if ($this->shouldRenderElementContentLabel($elementContent))
{
$this->renderBeginTag("td");
// $this->renderBeginTag("td");
if (!$oms->instanceSetContains($displayOptions, $oms->getInstanceByGlobalIdentifier(KnownInstanceGuids::DisplayOption__DoNotShowLabel)))
{
echo ("<label for=\"ec_" . $elementContent->InstanceKey . "\">" . $title . "</label>");
}
$this->renderEndTag("td");
$this->renderBeginTag("td");
// $this->renderEndTag("td");
// $this->renderBeginTag("td");
}
else
{
$this->renderBeginTag("td", [ "colspan" => "2" ]);
// $this->renderBeginTag("td", [ "colspan" => "2" ]);
}
$this->renderBeginTag("div");
$this->renderElementContent($elementContent);
$this->renderEndTag("div");
$this->renderEndTag("td");
// $this->renderEndTag("td");
$this->renderEndTag("tr");
// $this->renderEndTag("tr");
$this->renderEndTag("div");
}
$this->renderEndTag ("table");
// $this->renderEndTag("table");
$this->renderEndTag("div");
}
else
{
if ($oms->instanceSetContains($displayOptions, $oms->getInstanceByGlobalIdentifier(KnownInstanceGuids::DisplayOption__Singular)))
{
$contents = $oms->getRelatedInstances($element, $oms->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Element__has__Element_Content));
echo("<!-- singular -->");
$contents = $oms->getRelatedInstances($element, KnownRelationshipGuids::Element__has__Element_Content);
foreach ($contents as $content)
{
$this->renderElementContent($content);
@ -740,19 +945,100 @@
}
else
{
$this->renderBeginTag("table", [ "data-instance-id" => $element->InstanceKey ], [ "uwt-listview", "mcx-element" ]);
$this->renderBeginTag("tr");
$title = $oms->getAttributeValue($element, KnownAttributeGuids::Name);
$label = $oms->getAttributeValue($element, KnownAttributeGuids::Label);
if ($label !== null)
{
$title = $label;
}
$contents = $oms->getRelatedInstances($element, $oms->getInstanceByGlobalIdentifier(KnownRelationshipGuids::Element__has__Element_Content));
$rowCount = 5;
echo("<!-- nonsingular -->");
// $this->renderBeginTag("table", [ "data-instance-id" => $element->InstanceKey ], [ "uwt-listview", "mcx-element" ]);
$this->renderBeginTag("div", [ "data-instance-id" => $element->InstanceKey ], [ "uwt-listview", "mcx-element", "uwt-listview-view-details", "uwt-gridlines", "uwt-hottracking" ]);
$this->renderBeginTag("div", [ ], [ "uwt-listview-caption" ]);
$this->renderTag("span", [ ], [ "uwt-listview-title" ], $title);
$this->renderTag("span", [ ], [ "uwt-listview-item-count" ], $rowCount);
$this->renderTag("span", [ ], [ "uwt-listview-item-count-label" ], "&nbsp;items");
$this->renderBeginTag("div", [ ], [ "uwt-toolbar", "uwt-listview-controlbox" ]);
// export
$this->renderBeginTag("a", [ "href" => "#", "title" => "Download" ], [ "uwt-button" ]);
$this->renderTag("i", [ ], [ "fa", "fa-download"] , "");
$this->renderEndTag("a");
// filter
$this->renderBeginTag("a", [ "href" => "#", "title" => "Filter" ], [ "uwt-button", "uwt-toggle" ]);
$this->renderTag("i", [ ], [ "fa", "fa-filter"] , "");
$this->renderEndTag("a");
// chart
$this->renderBeginTag("a", [ "href" => "#", "title" => "Chart" ], [ "uwt-button", "uwt-toggle" ]);
$this->renderTag("i", [ ], [ "fa", "fa-line-chart"] , "");
$this->renderEndTag("a");
// columns
$this->renderBeginTag("a", [ "href" => "#", "title" => "Columns" ], [ "uwt-button", "uwt-toggle" ]);
$this->renderTag("i", [ ], [ "fa", "fa-columns"] , "");
$this->renderEndTag("a");
// expand
$this->renderBeginTag("a", [ "href" => "#", "title" => "Expand" ], [ "uwt-button", "uwt-toggle" ]);
$this->renderTag("i", [ ], [ "fa", "fa-expand"] , "");
$this->renderEndTag("a");
$this->renderEndTag("div");
$this->renderEndTag("div");
$this->renderBeginTag("div", [], ["uwt-content"]);
$this->renderBeginTag("div", [ ], [ "uwt-listview-column-headers" ]);
foreach ($contents as $content)
{
$this->renderBeginTag("td");
$this->renderElementContent($content);
$this->renderEndTag("td");
$inst = $oms->getRelatedInstance($content, KnownRelationshipGuids::Element_Content__has__Instance);
// $this->renderBeginTag("td");
$this->renderBeginTag("div", [], [ "uwt-listview-column-header"]);
echo ($this->get__EC_Override_Label_or_default_Instance_Title(array
(
KnownClassGuids::Instance => $inst,
KnownClassGuids::ElementContent => $content
)));
$this->renderEndTag("div");
// $this->renderEndTag("td");
}
$this->renderEndTag("tr");
$this->renderEndTag("div");
$this->renderBeginTag("div", [], [ "uwt-listview-items" ]);
// $this->renderBeginTag("tr");
$this->renderEndTag("table");
for ($i = 0; $i < $rowCount; $i++)
{
$this->renderBeginTag("div", [ ], [ "uwt-listview-item" ]);
foreach ($contents as $content)
{
// $this->renderBeginTag("td");
$this->renderBeginTag("div", [], [ "mcx-elementcontent", "uwt-listview-item-column" ]);
$this->renderElementContent($content);
$this->renderEndTag("div");
// $this->renderEndTag("td");
}
// $this->renderEndTag("tr");
$this->renderEndTag("div");
}
$this->renderEndTag("div");
$this->renderEndTag("div");
// $this->renderEndTag("table");
$this->renderEndTag("div");
}
}
}

Some files were not shown because too many files have changed in this diff Show More