Issues for PLM Services Finalization Task Force
To comment on any of these issues, send email to plm-ftf@omg.org. (Please include the issue number in the Subject: header, thusly: [Issue ###].) To submit a new issue, send email to issues@omg.org.
List of issues (green=resolved, yellow=pending Board vote, red=unresolved)
Issue 7566: typo in line 299
Issue 7685: targetNamespace of the xs:schema element in the wsdl:types section
Issue 7723: Empty Interfaces in PLM Services Specification dtc/04-05-05
Issue 7724: typo in section 7.7.12.39
Issue 7740: Attributes
Issue 7741: complexTypes 'Item_version' and 'Document_version'
Issue 7745: Implementation of the operation 'write'
Issue 7768: Delete-Operation
Issue 7769: PLM_message[0..*] type
Issue 7770: Rename insert-Operation into import_data
Issue 7771: The predicates data type shall be clarified and described in more detail.
Issue 7772: "predicates" data type
Issue 7774: append examples
Issue 7775: Clarify "Signature" attribute of PLM_session_context type
Issue 7827: Separate Soap Header Elements
Issue 7828: PDTnet Queries Conformance Point
Issue 7830: PropertiesDescriptors for Operations with properties parameter
Issue 7836: XML Mapping of PIM Type Integer
Issue 7837: Replace Simple_property_value by Simple_property_association
Issue 7838: New element type required
Issue 7839: Work_request and Work_order are Root_objects
Issue 7840: Organization_relationhip
Issue 7841: Definition of project
Issue 7842: Date and Time types shall be mapped according to ISO 8601.
Issue 7843: Person_in_organization_relationship
Issue 7844: Align simple property assignment mechanism with STEP AP214 maint. version
Issue 7867: Extract Schema-Element from WSDL into separate File
Issue 7870: change name of element Cause in PLM_exception to Linked_exception
Issue 7871: Value of PLM_container.version_id
Issue 7872: New PLM_messages
Issue 7873: typo in namespace of soap body of write operation
Issue 7874: Downloadable URIs for PLMServices documents
Issue 7883: How to satisfy relationship multiplicities of '1..*' in query results?
Issue 7885: chapter 8.10 (Generic Queries Conformance Point
Issue 7886: Chapter 8.9 (Query Type)
Issue 7897: chapter 8.9 (Query Type),
Issue 7899: chapter 8.12.4 (Approval Query)
Issue 7924: New Attributes for Item- and Document_query
Issue 7925: Filter start nodes of queries for associated nodes by type
Issue 7926: New Predicate Types for Negation and Attribute Pattern
Issue 7927: Root Elements of XML Schemas
Issue 7928: Rename Approval_query to Associated_approval_query
Issue 7929: Attributes of the Alias_identification_query
Issue 7930: Rename Item_relationship_query to Item_version_relationship_query
Issue 7931: Rename Object_not_exist_exception to Unknown_object_uid_exception
Issue 7932: Rename Authentification_exception to Authentication_exception
Issue 7933: New exception type Invalid_session_id_exception
Issue 7934: Required Property for get_connection_factory and get_connection
Issue 7935: figures missing
Issue 7936: some numbering mismatch in chapter 7.7 7.7.11.1
Issue 7937: First sentence in Chapter 7.4.3.1
Issue 7943: Use of the Attribute_pattern_attribute in the specified queries
Issue 7944: Separation of Timeout_exception
Issue 7992: Predicates for relating objects
Issue 7998: Add complex type Person_in_organization_relationship
Issue 7999: Add missing query Activity_element_query
Issue 8000: Add missing query Activity_relationship_query
Issue 8001: Add missing Associated_activity_query
Issue 8002: Add missing Associated_date_organization_query
Issue 8003: Add missing Associated_person_organization_query
Issue 8004: Add missing Organization_relationship_query
Issue 8005: Add missing Work_request_query
Issue 8006: Add missing query Work_request_relationship_query
Issue 8007: Add missing query Work_request_classification_query
Issue 8008: Add missing query Work_request_scope_
Issue 8009: Add missing query Person_in_organization_relationship_query
Issue 8010: Add missing query Project_assignment_query
Issue 8299: Section: 8.12.11
Issue 8300: Section: 8.12.10
Issue 8333: Special Exception for unsupported operations
Issue 8334: Batch Queries
Issue 8400: Description of use of type PLM_container
Issue 8434: New Abstract Base Class for Relationship_queries
Issue 8435: Redundant attribute identifier_name in Identifier_predicate
Issue 8436: Labeling of optional attributes
Issue 8441: New Queries to resolve aliases.
Issue 8448: Enumerations of query start and target types
Issue 8583: Some numbering mismatch in section 8.9
Issue 8584: New Query type Conditional_query
Issue 8585: New Query for Assembly component placement
Issue 7566: typo in line 299 (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Clarification
Severity: Minor
Summary:
in document mantis/04-04-05 from the PLM Services 1.0 specification is a typo in line 299: <xs:element name="Effectifity_context" type="xs:string" minOccurs="0"/> The element name should be "Effectivity_context".
Resolution:
Revised Text: Change the name of the 3rd parameter of the effectivity_query from "Effectifity_context" to "Effectivity_context".
Revised Text:
Replace on page 564 of dtc/04-11-04 "Effectifity_context" to "Effectivity_context"
Actions taken:
July 7, 2004: received issue
August 1, 2005: closed issue
Issue 7685: targetNamespace of the xs:schema element in the wsdl:types section (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Uncategorized Issue
Severity:
Summary: The targetNamespace of the xs:schema element in the wsdl:types section of the PLM Services WSDL document schould have a different value as the targetNamespace of the root element of the WSDL. (Both targetNamespace values are "http://www.omg.org/PLMServices1.0/Services")
Resolution:
Revised Text: Resolution:
WSDL target name schema remains http://www.omg.org/PLMServices1.0/Services
target name schema XML Schema shall be http://www.omg.org/PLMServices1.0/InformationalModel
target name schema Services in WSDL shall be http://www.omg.org/PLMServices1.0/ComputationalModel
WSDL will include Computational model schema
and Informational Model schema
Adjust changes to reflect 1.1 versioning.
Revised Text:
p. 521 replace http://www.omg.org/PLMServices1.0/XMLSchema by http://www.omg.org/PLMServices1.1/InformationalModel
p. 559 replace wsdl:import namespace="http://www.omg.org/PLMServices1.0/XMLSchema by
wsdl:import namespace="http://www.omg.org/PLMServices1.1/InformationalModel
replace <xs:schema targetNamespace=http://www.omg.org/PLMServices1.0/Services by
<xs:schema targetNamespace="http://www.omg.org/PLMServices1.1/ComputationalModel
Actions taken:
September 8, 2004: received issue
August 1, 2005: closed issue
Issue 7723: Empty Interfaces in PLM Services Specification dtc/04-05-05 (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Uncategorized Issue
Severity:
Summary: In several places in the model, there are classes that have both realization and association relationships with interfaces. An example is the Specification_expression class that holds association and realization relationships with the Specification_operand_select interface. The PLM Adopted Specification (OMG document dtc/04-05-05) in its section 7.7.12 describes the PLM Configuration Management Package. In it, figure 104 illustrates the association relationship between the Specification_expression and the Specification_operand_select. Later in section 7.7.12.42 the interface Specification_operand_select is defined as: " This empty interface is defined to provide a placeholder for the following classes: Specification_expression and Specification"
The realization relationhsip between a class and an interface is perfectly clear to me. It is the association relationships that "provides a placeholder" that I cannot understand. Does it mean that such a placeholder is an instance of an element that implements the interface?
Resolution:
Revised Text: Resolution:
The Specification_operand_select participates both in
- an association to Specification and
- as an relationship between Specification_inclusions
An Specification_operand_select may not be instantiated but is always realized as either Specification_expression or Specification, which is descibed as a "placeholder for instances of Specification_expression and Specification" as roles in that relationship. The empty interface does not have any other purpose but to mark the two classes to participate in that relationship.
Revised Text:
Change all occurrences of the phrase:
This empty interface is defined to provide a placeholder for the following
to
This empty interface is realized by the following classes:
Actions taken:
September 9, 2004: received issue
August 1, 2005: closed issue
Issue 7724: typo in section 7.7.12.39 (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Uncategorized Issue
Severity:
Summary: I'll would also like to point to section 7.7.12.39 which I think is a typo. It think that it should be the associations subsection of 7.7.12.38 that talks about Specification_inclusion
Resolution:
Revised Text:
Actions taken:
September 9, 2004: received issue
August 1, 2005: closed issue
Discussion: See issue 7936 for disposition
Issue 7740: Attributes (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Enhancement
Severity: Minor
Summary: the Occurrencies of the Attributes 'role_name', 'role_declaring_type_name' and 'inverse' of the Class 'Location_step' should be coupled as followed: <xs:complexType name="Location_step"> <xs:sequence> <xs:sequence minOccurs="0"> <xs:element name="Role_name" type="xs:string" /> <xs:element name="Role_declaring_type_name" type="xs:string"/> <xs:element name="Inverse" type="xs:boolean" minOccurs="0"/> </xs:sequence> <xs:element name="Predicate" type="Predicate" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="Next_step" type="Location_step" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> because the attributes 'role_declaring_type_name' and 'inverse' make sense only when 'role_name' is set; and a 'role_name' without a 'role_declaring_type' seems problematical.
Resolution:
Revised Text: Resolution:
The general resolution of this issue would require a resolution to the deferred issue 7826. See discussion there, also.
All defined queries which allow the definition of a value for the attribute role_ name of their Location_step instances are provided with a value role_ declaring_type_name.
Revised Text:
Adjust the following definitions (corresponding figure numbers in brackets) by introducing a role_declaring_type_name attribute:
123 Alias_identification_query
125 Application_context_query
126 Approval_query (renamed to Associated_approval_query)
127 Approval_relationship_query
??? Assembly_structure_query
129 Associated_document_query
130 Associated_file_query
132 Associated_property_query (with helper queries
Associated_item_property_query and Associated_process_property_query)
133 Class_structure_query
134 Complex_product_query
135 Configuration_query
136 Design_discipline_item_definition_query
138 Document_property_query
139 Document_query
140 Document_representation_query
141 Document_structure_query
144 Effectivity_query
146 Item_query
147 Item_relationship_query (renamed to Item_version_relationship_query)
148 Item_use_query
149 Item_version_query
152 Organization_query
153 Product_class_query
154 Product_structure_query
155 Simple_property_value_query (renamed to Simple_property_query)
Actions taken:
September 13, 2004: received issue
August 1, 2005: closed issue
Issue 7741: complexTypes 'Item_version' and 'Document_version' (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Enhancement
Severity: Minor
Summary: The complexTypes 'Item_version' and 'Document_version' should have an attribute 'xs:nillable' with value 'true' to allow dummy Item_versions in the results of Item_Queries and dummy Document_versions in the results of Document_queries.
Resolution:
Revised Text: Resolution:
Change WSDL as proposed in issue summary.
Revised Text:
p. 532: add nillable="true" to Document_version attribute declaration of Document
p. 540: add nillable="true" to Item_version attribute declaration of Item.
Actions taken:
September 13, 2004: received issue
August 1, 2005: closed issue
Issue 7745: Implementation of the operation 'write' (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Enhancement
Severity: Minor
Summary: It should be allowed for the Implementation of the operation 'write' of the interface 'PLM_connection' not only to change the attribute 'uid' of a new PLM_object but also to change the attributes 'Id', 'Document_id', and/or 'File_id'.
Resolution:
Revised Text: Resolution:
Change the wording in specification.
Revised Text:
Change first paragraph of explanatory text in section 8.8.1 as indicated:
The operation write() expects a PLM_container instance as an input parameter. The PLM system uses the uid-Attributes of the single nodes in the PLM_container instance to identify which nodes already exist in the PLM System and which nodes have to be created. The operation has a return value of PLM_message objects. In this return value the implementation can give information about on the inserted manipulated objects is given. If the client don't want theseignores this informations, it can set the parameter fill_result_list shall be set to FALSE. By creating a new node, it is for a PLM system in general not possible feasible to use the uid- Aattributes from of the parameter data set. The operation adds one Object_uid_changed_message for each changed object. If the uid-Attribute, the id-Attribute (e.g. id, name, document_id, file_id) or any other attribute has changed the new_object_uid, the new_object_id or the remainder_unchanged attributes of the Object_changed_message uid-Attributes to the result listare set accordingly. The result list is also used to inform the client, when if not all objects of the data parameter was were inserted in the PLM System. Thiese information are is added to the result list as Object_not_inserted_message instances.
Actions taken:
September 15, 2004: received issue
August 1, 2005: closed issue
Issue 7768: Delete-Operation (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Significant
Summary: Delete-Operation, as described for the PLM_connection interface in section 8.8.4 shall return an error message, potentially a PLM_message[0..*] type.
Resolution:
Revised Text: Resolution:
Introduce new complex type Object_not_deleted_message
Add PLM_Messages as return type.
Replace Figure 118 to specify all PLM_messages in general. No extra subsection on PLM_messages is introduced.
See also issue 7769.
Revised Text:
Add Object_not_deleted_message declaration to ComputationalModel.xsd
<xs:complexType name="Object_not_deleted_message">
<xs:complexContent>
<xs:extension base="PLM_message"/>
</xs:complexContent>
</xs:complexType>
Replace Fig. 117
Replace Fig. 118
Replace Fig. 118 title by "Message types"
Add as 3rd sentence into paragraph in section 8.8.4: Delete Operation
If objects could not be deleted for some reasons, for each of those objects an Object_not_deleted_message instance that describes the reason has to returned in the result list.
Add as last sentence
The operation has a return value of PLM_message objects. For each object which could not be deleted a single Object_not_deleted_message is added to this list.
Replace definition of delete message
delete(in uids: UID[0..*]): PLM_message[0..*]
Actions taken:
September 20, 2004: received issue
August 1, 2005: closed issue
Issue 7769: PLM_message[0..*] type (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Minor
Summary: PLM_message[0..*] type as defined with the write-Operation in section 8.7.1 shall be further detailed to capture more specific information for all methods in PLM_connection interface. Potentially, more subtypes are required to signal error situations. Therefore, this type shall be defined in a separate section.
Resolution:
Revised Text:
Actions taken:
September 20, 2004: received issue
August 1, 2005: closed issue
Discussion: See issue 7768 for disposition
Issue 7770: Rename insert-Operation into import_data (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Significant
Summary: Rename insert-Operation into import_data, which reflects better the semantics of the insert operation as described in section 8.7.3. Consequently, rename export-Operation into export_data for consistency.
Resolution:
Revised Text: Resolution:
Change as proposed, but do not change
"query" to "read_data"
"write" to "write_data"
or
"PLM_container" to "PLM_data"
Revised Text:
Change names in WSDL.
p. 326, section 8.8.2 edit as follows:
8.8.2 Export_data Operation
export_data(start_nodes: Query, properties: PLM_property[0..*]):PLM_container
The operation export_data() expects an Query instance as its input parameter start_nodes. It is implementation specific which result this operation returns in the PLM_container. The ex-port_data operation accepts a set of PLM_property objects as additional parameter. The allowed values and the semantic of this parameter are implementation specific, too.
p. 326, section 8.8.3 edit as follows:
8.8.3 Insert Import_data Operation
insertimport_data(data: PLM_container, properties: PLM_property[0..*]): PLM_message[0..*]
The operation insertimport_data() expects a PLM_container instance as an input parameter. The PLM System may transform, filter or extent the input data prior writing to its data base. The actual behavior is implementation specific. The insert import_data operation accepts a set of PLM_property objects as additional parameter. The allowed values and the semantic of this parameter are implementation specific, too. The return type of the insert import_data operation is the abstract type PLM_message.
Actions taken:
September 20, 2004: received issue
August 1, 2005: closed issue
Issue 7771: The predicates data type shall be clarified and described in more detail. (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Minor
Summary: The predicates data type shall be clarified and described in more detail.
Resolution:
Revised Text: Resolution:
Change as proposed. Add new subsection 8.12.1 at the end of section 8.12.Generic Queries Conformance Point. This resolution resolves issue 7885, 7944, 7926, and 8435.
Revised Text:
Add the following text at the end of seciont 8.12 Generic Queries:
8.12.1. Specialized Predicates for filtering of object sets
Each non-abstract spezialisation of the abstract class Predicate defines a constraint for filtering object sets. Filtering means that the algorithm is applied to each object in the set and only the objects which fit the constraint remain in the set. The following non-abstract specializations of the class Predicate are defined in this specification:
8.12.1.1 Alternative_predicate
Figure 1 Class diagram of class Alternative_predicate
An object fulfill an Alternative_predicate constraint if it fulfill at least one the Predicate instances referenced by the relationship predicate of the Alternative_predicate.
8.12.1.2 Attribute_equals_predicate
Figure 2 Class diagram of class Attribute_equals_predicate
An object fulfill an Attribute_equals_predicate if it has an attribute with the name given in the attribute attribute_name of the Attribute_equals_predicate and if that attribute has a value which is equals to the value given by the attribute attribute_value of the Attribute_equals_predicate.
8.12.1.3 Attribute_greater_than_predicate
Figure 3 Class diagram of class Attribute_greater_than_predicate
An object fulfill an Attribute_greater_than_predicate if it has an attribute with the name given in the attribute attribute_name of the Attribute_greater_than_predicate and if that attribute has a value which is greater than the value given by the attribute attribute_value of the Attribute_greater_than_predicate.
8.12.1.4 Attribute_less_than_predicate
Figure 4 Class diagram of class Attribute_less_than_predicate
An object fulfill an Attribute_less_than_predicate if it has an attribute with the name given in the attribute attribute_name of the Attribute_less_than_predicate and if that attribute has a value which is less than the value given by the attribute attribute_value of the Attribute_less_than_predicate.
8.12.1.5 Attribute_pattern_predicate
Figure 5 Class diagram of class Attribute_pattern_predicate
An object fulfill an Attribute_pattern_predicate if it has an attribute with the name given in the attribute attribute_name of the Attribute_pattern_predicate and if that attribute has a value which match the pattern given by the attribute attribute_value of the Attribute_pattern_predicate. This specification uses the pattern language defined in [XML Schema W3C Recommendation 28 October 2004].
8.12.1.6 Identifier_predicate
Figure 6 Class diagram of class Identifier_predicate
All classes which have a composition of type Alias_identification have also an attribute that corresponds with the attribute alias_id of the related Alias_identification. These corresponding attributes are identifying attributes and can be filtered by Identifier_predicates.
There are three alternatives how an object can fulfill the constraints of an Identifier_predicate.
1. If the attribute identifier_scope of the Identifier_predicate is not set, an object fulfill the Identifier_predicate if it has an identifier attribute and if that attribute has a value that matches the pattern given by the attribute identifier_value of the Identifier_predicate.
2. If the attribute identifier_scope of an Identifier_predicate is set, an object fulfill the Identifier_predicate if it has an Alias_identification with an value for its attribute alias_scope that is equals to the value of the attribute identifier_scope and if the attribute alias_id of the Alias_identification has a value that matches the pattern given by the attribute identifier_value of the Identifier_predicate.
3. If the attribute identifier_scope of an Identifier_predicate is set, an object fulfill the Identifier_predicate if it has an identifier attribute and if that attribute has a value that matches the pattern given by the attribute identifier_value of the Identifier_predicate and if it is referenced by the relationship is_applied_to of a Person_organization_assignment_instance and the attribute role of the Person_organization_assignment instance has the value "id owner" and the Person_organization_assignment is referenced by the composition person_organization_assignment of an Organization instance and the attribute id of the Organization instance is equals to the value of the attribute identifier_scope of the Identifier_predicate.
This specification uses the pattern language defined in [XML Schema W3C Recommendation 28 October 2004].
8.12.1.7 Relationship_predicate
Figure 7 Class diagram of class Relationship_predicate
An object fulfill a Relationship_predicate constraint if it fulfill the following partial constraints:
· The object is related with another object that fulfill all the Predicate instances referenced by the relationship predicate of the Relationship_predicate.
· If the value of the attribute inverse of the Relationship_predicate is not true and if the attribute role_name is set, the role name of the other object in the relationship must be equals to the value of the attribute role_name of the Relationship_predicate.
· If the value of the attribute inverse of the Relationship_predicate is true and if the attribute role_name is set, the role name of this object in the relationship must be equals to the value of the attribute role_name of the Relationship_predicate.
· If the attribute role_declaring_type_name is set, the relationship must be defined in a type which name is equals to the value of the attribute role_decalring_type_name.
8.12.1.8 String_select_predicate
Figure 8 Class diagram of class String_select_predicate
An object fulfill a String_select_predicate if it has an attribute of type String_select with the name given in the attribute string_name of the String_select_predicate and if it fulfill one of the following constaints:
· If the attribute string_language is not set and the attribute with the name given by the attribute string_name must be a Default_language_string which value is equals to the value given by the attribute string_value of the String_select_predicate.
· If the attribute string_language is set and equals the default language of the server implementation the attribute with the name given by the attribute string_name must be an instance of Default_language_string_with a value which is equals to the value given by the attribute string_value of the String_select_predicate or an instance of Multi_language_string with a primary_language_dependent_string which value is equals to the value given by the attribute string_value of the String_select_predicate.
· If the attribute string_language is set and not equals the default language of the server implementation the attribute with the name given by the attribute string_name must be an instanceof Multi_language_string and have a additional_language_dependent_string which value is equals to the value given by the attribute string_value of the String_select_predicate.
8.12.1.9 Type_predicate
Figure 9 Class diagram of class Type_predicate
If the value of the attribute exact_type_match of an Type_predicate is TRUE, an object fulfill that Type_predicate constraint if it has exact the type specified in the attribute type_name of the Type_predicate.
If the value of the attribute exact_type_match of an Type_predicate is not TRUE, an object fulfill that Type_predicate constraint if it is an instance of the type specified in the attribute type_name of the Type_predicate or an instance of a derivation of that type.
Replace the definition of complexType Attribute_predicate in the PLMComputationalModel.xsd by the following definitions:
<xs:complexType name="Attribute_predicate" abstract="true">
<xs:complexContent>
<xs:extension base="Predicate">
<xs:sequence>
<xs:element name="Attribute_name" type="xs:string"/>
<xs:element name="Attribute_value" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Attribute_equals_predicate">
<xs:complexContent>
<xs:extension base="Attribute_predicate"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Attribute_greater_than_predicate">
<xs:complexContent>
<xs:extension base="Attribute_predicate"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Attribute_less_than_predicate">
<xs:complexContent>
<xs:extension base="Attribute_predicate"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Attribute_pattern_predicate">
<xs:complexContent>
<xs:extension base="Attribute_predicate"/>
</xs:complexContent>
</xs:complexType>
Actions taken:
September 20, 2004: received issue
August 1, 2005: closed issue
Issue 7772: "predicates" data type (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Minor
Summary: The "predicates" data type shall be clarified and described in more detail in section 8.9.
Resolution:
Revised Text:
Actions taken:
September 20, 2004: received issue
August 1, 2005: closed issue
Discussion: See issue 7771 for disposition
Issue 7774: append examples (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Minor
Summary: Examples (incl. SOAP responses) for object_factory, get_connection, close, write, delete, export_data, import_data and exceptions structures shall be appended
Resolution:
Revised Text: Resolution:
Change as proposed. Add section 9.3.2 as given below:
Revised Text:
9.3.2 Realization of Use cases
9.3.2.1 Authentication
Request
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <get_connection xmlns="http://omg.org/PLMServices1-0/PLM_connection_factory#get_connection"> <properties xmlns=""> <PLM_property> <Name>user</Name> <Value>test</Value> </PLM_property> <PLM_property> <Name>password</Name> <Value>test</Value> </PLM_property> </properties> </get_connection> </soapenv:Body></soapenv:Envelope>
Response
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <get_connectionResponse xmlns="http://omg.org/PLMServices1-0/PLM_connection_factory#get_connection"> <get_connectionReturn> <Location xmlns="">http://localhost:8081/axis/services/PLM_connection</Location> <Id xmlns="">3426814710318558298</Id> </get_connectionReturn> </get_connectionResponse> </soapenv:Body></soapenv:Envelope>
9.3.2.2 Start node identification
The "start node identification" is realized by the concatenation of the following three queries:
· Item_query
· Item_version_query
· Design_discipline_item_definition_query
Query Concatenation
Request
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:string" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">5119095223646270101</ns1:Id> </soapenv:Header> <soapenv:Body> <query xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <query xsi:type="ns2:Item_query" xmlns:ns2="http://www.omg.org/PLMServices1.1/ComputationalModel" xmlns=""> <Next_query xsi:type="ns2:Item_version_query"> <Next_query xsi:type="ns2:Design_discipline_item_definition_query"/> <Id>0001,1</Id> </Next_query> <Id>A4000100000</Id> <Name>Trego</Name> </query> </query> </soapenv:Body></soapenv:Envelope>
Response
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:long" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">5119095223646270101</ns1:Id> </soapenv:Header> <soapenv:Body> <queryResponse xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <ns2:response xsi:type="ns2:PLM_container" uid="plm_container_0" version_id="1.0" xmlns:ns2="http://www.omg.org/PLMServices1.1/InformationalModel"> <ns2:Application_context uid="Application_context_40"> <ns2:Application_domain>Application_domain_1</ns2:Application_domain> <ns2:Life_cycle_stage>design</ns2:Life_cycle_stage> </ns2:Application_context> <ns2:Item uid="Item_2920"> <ns2:Id>A4000100000</ns2:Id> <ns2:Name>Trego</ns2:Name> <ns2:Item_version uid="Item_version_4070"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_4170"> <ns2:Id>pv0002</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> </ns2:Design_discipline_item_definition> <ns2:Design_discipline_item_definition uid="design_discipline_item_definition_0"> <ns2:Id>design_discipline_item_definition_id_0</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> </ns2:response> </queryResponse> </soapenv:Body></soapenv:Envelope>
9.3.2.3 Browsing down product structure data
The "browsing down product structure data" is realized by the concatenation of the following five queries:
· Item_query
· Item_version_query
· Design_discipline_item_definition_query
· Assembly_structure_query
· Item_classification_query
Query
Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:string" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">3624345198239672382</ns1:Id> </soapenv:Header> <soapenv:Body> <query xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <query xsi:type="ns2:Item_query" xmlns:ns2="http://www.omg.org/PLMServices1.1/ComputationalModel" xmlns=""> <Next_query xsi:type="ns2:Item_version_query"> <Next_query xsi:type="ns2:Design_discipline_item_definition_query"> <Next_query xsi:type="ns2:Assembly_structure_query"> <Maximum_recursion_number>1</Maximum_recursion_number> <Next_query xsi:type="ns2:Item_classification_query"/> </Next_query> </Next_query> <Id>0001,1</Id> </Next_query> <Id>A4000100000</Id> <Name>Trego</Name> </query> </query> </soapenv:Body></soapenv:Envelope>
Response
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:long" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">3624345198239672382</ns1:Id> </soapenv:Header> <soapenv:Body> <queryResponse xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <ns2:response xsi:type="ns2:PLM_container" uid="plm_container_0" version_id="1.0" xmlns:ns2="http://www.omg.org/PLMServices1.1/InformationalModel"> <ns2:Application_context uid="Application_context_40"> <ns2:Application_domain>Application_domain_1</ns2:Application_domain> <ns2:Life_cycle_stage>design</ns2:Life_cycle_stage> </ns2:Application_context> <ns2:Item uid="Item_2920"> <ns2:Id>A4000100000</ns2:Id> <ns2:Name>Trego</ns2:Name> <ns2:Item_version uid="Item_version_4070"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_4170"> <ns2:Id>pv0002</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> <ns2:Item_definition_instance_relationship xsi:type="ns2:Next_higher_assembly" uid="Next_higher_assembly_26820"> <ns2:Related>Single_instance_26820</ns2:Related> </ns2:Item_definition_instance_relationship> <ns2:Item_definition_instance_relationship xsi:type="ns2:Next_higher_assembly" uid="Next_higher_assembly_27920"> <ns2:Related>Single_instance_27920</ns2:Related> </ns2:Item_definition_instance_relationship> <ns2:Item_definition_instance_relationship xsi:type="ns2:Next_higher_assembly" uid="Next_higher_assembly_29920"> <ns2:Related>Single_instance_29920</ns2:Related> </ns2:Item_definition_instance_relationship> <ns2:Item_definition_instance_relationship xsi:type="ns2:Next_higher_assembly" uid="Next_higher_assembly_31220"> <ns2:Related>Single_instance_31220</ns2:Related> </ns2:Item_definition_instance_relationship> </ns2:Design_discipline_item_definition> <ns2:Design_discipline_item_definition uid="design_discipline_item_definition_0"> <ns2:Id>design_discipline_item_definition_id_0</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Item uid="Item_3280"> <ns2:Id>A4000040000</ns2:Id> <ns2:Name>Mulde</ns2:Name> <ns2:Item_version uid="Item_version_25300"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_25400"> <ns2:Id>pv0038</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> <ns2:Item_instance xsi:type="ns2:Single_instance" uid="Single_instance_26820"> <ns2:Id>Single_instance_26820_ID</ns2:Id> </ns2:Item_instance> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Item uid="Item_2930"> <ns2:Id>A4000010000</ns2:Id> <ns2:Name>Fahrerhaus</ns2:Name> <ns2:Item_version uid="Item_version_4360"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_4450"> <ns2:Id>pv0003</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> <ns2:Item_instance xsi:type="ns2:Single_instance" uid="Single_instance_27920"> <ns2:Id>Single_instance_27920_ID</ns2:Id> </ns2:Item_instance> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Item uid="Item_3040"> <ns2:Id>A4000030000</ns2:Id> <ns2:Name>Antrieb</ns2:Name> <ns2:Item_version uid="Item_version_10940"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_11030"> <ns2:Id>pv0014</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> <ns2:Item_instance xsi:type="ns2:Single_instance" uid="Single_instance_29920"> <ns2:Id>Single_instance_29920_ID</ns2:Id> </ns2:Item_instance> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Item uid="Item_3160"> <ns2:Id>A4000020000</ns2:Id> <ns2:Name>Rahmen</ns2:Name> <ns2:Item_version uid="Item_version_18120"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_18210"> <ns2:Id>pv0026</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> <ns2:Item_instance xsi:type="ns2:Single_instance" uid="Single_instance_31220"> <ns2:Id>Single_instance_31220_ID</ns2:Id> </ns2:Item_instance> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Specific_item_classification uid="Specific_item_classification_31870"> <ns2:Associated_item>Item_2920 Item_2930 Item_3040 Item_3160 Item_3280</ns2:Associated_item> <ns2:Classification_name>assembly</ns2:Classification_name> </ns2:Specific_item_classification> <ns2:Specific_item_classification uid="Specific_item_classification_31890"> <ns2:Associated_item>Item_2920 Item_2930 Item_3040 Item_3160 Item_3280</ns2:Associated_item> <ns2:Classification_name>part</ns2:Classification_name> </ns2:Specific_item_classification> </ns2:response> </queryResponse> </soapenv:Body></soapenv:Envelope>
9.3.2.4 Browsing up product structure data
The "browsing up product structure data" is realized by the concatenation of the following five queries:
· Item_query
· Item_version_query
· Design_discipline_item_definition_query
· Item_use_query
· Item_classification_query
Query
Request
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:string" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">-1271763691436743697</ns1:Id> </soapenv:Header> <soapenv:Body> <query xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <query xsi:type="ns2:Item_query" xmlns:ns2="http://www.omg.org/PLMServices1.1/ComputationalModel" xmlns=""> <Next_query xsi:type="ns2:Item_version_query"> <Next_query xsi:type="ns2:Design_discipline_item_definition_query"> <Next_query xsi:type="ns2:Item_use_query"> <Maximum_recursion_number>1</Maximum_recursion_number> <Next_query xsi:type="ns2:Item_classification_query"/> </Next_query> </Next_query> <Id>0001,1</Id> </Next_query> <Id>A4000040000</Id> <Name>Mulde</Name> </query> </query> </soapenv:Body></soapenv:Envelope>
Response
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:long" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">-1271763691436743697</ns1:Id> </soapenv:Header> <soapenv:Body> <queryResponse xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <ns2:response xsi:type="ns2:PLM_container" uid="plm_container_0" version_id="1.0" xmlns:ns2="http://www.omg.org/PLMServices1.1/InformationalModel"> <ns2:Application_context uid="Application_context_40"> <ns2:Application_domain>Application_domain_1</ns2:Application_domain> <ns2:Life_cycle_stage>design</ns2:Life_cycle_stage> </ns2:Application_context> <ns2:Item uid="Item_3280"> <ns2:Id>A4000040000</ns2:Id> <ns2:Name>Mulde</ns2:Name> <ns2:Item_version uid="Item_version_25300"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_25400"> <ns2:Id>pv0038</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> <ns2:Item_instance xsi:type="ns2:Single_instance" uid="Single_instance_26820"> <ns2:Id>Single_instance_26820_ID</ns2:Id> </ns2:Item_instance> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Item uid="Item_2920"> <ns2:Id>A4000100000</ns2:Id> <ns2:Name>Trego</ns2:Name> <ns2:Item_version uid="Item_version_4070"> <ns2:Id>0001,1</ns2:Id> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_4170"> <ns2:Id>pv0002</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> <ns2:Item_definition_instance_relationship xsi:type="ns2:Next_higher_assembly" uid="Next_higher_assembly_26820"> <ns2:Related>Single_instance_26820</ns2:Related> </ns2:Item_definition_instance_relationship> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Specific_item_classification uid="Specific_item_classification_31870"> <ns2:Associated_item>Item_2920 Item_3280</ns2:Associated_item> <ns2:Classification_name>assembly</ns2:Classification_name> </ns2:Specific_item_classification> <ns2:Specific_item_classification uid="Specific_item_classification_31890"> <ns2:Associated_item>Item_2920 Item_3280</ns2:Associated_item> <ns2:Classification_name>part</ns2:Classification_name> </ns2:Specific_item_classification> </ns2:response> </queryResponse> </soapenv:Body></soapenv:Envelope>
9.3.2.5 Download of Metadata including structures
The "download of metadata including structures" is realized by the concatenation of the following five queries:
· Item_query
· Item_version_query
· Design_discipline_item_definition_query
· Item_version_relationship_query
· Item_classification_query
Query
Request
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:string" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">-7356016370443115288</ns1:Id> </soapenv:Header> <soapenv:Body> <query xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <query xsi:type="ns2:Item_query" xmlns:ns2="http://www.omg.org/PLMServices1.1/ComputationalModel" xmlns=""> <Next_query xsi:type="ns2:Item_version_query"> <Next_query xsi:type="ns2:Design_discipline_item_definition_query"> <Next_query xsi:type="ns2:Item_version_relationship_query"> <Next_query xsi:type="ns2:Item_classification_query"/> </Next_query> </Next_query> <Id>0001,1</Id> </Next_query> <Id>A4000100000</Id> <Name>Trego</Name> </query> </query> </soapenv:Body></soapenv:Envelope>
Response
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <ns1:Id soapenv:mustUnderstand="0" xsi:type="xsd:long" xmlns:ns1="http://www.omg.org/PLMServices1.1/Services">-7356016370443115288</ns1:Id> </soapenv:Header> <soapenv:Body> <queryResponse xmlns="http://omg.org/PLMServices1-0/PLM_connection#query"> <ns2:response xsi:type="ns2:PLM_container" uid="plm_container_0" version_id="1.0" xmlns:ns2="http://www.omg.org/PLMServices1.1/InformationalModel"> <ns2:Application_context uid="Application_context_40"> <ns2:Application_domain>Application_domain_1</ns2:Application_domain> <ns2:Life_cycle_stage>design</ns2:Life_cycle_stage> </ns2:Application_context> <ns2:Item uid="Item_2920"> <ns2:Id>A4000100000</ns2:Id> <ns2:Name>Trego</ns2:Name> <ns2:Item_version uid="Item_version_4070"> <ns2:Id>0001,1</ns2:Id> <ns2:Item_version_relationship uid="item_version_relationship_0"> <ns2:Related>Item_version_12450</ns2:Related> <ns2:Relation_type>relation_type_0</ns2:Relation_type> </ns2:Item_version_relationship> <ns2:Item_version_relationship uid="item_version_relationship_1"> <ns2:Related>Item_version_10310</ns2:Related> <ns2:Relation_type>relation_type_1</ns2:Relation_type> </ns2:Item_version_relationship> <ns2:Design_discipline_item_definition xsi:type="ns2:Assembly_definition" uid="Assembly_definition_4170"> <ns2:Id>pv0002</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> </ns2:Design_discipline_item_definition> <ns2:Design_discipline_item_definition uid="design_discipline_item_definition_0"> <ns2:Id>design_discipline_item_definition_id_0</ns2:Id> <ns2:Initial_context>Application_context_40</ns2:Initial_context> </ns2:Design_discipline_item_definition> </ns2:Item_version> </ns2:Item> <ns2:Item uid="Item_3070"> <ns2:Id>A4000002101</ns2:Id> <ns2:Name>Rad</ns2:Name> <ns2:Item_version uid="Item_version_12450"> <ns2:Id>0001,1</ns2:Id> </ns2:Item_version> </ns2:Item> <ns2:Item uid="Item_3030"> <ns2:Id>A4000003902</ns2:Id> <ns2:Name>Tuer rechts</ns2:Name> <ns2:Item_version uid="Item_version_10310"> <ns2:Id>0001,1</ns2:Id> </ns2:Item_version> </ns2:Item> <ns2:Specific_item_classification uid="Specific_item_classification_31870"> <ns2:Associated_item>Item_2920</ns2:Associated_item> <ns2:Classification_name>assembly</ns2:Classification_name> </ns2:Specific_item_classification> <ns2:Specific_item_classification uid="Specific_item_classification_31890"> <ns2:Associated_item>Item_2920 Item_3030 Item_3070</ns2:Associated_item> <ns2:Classification_name>part</ns2:Classification_name> </ns2:Specific_item_classification> <ns2:Specific_item_classification uid="Specific_item_classification_1"> <ns2:Associated_item>Item_3030 Item_3070</ns2:Associated_item> <ns2:Classification_name>detail</ns2:Classification_name> </ns2:Specific_item_classification> </ns2:response> </queryResponse> </soapenv:Body></soapenv:Envelope>
Actions taken:
September 20, 2004: received issue
August 1, 2005: closed issue
Issue 7775: Clarify "Signature" attribute of PLM_session_context type (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Minor
Summary: Clarify "Signature" attribute of PLM_session_context type
Resolution:
Revised Text:
Actions taken:
September 20, 2004: received issue
August 1, 2005: closed issue
Discussion: See issue 7827 for disposition
Issue 7827: Separate Soap Header Elements (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Uncategorized Issue
Severity:
Summary: The SOAP Header Elements of ComplexType Session_context
should be separated in a set of single SOAP Header elements
of SimpleType string, because it is difficult to handle SOAP Header
elements of ComplexType with current WebService-Frameworks like AXIS
Resolution:
Revised Text: Resolution:
Eliminate complex object Session_context. Follow instructions below.
Revised Text:
In PLM Services.wsdl: add for every wsdl:input element two soap:header elements as follows:
<wsdl:input>
<soap:header message="Session_id_header" part="session_id" use="literal"/>
<soap:header message="Signature_header" part="signature" use="literal"/>
in ComputationalModel.xsd add root-element definitions:
<xs:element name="session_id" type="xs:string"/>
<xs:element name="signature" type="xs:string"/>
Actions taken:
October 1, 2004: received issue
August 1, 2005: closed issue
Issue 7828: PDTnet Queries Conformance Point (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Uncategorized Issue
Severity:
Summary: The Queries defined in the PDTnet Queries Conformance Point
do not match the Use Cases defined in Chapter 2.2 but are only
specific Queries which can be used as building blocks to define
Queries that fulfill the requirements of the Use Cases.
So this Conformance Point should be renamed in
"Specific Queries Conformance Point" and a new Conformance Point
should be added to the Specification which define the Queries,
which fulfill exactly the requirements of the use cases.
Resolution:
Revised Text: Resolution:
The existing conformance point "PDTnet Queries Conformance Point" is renamed to "Specific Queries Conformance Point" and a new conformance point "PDTnet Queries Conformance Point" with ten queries is introduced.
For the definitions of the semantics of the new queries one new construct "Conditional_query" (see merged issue 8584) and one new specific_query "Assembly_component_placement_query" (see resolution to issue 8585) are needed, and are defined too.
Revised Text
Change single sentence paragraphin section 8.9 as follows:
The Query type provides the possibility of concatenated conditional, and recursive queries, respectively.
Append at the end of section 8.9
Figure 0 10 Class diagram of class Conditional_query
The type Conditional_query enables the execution of a query in dependency of a condition. If the attributes evaluates true, the query referenced by query is executed otherwise the query is not executed.
Insert new complexType "Conditional_query" in PLMComputationalModel.xsd
<xs:complexType name="Conditional_query">
<xs:complexContent>
<xs:extension base="Query">
<xs:sequence>
<xs:element name="Attribute_is_true" type="xs:boolean" minOccurs="0"/>
<xs:element name="Attribute_is_not_true" type="xs:boolean" minOccurs="0"/>
<xs:element name="Attribute_is_set" type="xs:string" minOccurs="0"/>
<xs:element name="Attribute_is_not_set" type="xs:string" minOccurs="0"/>
<xs:element name="Query" type="Query"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Rename section 8.12 from "PDTnet Queries Conformance Point" to
"Specific Queries Conformance Point"
Replace first paragraph in section 8.12 by the following text:
The Specific Queries Conformance Point defines a set of low level specialized queries. The semantics of each specialized query of this conformance point is defined by an equivalent Location_path instance. The semantics of Location_path is defined in the Generic Queries Conformance Point.
Insert the following text as new section 8.14
8.14. PDTnet Queries Conformance Point
The PDTnet Queries Conformance Point defines a set of high level specialized queries that fulfill the requirements of the use cases described in section /CROSSREF 7.2. The semantics of each specialized query of this conformance point is defined by an equivalent Query instance from the Specific Queries Conformance Point.
8.14.1 General_detail_query
The General_detail_query returns general detail information from objects selected by a uid.
Parameters:
· uids : UID[0..*]
· relating_type_name : String [0..*]
· add_aliases : Boolean [0..1]
· alias_id : String [0..1]
· add_authorizations : Boolean [0..1]
· authorization_role : String [0..1]
· add_dates : Boolean [0..1]
· date_role : String [0..1]
· add_properties : Boolean [0..1]
· property_name : String [0..1]
· add_classifications : Boolean [0..1]
· classification_role : String [0..1]
· add_approvals : Boolean [0..1]
· approval_level : String [0..1]
· add_activities : Boolean [0..1]
· activity_role : String [0..1]
· add_effectivities : Boolean [0..1]
· effectivity_role : String [0..1]
Figure 0 11 Definition, sample instance and equivalent specific query instance of the General_detail_query
8.14.2 Document_detail_query
The Document_detail_query returns detail information of an Document, Document_version, or Document_representation object selected by a uid.
Parameters (without inherited):
· classification_name : String [0..1]
· add_versions : Boolean [0..1]
· version_id : String [0..1]
· add_representations : Boolean [0..1]
Figure 0 12 Definition, sample instance and equivalent specific query instance of the Document_detail_query
8.14.3 Document_selection_query
The Document_selection_query selects objects of class Document and includes related Document_version and Document_representation objects.
Parameters:
· name : String [0..1]
· id : String [0..1]
· version_id : String [0..1]
· classification_name : String [0..1]
Figure 0 13 Definition, sample instance and equivalent specific query instance of the Document_selection_query
8.14.4 Document_ traversal_query
The Document_traversal_query traverses from a Document_representation object selected by its uid via Document_structure objects to related Document_representation objects in a document structure.
Parameters:
· uid : UID
· maximum_recursion_number : Integer [0..1]
· relation_type : String [0..1]
Figure 0 14 Definition, sample instance and equivalent specific query instance of the Document_traversal_query
8.14.5 Item_detail_query
The Item_detail_query returns detail information of an Item, Item_version, Design_discipline_item_definition, Item_instance or Assembly_component_relationship object selected by a uid.
Parameters (without inherited):
· add_version_relationships : Boolean [0..1]
· version_relationship_type : String [0..1]
· add_documents : Boolean [0..1]
· document_role : String [0..1]
· classification_name : String [0..1]
· add_placement : Boolean [0..1]
Figure 0 15 Definition, sample instance and equivalent specific query instance of the Item_detail_query
8.14.6 Item_selection_query
The Item_selection_query selects objects of class Item and includes related Item_version and Design_discipline_item_definition objects.
Parameters:
· name : String [0..1]
· id : String [0..1]
· version_id : String [0..1]
· classification_name : String [0..1]
Figure 0 16 Definition, sample instance and equivalent specific query instance of the Item_selection_query
8.14.7 Item_ traversal_query
The Item_traversal_query traverses from a Design_discipline_item_definition object to the higher or lower Design_discipline_item_definition objects in an assembly structure.
Parameters:
· uid : UID
· maximum_recursion_number : Integer [0..1]
· inverse_direction : Boolean [0..1]
Figure 0 17 Definition, sample instance and equivalent specific query instance of the Item_traversal_query
8.14.8 Product_ detail_query
The Product_detail_query returns detail information of an Complex_product object selected by a uid.
Parameters (without inherited):
· add_configurations : Boolean [0..1]
· configuration_type : String [0..1]
· add_documents : Boolean [0..1]
· document_role : String [0..1]
Figure 0 18 Definition, sample instance and equivalent specific query instance of the Product_detail_query
8.14.9 Product_ selection_query
The Product_selection_query selects objects of class Product_class and includes Product_function_component_select related via Class_structure_relationship objects.
Parameters:
· name : String [0..1]
· id : String [0..1]
Figure 0 19 Definition, sample instance and equivalent specific query instance of the Product_selection_query
8.14.10 Product_traversal_query
The Product_traversal_query traverses from a Complex_product object selected by its uid via Product_structure_relationship or Alternative_solution_objects to related Complex_product or Item_instance objects in a product structure.
Parameters:
· uid : UID
· maximum_recursion_number : Integer [0..1]
· relation_type : String [0..1]
Figure 0 20 Definition, sample instance and equivalent specific query instance of the Product_traversal_query
Insert include statement in WSDL
<wsdl:import namespace="http://www.omg.org/PLMServices1.1/PdtnetQueries"
location="http://schema.omg.org/plm/1.1/PdtnetQueries.xsd"/>
Add new Document "PdtnetQueries.xsd" as normative Document to the specification
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.omg.org/PLMServices1.1/PdtnetQueries"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:plm-cm="http://www.omg.org/PLMServices1.1/ComputationalModel">
xmlns="http://www.omg.org/PLMServices1.1/PdtnetQueries">
<xs:import namespace="http://www.omg.org/PLMServices1.1/ComputationalModel"
schemaLocation="http://schema.omg.org/plm/1.1/PLMComputationalModel.xsd"/>
<xs:complexType name="General_detail_query">
<xs:complexContent>
<xs:extension base="plm-cm:Query">
<xs:sequence>
<xs:element name="uids" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Relating_type_name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Add_aliases" type="xs:boolean" minOccurs="0"/>
<xs:element name="Alias_id" type="xs:string" minOccurs="0"/>
<xs:element name="Add_authorizations" type="xs:boolean" minOccurs="0"/>
<xs:element name="Authorization_role" type="xs:string" minOccurs="0"/>
<xs:element name="Add_dates" type="xs:boolean" minOccurs="0"/>
<xs:element name="Date_role" type="xs:string" minOccurs="0"/>
<xs:element name="Add_properties" type="xs:boolean" minOccurs="0"/>
<xs:element name="Property_name" type="xs:string" minOccurs="0"/>
<xs:element name="Add_classifications" type="xs:boolean" minOccurs="0"/>
<xs:element name="Classification_role" type="xs:string" minOccurs="0"/>
<xs:element name="Add_approvals" type="xs:boolean" minOccurs="0"/>
<xs:element name="Approval_level" type="xs:string" minOccurs="0"/>
<xs:element name="Add_activities" type="xs:boolean" minOccurs="0"/>
<xs:element name="Activity_role" type="xs:string" minOccurs="0"/>
<xs:element name="Add_effectivities" type="xs:boolean" minOccurs="0"/>
<xs:element name="Effectivity_role" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Document_detail_query">
<xs:complexContent>
<xs:extension base="General_detail_query">
<xs:sequence>
<xs:element name="Classification_name" type="xs:string" minOccurs="0"/>
<xs:element name="Add_versions" type="xs:boolean" minOccurs="0"/>
<xs:element name="Version_id" type="xs:string" minOccurs="0"/>
<xs:element name="Add_representations" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Document_selection_query">
<xs:complexContent>
<xs:extension base="plm-cm:Query">
<xs:sequence>
<xs:element name="Name" type="xs:string" minOccurs="0"/>
<xs:element name="Id" type="xs:string" minOccurs="0"/>
<xs:element name="Version_id" type="xs:string" minOccurs="0"/>
<xs:element name="Classification_name" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Document_traversal_query">
<xs:complexContent>
<xs:extension base="plm-cm:Query">
<xs:sequence>
<xs:element name="uid" type="xs:string"/>
<xs:element name="Relation_type" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Item_detail_query">
<xs:complexContent>
<xs:extension base="General_detail_query">
<xs:sequence>
<xs:element name="Classification_name" type="xs:string" minOccurs="0"/>
<xs:element name="Add_documents" type="xs:boolean" minOccurs="0"/>
<xs:element name="Document_role" type="xs:string" minOccurs="0"/>
<xs:element name="Add_version_relationships" type="xs:boolean" minOccurs="0"/>
<xs:element name="Version_relationship_type" type="xs:string" minOccurs="0"/>
<xs:element name="Add_placements" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Item_selection_query">
<xs:complexContent>
<xs:extension base="plm-cm:Query">
<xs:sequence>
<xs:element name="Name" type="xs:string" minOccurs="0"/>
<xs:element name="Id" type="xs:string" minOccurs="0"/>
<xs:element name="Version_id" type="xs:string" minOccurs="0"/>
<xs:element name="Classification_name" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Item_traversal_query">
<xs:complexContent>
<xs:extension base="plm-cm:Query">
<xs:sequence>
<xs:element name="uid" type="xs:string"/>
<xs:element name="Inverse_direction" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Product_detail_query">
<xs:complexContent>
<xs:extension base="General_detail_query">
<xs:sequence>
<xs:element name="Classification_name" type="xs:string" minOccurs="0"/>
<xs:element name="Add_documents" type="xs:boolean" minOccurs="0"/>
<xs:element name="Document_role" type="xs:string" minOccurs="0"/>
<xs:element name="Add_version_relationships" type="xs:boolean" minOccurs="0"/>
<xs:element name="Version_relationship_type" type="xs:string" minOccurs="0"/>
<xs:element name="Add_placements" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Product_selection_query">
<xs:complexContent>
<xs:extension base="plm-cm:Query">
<xs:sequence>
<xs:element name="Name" type="xs:string" minOccurs="0"/>
<xs:element name="Id" type="xs:string" minOccurs="0"/>
<xs:element name="Version_id" type="xs:string" minOccurs="0"/>
<xs:element name="Classification_name" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Product_traversal_query">
<xs:complexContent>
<xs:extension base="plm-cm:Query">
<xs:sequence>
<xs:element name="uid" type="xs:string"/>
<xs:element name="Inverse_direction" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
Actions taken:
October 1, 2004: received issue
August 1, 2005: closed issue
Issue 7830: PropertiesDescriptors for Operations with properties parameter (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Uncategorized Issue
Severity:
Summary: The Computational Viewpoint defines four Operations with parameter of type PLM_property:
PLM_resource_adapter.get_connection_factory
PLM_connection_factory.get_connection
PLM_connection.insert
PLM_connection.export
The allowed values for the propeties are implementation specific.
To enable an interactive client to provide its user
with the actual allowed or expected property values of a connected PLM Service implementation
The service should have complementary operations for each operation with properties parameter,
which returns descriptors for the actual allowed or expected property value:
PLM_resource_adapter.get_connection_factory_property_descriptors
PLM_connection_factory.get_connection_property_descriptors
PLM_connection.insert_property_descriptors
PLM_connection.export_property_descriptors
The descriptor for a single Property should contain:
the name of the property
the type of the property
the description of the property
an optional pattern to proove user input
and a flag if the property is required
With a PLM_resource_adapter.get_connection_factory_property_descriptors operation
there is no more need for the PLM_resource_adapter.get_connection_factory_names.
Resolution:
Revised Text: Resolution:
Change as proposed. See also issue 7934
Revised Text:
Introduce
PLM_properties_descriptor
into the listing of PLM objects in section 8.2.
Replace figure 114 by
Replace figure 116 by
Extend last sentence in section 8.6. PLM_Connection_factory_interface by:
and its descriptors can be obtained by the operation get_connection_factory_properties_descriptors.
Replace figure 117 by
Add new sections 8.8.8 and 8.8.9 after section 8.8.7 "Close Operation" as follows:
Get_export_data_properties_descriptors Operation
get_export_data_properties_descriptors(): PLM_properties_descriptor[0..*]
The get_export_data_properties_descriptors() operation returns the descriptors of all supported parameter variants of the export_data() operation.
Get_import_data_properties_descriptors Operation
get_import_data_properties_descriptors(): PLM_properties_descriptor[0..*]
The get_import_data_properties_descriptors() operation returns the descriptors of all supported parameter variants of the import_data() operation.
Add to definition of import_data () (…implementation specific, too)
and can be obtained by the operation get_import_data_properties_descriptors()
Add to definition of export_data () (…implementation specific, too)
and can be obtained by the operation get_export_data_properties_descriptors()
Add new section 8.3 as follows:
8.3. PLM_property_descriptor and PLM_properties_descriptor
Figure 0 21 PLM_properties_descriptor and PLM_property_descriptor
Some of the operations defined in the computational model use parameters of type PLM_property. The supported values of those parameters are implementation specific. Each operation with a parameter of type PLM_property has a corresponding operation which a client can use to obtain descriptions of the actual supported variants of values of the properties parameter. One supported variant of values is described by an instance of type PLM_properties_descriptor. A PLM_properties_descriptor has an attribute name that contains the name of the variant, an attribute description which contains a description of the variant and a list of PLM_property_descriptor. Each element of the PLM_properties_descriptor list describes one PLM_property of the variant.
A PLM_property_descriptor describes one PLM_property instance. The attribute name of the PLM_property_descriptor defines the value of attribute name of the PLM_property instance. The attribute type describes the type of the PLM_property instance. The attribute pattern defines a pattern that must match valid values of attribute value of the PLM_property. The attribute description of the PLM_property_descriptor contains a description of the described PLM_property instance. The attribute required defines wether the described PLM_property instance must be present or if it is optional. The references enabled_when_true and enabled_when_not_true can select other PLM_property_descriptor instances. The selected instance must have the type Boolean and must be contained by the same PLM_properties_descriptor instance. If a PLM_property_descriptor has enabled_when_true- or enabled_when_not_true references its attribute required must not have a value of TRUE. A described PLM_property value can only be used in a properties parameter list for an operation
· if all PLM_property values described by the PLM_property_descriptors referenced by enabled_when_true are also in the properties parameter list and have the value TRUE
· and no PLM_property_value described by a PLM_property_descriptor referenced by enabled_when_not_true is in the properties parameter list and has the value TRUE.
The value of the attribute display_name can be used as display name of the described PLM_property in user interfaces.
8.3.1 Sample "login" PLM_properties_descriptors
Figure 0 22 Sample "guest login" PLM_properties_descriptor
Figure ??? shows a sample PLM_property_descriptor instance for a guest login. A valid PLM_property instance set for this descriptor must contain one PLM_property instance with a name attribute of "email" and a value attribute which matches the pattern ".+@.{3,}\..{2,3}".
Figure 0 23 Sample "member login" PLM_properties_descriptor
Figure ??? shows a sample PLM_property_descriptor instance for a member login. A valid PLM_property instance set for this descriptor must contain two PLM_property instances. One instance with a name attribute of "user" and an arbitrary value attribute and one instance with a name attribute of "passwd" and an arbitrary value attribute.
A set of the two sample instances, the "guest login" PLM_properties_descriptor and the "member login" PLM_properties_descriptor is an example of a result of the operation get_connection_properties_descriptors() of an implementation of interface PLM_connection_factory explained in chapter ???. This result means that the operation get_connection() of the same implementation can be called with one of the two described properties parameter variants.
8.3.2 Sample "assembly export" PLM_properties_descriptor
Figure 0 24: Sample "assembly export" PLM_properties_descriptor
Figure 0-4 shows a sample PLM_property_descriptor instance as result of the operation get_export_data_properties_descriptors of an implementation of interface PLM_connection explained in chapter ???. This result means, that the operation export_data() of the same implementation can be called with one set of at least two PLM_property instances. These two required instances have the name attributes "assembly_number" and "include_documents". If the PLM_property with name attribute "include_documents" has the value attribute TRUE than a third PLM_property instance with a name attribute of "document_type" can be added to the properties parameter of the operation export_data().
Add new wsdl:messages to WSDL in appendix B.3 on page 568
<wsdl:message name="Get_connection_properties_descriptors">
</wsdl:message>
<wsdl:message name="Get_connection_properties_descriptors_response">
<wsdl:part name="response" type="plm-cm:ArrayOfPLM_properties_descriptor"/>
</wsdl:message>
<wsdl:message name="Get_connection_properties_descriptors_fault">
<wsdl:part name="fault" element="plm-cm:Fault"/>
</wsdl:message>
<wsdl:message name="Get_export_data_properties_descriptors">
</wsdl:message>
<wsdl:message name="Get_export_data_properties_descriptors_response">
<wsdl:part name="response" type="plm-cm:ArrayOfPLM_properties_descriptor"/>
</wsdl:message>
<wsdl:message name="Get_export_data_properties_descriptors_fault">
<wsdl:part name="fault" element="plm-cm:Fault"/>
</wsdl:message>
<wsdl:message name="Get_import_data_properties_descriptors">
</wsdl:message>
<wsdl:message name="Get_import_data_properties_descriptors_response">
<wsdl:part name="response" type="plm-cm:ArrayOfPLM_properties_descriptor"/>
</wsdl:message>
<wsdl:message name="Get_import_data_properties_descriptors_fault">
<wsdl:part name="fault" element="plm-cm:Fault"/>
</wsdl:message>
Add new wsdl:operations to wsdl:portType PLM_connection_factory in WSDL in Appendix B.3
<wsdl:operation name="get_connection_properties_descriptors">
<wsdl:input message="Get_connection_properties_descriptors"/>
<wsdl:output message="Get_connection_properties_descriptors_response"/>
<wsdl:fault name="Get_connection_properties_descriptors_fault" message="Get_connection_properties_descriptors_fault"/>
</wsdl:operation>
Add new wsdl:operations to wsdl:binding "PLM_connection_factory" in WSDL in Appendix B.3
<wsdl:operation name="get_connection_properties_descriptors">
<soap:operation soapAction="" style="rpc"/>
<wsdl:input>
<soap:body use="literal" namespace="http://omg.org/PLMServices1-0/PLM_connection_factory#get_connection_properties_descriptors"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" namespace="http://omg.org/PLMServices1-0/PLM_connection_factory#get_connection_properties_descriptors"/>
</wsdl:output>
<wsdl:fault name="Get_connection_properties_descriptors_fault">
<soap:fault name="Get_connection_properties_descriptors_fault" use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</wsdl:fault>
</wsdl:operation>
Add new wsdl:operations to wsdl:portType "PLM_connection" in WSDL in appendix B.3
<wsdl:operation name="get_export_data_properties_descriptors">
<wsdl:input message="Get_export_data_properties_descriptors"/>
<wsdl:output message="Get_export_data_properties_descriptors_response"/>
<wsdl:fault name="Get_export_data_properties_descriptors_fault" message="Get_export_data_properties_descriptors_fault"/>
</wsdl:operation>
<wsdl:operation name="get_import_data_properties_descriptors">
<wsdl:input message="Get_import_data_properties_descriptors"/>
<wsdl:output message="Get_import_data_properties_descriptors_response"/>
<wsdl:fault name="Get_import_data_properties_descriptors_fault" message="Get_import_data_properties_descriptors_fault"/>
</wsdl:operation>
Add new wsdl:operations to wsdl:binding "PLM_connection in WSLD appendix B.3
<wsdl:operation name="get_export_data_properties_descriptors">
<soap:operation soapAction="" style="rpc"/>
<wsdl:input>
<soap:header message="Id_header" part="id" use="literal"/>
<soap:header message="Signature_header" part="signature" use="literal"/>
<soap:body use="literal" namespace="http://omg.org/PLMServices1-0/PLM_connection#get_export_data_properties_descriptors"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" namespace="http://omg.org/PLMServices1-0/PLM_connection#get_export_data_properties_descriptors"/>
</wsdl:output>
<wsdl:fault name="Get_export_data_properties_descriptors_fault">
<soap:fault name="Get_export_data_properties_descriptors_fault" use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="get_import_data_properties_descriptors">
<soap:operation soapAction="" style="rpc"/>
<wsdl:input>
<soap:header message="Id_header" part="id" use="literal"/>
<soap:header message="Signature_header" part="signature" use="literal"/>
<soap:body use="literal" namespace="http://omg.org/PLMServices1-0/PLM_connection#get_import_data_properties_descriptors"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" namespace="http://omg.org/PLMServices1-0/PLM_connection#get_import_data_properties_descriptors"/>
</wsdl:output>
<wsdl:fault name="Get_import_data_properties_descriptors_fault">
<soap:fault name="Get_import_data_properties_descriptors_fault" use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</wsdl:fault>
</wsdl:operation>
Actions taken:
October 1, 2004: received issue
August 1, 2005: closed issue
Issue 7836: XML Mapping of PIM Type Integer (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Uncategorized Issue
Severity:
Summary: The Datatype "Integer" of the PIM should be mapped to "xs:int" instead of "xs:integer"
in the WebService PSM
because the JAX-RPC Mapping of "xs:integer" is "java.lang.BigInteger"
and the JAX-RPC Mapping of "xs:int" is "int".
Resolution:
Revised Text: Resolution:
Change definition in PLMInformationModel.xsd (Section_context:Sequence_number, Value_with_unit:significant_digits) and PLMComputationalModel.xsd (complexType Query:Maximum_recursion_number)
Revised Text:
Add table heading to mapping table at the end of section 9.2 as follows: Table 27: Mapping of UML datatypes to XML datatypes.
Change in mapping table 27 xs:integer to xs:int.
Replace all occurrences of xs:integer in both *.xsd definition as indicated.
Disposition: Resolved
Actions taken:
October 4, 2004: received issue
August 1, 2005: closed issue
Issue 7837: Replace Simple_property_value by Simple_property_association (plm-ftf)
Click here for this issue's archive.
Source: Zentrum fuer Graphische Datenverarbeitung e.V. (Mr. Steffen Nowacki, steffen.nowacki@partmaster.de)
Nature: Uncategorized Issue
Severity:
Summary: The STEP AP214 Standardization Group has changed its
simple property concept from Simple_property_value to
Simple_property_association. To close the gap to the STEP
specification the PLM Services should also use the
final STEP simple property concept:
Old:
<xs:complexType name="Simple_property_value" abstract="true">
<xs:complexContent>
<xs:extension base="PLM_object">
<xs:sequence>
<xs:element name="Value_name" type="xs:string" />
<xs:element name="Value_type" type="xs:string" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Simple_string_value">
<xs:complexContent>
<xs:extension base="Simple_property_value">
<xs:sequence>
<xs:element name="Value_specification" type="Translatable_string" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
New:
<xs:complexType name="Simple_property_association">
<xs:complexContent>
<xs:extension base="PLM_object">
<xs:sequence>
<xs:element name="Specified_value" type="xs:IDREF" />
<xs:element name="Value_type" type="xs:string" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Replace all occurrences of
<xs:element name="Simple_property_value" type="Simple_property_value" minOccurs="0" maxOccurs="unbounded" />
With
<xs:element name="Simple_property_association" type="Simple_property_association" minOccurs="0" maxOccurs="unbounded" />
Resolution:
Revised Text:
Actions taken:
October 4, 2004: received issue
August 1, 2005: closed issue
Discussion: See issue 7844 for disposition
Issue 7838: New element type required (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Revision
Severity: Significant
Summary: New element type required: Work_request_relationship models relations of Work_request in analogy to Activity_request_relationship with relating as containment relationship in XML and related as IDREF to work_request Motivation: For development partners different work_request numbering schemes are in effect which shall be modelled. STEP EXPRESS model for the new element: ENTITY work_request_relationship; related : work_request; relating : work_request; relation_type : STRING; description : OPTIONAL string_select; END_ENTITY
Resolution:
Revised Text: Revised Text:
Add work_request_relationship in figure 111 on page 300.
Insert following section:
7.7.11.12 Class Work_request_relationship
A Work_request_relationship is the relationship between two Work_request objects.
Base Class
o PLM_object (ABS)
Attributes
o description : String [1] The description specifies additional information about the Work_request_relationship.
o relating : Work_request The relating specifies the first of the two Work_Request objects related by an Work_request_relationship.
o related : Work_request The related specifies the second of the two Work_Request objects related by an Work_request_relationship
o relation_type : String [1] The relation_type specifies the intention of the Work_request. Where applicable the following values shall be used:
Add new complexType Work_request_relationship to InformationalModel Schema:
<xs:complexType name="Work_request_relationship">
<xs:complexContent>
<xs:extension base="PLM_object">
<xs:sequence>
<xs:element name="Related" type="xs:IDREF"></xs:element>
<xs:element minOccurs="0" name="Description" type="Translatable_string"></xs:element>
<xs:element name="Relation_type" type="xs:string"></xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Add new Element work_request_relationship to complexType Work_request
<xs:element maxOccurs="unbounded" minOccurs="0" name="Work_request_relationship" type="Work_request_relationship"></xs:element>
Add new Composition work_request_relationship to Definition of Class Work_request section 7.7.11.11
work_request_relationship : Work_request_relationship [0..*]
Actions taken:
October 7, 2004: received issue
August 1, 2005: closed issue
Issue 7839: Work_request and Work_order are Root_objects (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Minor
Summary: Work_request and Work_order are Root_objects and are usually result of Start_Node_query. It would be much better to support specialized Work_request_query and Work_order_query for this purpose in the PDTnet queries conformance point and in the Web services specification.
Resolution:
Revised Text:
Actions taken:
October 7, 2004: received issue
August 1, 2005: closed issue
Discussion: See issue 8002 for disposition
Issue 7840: Organization_relationhip (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Significant
Summary: Organization_relationhip is element of AP214 but not of PLM Services 1.0 This element describes relationships between organizations and ist hierarchical compounds like departments. This organizational hierarchy shall be described in PLM services. Use explanatory text as in AP214
Resolution:
Revised Text: Resolution:
Change as proposed. See also comments to issue 8004 Organization_relationship_query
Revised Text:
Insert following section:
7.7.9.12 Class Organization_relationship
A Organization_relationship is the relationship between two Organization objects.
Base Class
o PLM_object (ABS)
Attributes
o description : String [1] The description specifies additional information about the Organization_relationship.
o relating : Organization The relating specifies the first of the two Organization objects related by an Organization_relationship.
o related : Organization The related specifies the second of the two Organization objects related by an Organization_relationship
o relation_type : String [1] The relation_type specifies the intention of the Organization_relationship. Where applicable the following values shall be used:
hierarchy: The related Organization is a sub organization of the relating Organization.
legal succession: The related Organization is the legal successor of the relating Organization.
reorganization: The related Organization is the successor of the relating Organization due to a organizational transfer of responsibility.
Add the following definition to the InformationalModel XML Schema:
<xs:complexType name="Organization_relationship">
<xs:complexContent>
<xs:extension base="PLM_object">
<xs:sequence>
<xs:element name="Related" type="xs:IDREF"></xs:element>
<xs:element minOccurs="0" name="Description" type="Translatable_string"></xs:element>
<xs:element name="Relation_type" type="xs:string"></xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="Date_and_person_organization" type="Date_and_person_organization"></xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="Person_organization_assignment" type="Person_organization_assignment"></xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Add definition of Element Organization_relationship to complexType Organization in InformationalModel XML Schema
<xs:element maxOccurs="unbounded" minOccurs="0" name="Organization_relationship" type="Organization_relationship"></xs:element>
Add composition organization_relationship to definition of class Organization in PIM
organization_relationship : Organization_relationship [0..*]
Actions taken:
August 13, 1999: received issue
October 7, 2004: received issue
August 1, 2005: closed issue
Issue 7841: Definition of project (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Revision
Severity: Significant
Summary: Definition of project is wrong with respect to project.affected_product_class attribute. But the maintenance version of STEP AP214 proposes the split into project and project_assignment with structure corresponding to the following STEP model: ENTITY project; id : STRING; name : string_select; description : OPTIONAL string_select; actual_start_date : OPTIONAL date_time; actual_end_date : OPTIONAL date_time; planned_start_date : OPTIONAL event_or_date_select; work_program : SET [0:?] OF activity; planned_end_date : OPTIONAL period_or_date_select; END_ENTITY; ENITY project_assignment; assigned_project : project; role : STRING; is_applied_to : SET [1:?] OF project_information_select; END_ENTITY;
Resolution:
Revised Text: Resolution:
Adjust definition of project and project_assignment with AP214 maintenance release.
Revised Text:
p. 309 Delete definition of project.is_applied_to
introduce new section
7.7.11.9 Class Project_assignment
A Project_assignment is a relationship between a Project and the objects the work carried out by that project is applied to.
Base Class
o PLM_object (ABS)
Attributes
o role : String [1] The role specifies the meaning of the relationship.
Compositions
none.
Associations
is_applied_to : Project_information_select [0..*]
The is_applied_to specifies the set of objects that the work carried out by a Project applies
to.
project : Project[1] The project this relationship is assigned to.
Replace fig. 111
Replace Project Definition in Informational Viewpoint:
<xs:complexType name="Project">
<xs:complexContent>
<xs:extension base="PLM_root_object">
<xs:sequence>
<xs:element name="Id" type="xs:string"/>
<xs:element name="Name" type="Translatable_string"/>
<xs:element name="Description" type="Translatable_string" minOccurs="0"/>
<xs:element name="Actual_start_date" type="xs:IDREF" minOccurs="0"/>
<xs:element name="Actual_end_date" type="xs:IDREF" minOccurs="0"/>
<xs:element name="Planned_start_date" type="xs:IDREF" minOccurs="0"/>
<xs:element name="Project_assignment" type="Project_assignment" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Work_program" type="xs:IDREFS" minOccurs="0"/>
<xs:element name="Planned_end_date" type="xs:IDREF" minOccurs="0"/>
<xs:element name="Project_relationship" type="Project_relationship" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Document_assignment" type="Document_assignment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Project_assignment">
<xs:complexContent>
<xs:extension base="PLM_object">
<xs:sequence>
<xs:element name="Is_applied_to" type="xs:IDREFS"/>
<xs:element name="Role" type="xs:string"/>
<xs:element name="Description" type="Translatable_string" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Actions taken:
October 7, 2004: received issue
August 1, 2005: closed issue
Issue 7842: Date and Time types shall be mapped according to ISO 8601. (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Revision
Severity: Significant
Summary: Date and Time types shall be mapped according to ISO 8601. Where possible, built-in types shall be used: XML model: * xs:date for date_time.date * xs:time for date_time.time
Resolution:
Revised Text: Resolution:
Change definition and mapping in <xs:complexType name="Date_time"> to proposed solution.
Revised Text:
Add in Table 27 in Section 9.2 two rows:
UML XSD
Date xs:date
Time xs:time
Replace corresponding type definitions in PLMInformationalModel.xsd as follows:
<xs:complexType name="Date_time">
<xs:complexContent>
<xs:extension base="PLM_root_object">
<xs:sequence>
<xs:element name="Time" type="xs:timestring" minOccurs="0" />
<xs:element name="Date" type="xs:datestring" />
<xs:element name="Date_time_assignment" type="Date_time_assignment" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Dated_configuration">
<xs:complexContent>
<xs:extension base="Manufacturing_configuration">
<xs:sequence>
<xs:element name="Start_date" type="xs:datestring" />
<xs:element name="End_date" type="xs:datestring" minOccurs="0" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Actions taken:
October 7, 2004: received issue
August 1, 2005: closed issue
Issue 7843: Person_in_organization_relationship (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de laemmer@prostep.com)
Nature: Enhancement
Severity: Significant
Summary: Person_in_organization_relationship is element of AP but not of PLM Services 1.0. Use explanatory text as in AP214
Resolution:
Revised Text: Revised Text:
Insert following section:
7.7.9.14 Class Person_in_organization_relationship
A Person_in_organization_relationship is a mechanism which allows to specify a relationship between two persons in an organization.
Base Class
o PLM_object (ABS)
Attributes
o description : String [1] The description specifies additional information about the Person_in_organization_relationship.
o relating : Person_in_organization The relating specifies the first of the two Person_in_orgnaization objects related by an Person_in_organization_relationship.
o related : Person_in_organization The related specifies the second of the two Person_in_organization objects related by an Person_in_organization_relationship
o relation_type : String [1] The relation_type specifies the meaning of the Person_in_organization_relationship. Where applicable the following values shall be used:
successor: The related Person_in_organization is the successor of the relating Person_in_organization.
Add the following definition to the InformationalModel XML Schema:
<xs:complexType name="Person_in_organization_relationship">
<xs:complexContent>
<xs:extension base="PLM_object">
<xs:sequence>
<xs:element name="Related" type="xs:IDREF"/>
<xs:element name="Relation_type" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Add Element Person_in_organization_relationship to complexType Person_in_organization in the InformationalModel XML Schema
<xs:element maxOccurs="unbounded" minOccurs="0" name="Person_in_organization_relationship" type="Person_in_organization_relationship"></xs:element>
Add composition Person_in_organization_relationship to Definition of Class Person_in_organization in section 7.7.9.13
person_in_organization_relationship : Person_in_organization_relationship [0..*]
Actions taken:
October 7, 2004: received issue
August 1, 2005: closed issue
Issue 7844: Align simple property assignment mechanism with STEP AP214 maint. version (plm-ftf)
Click here for this issue's archive.
Source: PROSTEP AG (Dr. Lutz Laemmer, lutz.laemmer@prostep.com Lutz.Laemmer@PROSTEP.com laemmer@prostep.de lae