-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Change general parameter element to specific ISA-95 object names to enable "Corresponds to" relationship for SegmentParameter in OperationsSchedule.xsd and JobOrderParameter in WorkSchedule.xsd #61
Comments
ERDi, MESA: #61 <xsd:complexType name = "ProcessSegmentType"> CHANGE: element name = "Parameter" TO: "ProcessSegmentParameter
ERDi, MESA: #61, complexType name = "ParameterType" ADD: element name = "ParameterSpecificationID" type = "IdentifierType" minOccurs = "0" maxOccurs = "unbounded"/> ADD: element name = "ProcessSegmentParameterID" type = "IdentifierType" minOccurs = "0" maxOccurs = "unbounded"/>
ERDi, MESA: complexType name = "OperationsSegmentType", CHANGE: element name = "Parameter" TO: "ParameterSpecification" This CHANGE aligns with WorkDefinitionType which already has ParameterSpecification element which is the same object in the OperationsDefintionType so same specification element is named two different names in B2MML.
Agree with proposed change 1 and 2. For proposed change 3, I couldn't understand why? <xsd:element name="IDType" type="String"/> And the ID Type can be ParameterSpecificationID or ProcessSegmentParameterID. |
|
Agreed |
ERDi, MESA: group name = "WorkDefinitionType" CHANGE: element name = "Parameter" to "ParameterSpecification" to align with updated Part 4 Work Definition model DELETE: element name = "OperationsDefinitionID", "OperationsSegmentID", and "ProcessSegmentID" to align with the updated Part 4 Work Definition model relationships DELETE: element name = "WorkflowSpecification" ERDi, MESA: complexType name = "WorkMasterType"> ADD: element name = "OperationsDefinitionID", "OperationsSegmentID", and "ProcessSegmentID" to align with the updated Part 4 Work Definition model relationships ADD: element name = "WorkflowSpecification" type = "WorkflowSpecificationType" minOccurs = "0"/> (0..1: CHANGE from minOccurs = "0" maxOccurs = "unbounded"/>) ADD: element name = "DefinitionType" CHANGE: element name = "WorkMaster" TO "WorkMasterChild" to align with Part 4 Work Master relationship table. CHANGE: element name = "IncludesPropertiesOf" TO "WorkMasterParentID" type = "IdentifierType" minOccurs = "0"/> (0..1: CHANGE from minOccurs = "0" maxOccurs = "unbounded"/>) to align with Part 4 Work Master relationship table. ERDi, MESA: complexType name = "WorkDirectiveType"> CHANGE: element name = "WorkDirective" TO "WorkDirectiveChild" to align with Part 4 Work Master relationship table. ADD: element name = "WorkDirectiveState" DELETE OR CHANGE: element name = "JobOrderID", This element is the source of the Corresponds To unidirectional relationship, not the target, so Work Master and Work Directive do not correspond to the source and should not list the relationship source in schema. If MESA keeps these element, recommend change to JobOrderSourceID or similar, However, MESA B2MML implementation does includes source elements across the schema, ERDi must make this design decision or following ISA-95 in only addressing the target in a relationship between objects.
Updated Original Comment. Ready for MESA Submission |
I agree to the change. |
Background
In ISA-95, The Segment Parameter object in Segment Requirement (950002) and Job Order Parameter object in Job Order (950004) have a cross-model "Corresponds to" relationship to the BOTH Parameter Specification object in Operations Segment and Process Segment Parameter object in Process Segment.
B2MML uses a ParameterType in the Common.xsd for
a general "Parameter" element used in
OperationsSegmentType, ProcessSegmentType, and WorkDefintionType
as well as ParmeterType is used for
SegmentParameter in SegmentRequirementType and JobOrderParameter in JobOrderType.
The parameter specification and parameter segment specification objects in 950002 are the specification objects that the parameter requirement objects in operations schedule (segment requirement/parameter requirement) and work schedule (work request/job order requirement) are defined by.
The "Parameter" element cannot be referenced explicitly as the Parameter Specification object (Operation Segment) OR Process Segment Parameter object (Process Segment) by WorkDefinitionType, SegmentRequirementType, and JobOrderType .
The IDType in the ParameterType is not explicit enough to define how to apply the general Parameter to a specification vs. a requirement object context.
The ParameterType in Common.xsd is used as the type for all parameter elements which creates circular reference due to the use of the general Parameter element.
These two specification objects require explicit elements in the ParameterType to not create a circular reference of requirement to requirement or a specification to a specification.
B2MML use of "ParameterType" for both the specification and requirement objects which allows the user to incorrectly reference the context of the object. I have seen many project teams confuse the general "parameter" element and ParameterType as simply an attribute of the parent object and NOT in the context of the referenced master data specification for requirement object.
ParameterType is confusing specification vs. requirement objects. Making the specification types explicit makes its general use much easier to understand.
Supporting Documents
ISA-950002 JWG5 CDV01 version (2019 12)
Clause 5.8.3 Process segment parameter (Process Segment)
Clause 6.1.6 Parameter specification (Operations Definition /Operations Segment)
Clause 6.2.5 Segment parameter (Operations Schedule /Segment Requirement)
Clause 6.7 Parameter specification (Work Definition)
Clause 7.7 Job order parameter (Work Schedule / Job Order)
Impacted Types and Solution
B2MML-Common.xsd
950002
950004
CHANGE: element name = "Parameter"
TO: "ProcessSegmentParameter"
CHANGE: element name = "Parameter"
TO: "ParameterSpecification"
CHANGE: element name = "Parameter"
TO: "ParameterSpecification".
ADD ParameterSpecificationID element and ProcessSegmentParameterID element
The text was updated successfully, but these errors were encountered: