Petals CDK

Better organisation of the JBI Schemas and their handling in Java

Details

  • Type: Task Task
  • Status: Open Open
  • Priority: Minor Minor
  • Resolution: Unresolved
  • Affects Version/s: 5.4.2
  • Fix Version/s: 5.9.0
  • Component/s: Utils
  • Security Level: Public
  • Description:
    Hide

    Currently we got the following situation with respect to the JBI xml schema:

    • There is a schema definition in petals-jbi-descriptor that follows the official JBI specification
    • associated to it are JAXB generated classes and a JAXB parser to get a Java view of a jbi xml file.
    • There is an extension in the same project
    • the schema describe only the supplementary elements in a different namespace without saying where they are (it does not actually extends the jbi schema)
    • there is a JAXB parser that is applied in an ad-hoc way to the anyOrAny element of the service element.
    • There is the CDK jbidescriptor that completely redefines the JBI schema with its added elements
    • there are associated JAXB Java classes and the parser
    • For some components, there is extension to the CDK schema defined with xsd
    • but they are not actually used as real schema extension of the CDK jbi (not used for validation, not used for parsing with the CDK parser)
    • sometimes there are ad-hoc jaxb parser for them (for example in the SE BPMN2)

    There is thus the following problem:

    • some classes are duplicated and potentially different between the original JBI and the CDK jbi
    • there is ad-hoc handling of the original extension but manipulable using Java classes
    • there is ad-hoc low-level handling of the component-specific schema elements without any generalised mechanism to validate and parse them.

    Currently, things work because there is multiple "any" elements everywhere (in services, consumes and provides I think... maybe in other places) we have the need to add component-specific things in an ad-hoc way...

    In the same way as with the issue EASYWSDL-13, we should try to find a way to:

    • reuse generated classes, but in this case the problem is mainly that we want to extend schemas.
    • provide, from a component development point of view, a JAXB parser that takes the extension as an xsd and as generated classes, and that parse the extended xml files seamlessly.

    The first one is going to be hard, the second one should be easier.

    Show
    Currently we got the following situation with respect to the JBI xml schema:
    • There is a schema definition in petals-jbi-descriptor that follows the official JBI specification
    • associated to it are JAXB generated classes and a JAXB parser to get a Java view of a jbi xml file.
    • There is an extension in the same project
    • the schema describe only the supplementary elements in a different namespace without saying where they are (it does not actually extends the jbi schema)
    • there is a JAXB parser that is applied in an ad-hoc way to the anyOrAny element of the service element.
    • There is the CDK jbidescriptor that completely redefines the JBI schema with its added elements
    • there are associated JAXB Java classes and the parser
    • For some components, there is extension to the CDK schema defined with xsd
    • but they are not actually used as real schema extension of the CDK jbi (not used for validation, not used for parsing with the CDK parser)
    • sometimes there are ad-hoc jaxb parser for them (for example in the SE BPMN2)
    There is thus the following problem:
    • some classes are duplicated and potentially different between the original JBI and the CDK jbi
    • there is ad-hoc handling of the original extension but manipulable using Java classes
    • there is ad-hoc low-level handling of the component-specific schema elements without any generalised mechanism to validate and parse them.
    Currently, things work because there is multiple "any" elements everywhere (in services, consumes and provides I think... maybe in other places) we have the need to add component-specific things in an ad-hoc way... In the same way as with the issue EASYWSDL-13, we should try to find a way to:
    • reuse generated classes, but in this case the problem is mainly that we want to extend schemas.
    • provide, from a component development point of view, a JAXB parser that takes the extension as an xsd and as generated classes, and that parse the extended xml files seamlessly.
    The first one is going to be hard, the second one should be easier.
  • Environment:
    -

Issue Links

Activity

Christophe DENEUX made changes - Thu, 12 Mar 2015 - 09:38:23 +0100
Field Original Value New Value
Status New [ 10000 ] Open [ 10002 ]
Priority Major [ 3 ]
Component/s Utils [ 10055 ]
Christophe DENEUX made changes - Thu, 12 Mar 2015 - 09:38:30 +0100
Fix Version/s 5.5.0 [ 10406 ]
Victor NOËL made changes - Thu, 12 Mar 2015 - 09:47:49 +0100
Assignee Christophe DENEUX [ cdeneux ] Victor NOËL [ vnoel ]
Victor NOËL made changes - Tue, 26 May 2015 - 16:20:07 +0200
Link This issue blocks MAVPETALSPLUG-10 [ MAVPETALSPLUG-10 ]
Victor NOËL made changes - Tue, 21 Jul 2015 - 17:51:13 +0200
Priority Major [ 3 ] Minor [ 4 ]
Christophe DENEUX made changes - Mon, 5 Oct 2015 - 15:56:45 +0200
Fix Version/s 5.5.1 [ 10599 ]
Fix Version/s 5.5.0 [ 10406 ]
Victor NOËL made changes - Wed, 16 Dec 2015 - 16:27:44 +0100
Fix Version/s 5.6.0 [ 10611 ]
Fix Version/s 5.5.1 [ 10599 ]
Christophe DENEUX made changes - Mon, 23 May 2016 - 12:31:04 +0200
Fix Version/s 5.6.1 [ 10641 ]
Fix Version/s 5.6.0 [ 10611 ]
Christophe DENEUX made changes - Tue, 20 Sep 2016 - 09:42:37 +0200
Fix Version/s 5.6.2 [ 10672 ]
Fix Version/s 5.6.1 [ 10641 ]
Christophe DENEUX made changes - Thu, 4 Jan 2018 - 11:04:03 +0100
Fix Version/s 5.6.3 [ 10765 ]
Fix Version/s 5.6.2 [ 10672 ]
Christophe DENEUX made changes - Wed, 24 Jan 2018 - 12:53:55 +0100
Fix Version/s 5.6.4 [ 10811 ]
Fix Version/s 5.6.3 [ 10765 ]
Christophe DENEUX made changes - Thu, 26 Jul 2018 - 17:08:25 +0200
Assignee Victor NOËL [ vnoel ]
Fix Version/s 5.7.2 [ 10872 ]
Fix Version/s 5.7.0 [ 10811 ]
Christophe DENEUX made changes - Tue, 11 Apr 2023 - 11:54:53 +0200
Fix Version/s 5.9.0 [ 11106 ]
Fix Version/s 5.8.0 [ 10872 ]

People

Dates

  • Created:
    Wed, 4 Mar 2015 - 15:05:53 +0100
    Updated:
    Tue, 11 Apr 2023 - 11:54:53 +0200