Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Please see Prism Objects for a generic introduction to prism concepts
Info
Warning

This page is out of date.

Please see https://docs.evolveum.com/midpoint/prism/ to get up-to-date information.


Table of Contents

Prism Context

...

Unfortunately due to implementation limitations we have two classes that represent polystrings: PolyString and PolyStringType.

ClassUsed inOriginMnemonics
PolyStringPrism native interface (PrismProperty)Manually written from scratch, part of prism core
 

PolyStringTypeCompile-time classes (UserType, etc.)JAXB class (almost) generated from XSDIn UserType use PolyStringType

The reason for this confusion is mostly caused by a limitation of JAXB framework. We are using JAXB framework to parse XSD schemas and generate compile-time classes. As the origin of all generated compile-time classes are in XSD definition also all of their property types must also have XSD definition. This includes PolyString. Although we have modified and customized significant part of JAXB we haven't found a way how to avoid this confusion.

...