OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

provision message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [no subject]


-----Original Message-----
From: Jeff Bohren [mailto:jbohren@opennetwork.com]
Sent: Tuesday, December 09, 2003 9:50 AM
To: provision@lists.oasis-open.org
Subject: [provision] SPML 2.0 Data Model Proposal...


My proposal is that SPML 2.0 be expanded to support two data models =
which I will refer to as the "DSML Data Model" and the "XSD Data Model". =
The DSML Data Model is the one currently used in SPML 1.0. There is no =
reason that additional data models could not also be added if there =
seems to be if value (i.e. a "SAML Data Model", or "Liberty Data Model" =
could also be added). This would support the data model that IBM wants =
as well as being backwards compatible with the existing SPML 1.0 =
specification.

=20

In my proposal each of the SPML verbs would be expanded to support both =
data models. For instance in response to a schema request, the schema =
response could look like the current SPML model:

=20

<schemaResponse>

            <schema>

                        <schemaIdentifier>...

                        <attributeDefinition>...

                        <objectClassDefinition>...

            <schema>

</schemaResponse>

=20

Or it could use the XSD Data Model be either including the XSD directly:

=20

<schemaResponse>

            <schema>

                        <xsd:schema> ....

            <schema>

</schemaResponse>

=20

Or by referring to an XSD document externally:

=20

<schemaResponse>

            <schema  =
externalURL=3D"http://www.acme.com/schemas/provisioning.xsd"; />

</schemaResponse>

=20

Likewise the add request could be modified to contain the current DSML =
attribute/values as in the current spec or it could include arbitrary =
XML as defined by the XSD returned in the schema response. For example:

=20

<spml:addRequest>

            <acme:account>

                        <acme:id>jsmith</acme:id>

<acme:phoneNumbers>

                                    <acme:homePhone>555-1212</acme: =
homePhone >

                                    <acme:cellPhone>555-1212</acme: =
cellPhone >

</acme:phoneNumbers>

            </acme:account>

</spml:addRequest>

=20

Likewise the modify, delete, and search verbs could all be expanded to =
fit this concept. The identifier element could be expanded to include =
XPath reference to the appropriate place in the XML data that =
corresponds to the identity of the object.=20

=20

I am glossing over a lot of details, but I wanted to get some feedback =
to the basic idea before I put any more time into this.

=20

Comments?

=20

=20
Jeff Bohren
Product Architect
OpenNetwork Technologies, Inc
=20
Try the industry's only 100% .NET-enabled identity management software. =
Download your free copy of Universal IdP Standard Edition today. Go to  =
<http://www.opennetwork.com/eval> www.opennetwork.com/eval.
=20
=20


------_=_NextPart_001_01C3BE6A.5935D2D0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns:o =3D=20
"urn:schemas-microsoft-com:office:office"><HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<TITLE>Message</TITLE>

<META content=3D"MSHTML 6.00.2800.1226" name=3DGENERATOR></HEAD>
<BODY>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =

size=3D2>Jeff,</FONT></SPAN></DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =

size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =
size=3D2>The=20
"XSD Data Model" and the expansion of the "identifier" to include XPath =
will=20
pretty much cover the requirement I proposed. Obviously we need to get =
into the=20
details on how to implement this.</FONT></SPAN></DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =

size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =
size=3D2>From=20
your examples, it seems that each data model will mutually exclude the =
others.=20
In other words, a PSP cannot use two data models at the same time. Is =
that the=20
case?</FONT></SPAN></DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =

size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =

size=3D2>Thanks,</FONT></SPAN></DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =

size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D859403015-09122003><FONT face=3DArial color=3D#0000ff =
size=3D2>Jesus=20
Fernandez</FONT></SPAN></DIV>
<BLOCKQUOTE dir=3Dltr style=3D"MARGIN-RIGHT: 0px">
  <DIV class=3DOutlookMessageHeader dir=3Dltr align=3Dleft><FONT =
face=3DTahoma=20
  size=3D2>-----Original Message-----<BR><B>From:</B> Jeff Bohren=20
  [mailto:jbohren@opennetwork.com]<BR><B>Sent:</B> Tuesday, December 09, =
2003=20
  9:50 AM<BR><B>To:</B> =
provision@lists.oasis-open.org<BR><B>Subject:</B>=20
  [provision] SPML 2.0 Data Model Proposal...<BR><BR></FONT></DIV>
  <DIV><FONT face=3DArial size=3D2>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT=20
  face=3D"Times New Roman"><FONT size=3D3>My proposal is that SPML 2.0 =
be expanded=20
  to support two data models which I will refer to as the &#8220;DSML =
Data Model&#8221; and=20
  the &#8220;XSD Data Model&#8221;. The DSML Data Model is the one =
currently used in SPML=20
  1.0. There is no reason that additional data models could not also be =
added if=20
  there seems to be if value (i.e. a &#8220;SAML Data Model&#8221;, or =
&#8220;Liberty Data Model&#8221;=20
  could also be added).<SPAN class=3D431164414-09122003> This would =
support the=20
  data model that IBM wants as well as being backwards compatible with =
the=20
  existing SPML 1.0 specification.</SPAN></FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>In my proposal each of the SPML verbs would be expanded to =
support both=20
  data models. For instance in response to a schema request, the schema =
response=20
  could look like the current SPML model:</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;schemaResponse&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;schema&gt;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;schemaIdentifier&gt;&#8230;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;attributeDefinition&gt;&#8230;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;objectClassDefinition&gt;&#8230;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;schema&gt;<o:p></o:p></FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;/schemaResponse&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>Or it could use the XSD Data Model be either including the =
XSD=20
  directly:</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;schemaResponse&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;schema&gt;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;xsd:schema&gt; &#8230;.</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;schema&gt;<o:p></o:p></FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;/schemaResponse&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>Or by referring to an XSD document externally:</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;schemaResponse&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;schema<SPAN style=3D"mso-spacerun: yes">&nbsp;=20
  =
</SPAN>externalURL=3D&#8221;http://www.acme.com/schemas/provisioning.xsd&=
#8221;=20
  /&gt;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;/schemaResponse&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>Likewise the add request could be modified to contain the =
current DSML=20
  attribute/values as in the current spec or it could include arbitrary =
XML as=20
  defined by the XSD returned in the schema response. For =
example:</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;spml:addRequest&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;acme:account&gt;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;acme:id&gt;jsmith&lt;/acme:id&gt;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: =
0.5in"><FONT=20
  face=3D"Times New Roman" size=3D3>&lt;acme:phoneNumbers&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN>&lt;acme:homePhone&gt;555-1212&lt;/acme: homePhone=20
  &gt;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN=20
  style=3D"mso-tab-count: =
3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN><SPAN lang=3DFR=20
  style=3D"mso-ansi-language: =
FR">&lt;acme:cellPhone&gt;555-1212&lt;/acme:=20
  cellPhone &gt;<o:p></o:p></SPAN></FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: =
0.5in"><FONT=20
  size=3D3><FONT face=3D"Times New Roman"><SPAN lang=3DFR=20
  style=3D"mso-ansi-language: FR">&lt;/acme:</SPAN>phoneNumbers<SPAN =
lang=3DFR=20
  style=3D"mso-ansi-language: =
FR">&gt;<o:p></o:p></SPAN></FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT =
size=3D3><FONT=20
  face=3D"Times New Roman"><SPAN lang=3DFR style=3D"mso-ansi-language: =
FR"><SPAN=20
  style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
  </SPAN></SPAN>&lt;/acme:account&gt;</FONT></FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>&lt;/spml:addRequest&gt;</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>Likewise the modify, delete, and search verbs could all be =
expanded to=20
  fit this concept. The identifier element could be expanded to include =
XPath=20
  reference to the appropriate place in the XML data that corresponds to =
the=20
  identity of the object. </FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>I am glossing over a lot of details, but I wanted to get some =
feedback=20
  to the basic idea before I put any more time into this.</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT=20
  face=3D"Times New Roman" size=3D3>&nbsp;</FONT></o:p></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><FONT face=3D"Times =
New Roman"=20
  size=3D3>Comments?</FONT></P>
  <P class=3DMsoNormal style=3D"MARGIN: 0in 0in 0pt"><o:p><FONT =
face=3DArial=20
  size=3D2></FONT></o:p>&nbsp;</P></FONT></DIV>
  <DIV>&nbsp;</DIV>
  <DIV align=3Dleft><FONT face=3DArial size=3D2>Jeff Bohren</FONT></DIV>
  <DIV align=3Dleft><FONT face=3DArial size=3D2>Product =
Architect</FONT></DIV>
  <DIV align=3Dleft><FONT face=3DArial size=3D2>OpenNetwork =
Technologies,=20
  Inc</FONT></DIV>
  <DIV align=3Dleft><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
  <DIV align=3Dleft>
  <DIV><FONT face=3DArial size=3D2><SPAN =
class=3D666091017-20102003><STRONG>Try the=20
  industry's only 100% .NET-enabled identity management software.=20
  Download&nbsp;your free copy of Universal IdP Standard Edition today. =
Go to=20
  </STRONG><A=20
  =
href=3D"http://www.opennetwork.com/eval";><STRONG>www.opennetwork.com/eval=
</STRONG></A><STRONG>.</STRONG></SPAN></FONT></DIV></DIV>
  <DIV align=3Dleft>&nbsp;</DIV>
  <DIV>&nbsp;</DIV></BLOCKQUOTE></BODY></HTML>

------_=_NextPart_001_01C3BE6A.5935D2D0--


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]