<html><body><div style="font-family: times new roman, new york, times, serif; font-size: 12pt; color: #000000"><div>Hi Roberto,</div><div><br></div><div>You have several options to use a new type in midPoint:</div><div><br></div><div>1) There is a GenericType XSD type already in midPoint schema. You can use that. It is almost empty type that has just the extension section. This was designed for run-time extensibility of object types (without the need to recompile midPoint).</div><div><br></div><div>2) You can add your type definition to stock midPoint common-3.xsd schema and rebuild the project. But you will also have to change the implementation of repo-sql-impl component to be able to store objects into the database.</div><div><br></div><div>3) The "Device" data type seems interesting and my colleagues are discussing midPoint extensions such as this so some time. So, maybe it is right time to add "DeviceType" object into starndard midPoint schema. We can cooperate on that. It is not a big task for the core midPoint team. The more demanding task would be to define the properties for this object type. Maybe we can cooperate on that? If you are interested in this option please drop me or Igor a private message and we can set up the call to discuss this.</div><div><br></div><div>Just a couple of words of explanation: MidPoint data model is divided in two parts: fixed and dynamic. The fixed part is processed during compilation. Java source code is generated from that. This allow us to conveniently use it in midPoint logic, do efficient refactorings, optimize object storage in the database and so on. This gives us great maintanability and operation qualities. The drawback is that this part is not easily extensible. Therefore each object has also run-time extensible part (the <extension> part). This is easily extensible, but the capabilities are limited. So far we have been able to model all the use cases as an extension of basic object types that are in midPoint (User, Role, Org). But it is maybe the right time to look beyond that and add new object types.</div><div><br></div><div>--</div><div>RS</div><div><br></div><hr id="zwchr"><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;" data-mce-style="color: #000; font-weight: normal; font-style: normal; text-decoration: none; font-family: Helvetica,Arial,sans-serif; font-size: 12pt;"><b>From: </b>"Roberto Casiano" <roberto.casiano@cogitogroup.com.au><br><b>To: </b>midpoint@lists.evolveum.com<br><b>Sent: </b>Thursday, 12 November, 2015 4:28:35 AM<br><b>Subject: </b>[midPoint] need help creating new object type<br><div><br></div><style><!--

@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}

p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><div class="WordSection1"><p class="MsoNormal">Hi,</p><p class="MsoNormal"> </p><p class="MsoNormal">Is it possible to create a new object type? We have a requirement to have a separate Device object in midpoint that we could associate to Users. So we’re thinking of creating a new object type called Device.</p><p class="MsoNormal"> </p><p class="MsoNormal">I tried to create an .xsd file, the contents of which are similar to that used when creating extensions, but extending FocusType instead. I placed it in midpoint.home/schema and restarted tomcat. I don’t see any errors when tomcat starts up, but I don’t know how to test if a new object type was indeed created. I have a hunch it did not create a new object type, but instead extended the definition of FocusType.</p><p class="MsoNormal"> </p><p class="MsoNormal">Can you please explain how to create a new object type, and how to test and verify?</p><p class="MsoNormal"> </p><p class="MsoNormal">Thanks,</p><p class="MsoNormal">Rob</p></div><br> <br> <i>This email, and any attachment, is confidential and also privileged. If you have received it in error, please notify me immediately and delete it from your system along with any attachments. You should not copy or use it for any purpose, nor disclose its contents to any other person. </i><br>_______________________________________________<br>midPoint mailing list<br>midPoint@lists.evolveum.com<br>http://lists.evolveum.com/mailman/listinfo/midpoint<br></div><div><br></div></div></body></html>