Skip to Content.
Sympa Menu

mace-opensaml-users - RE: [OpenSAML] OpenSAML 2.0 custom data type help

Subject: OpenSAML user discussion

List archive

RE: [OpenSAML] OpenSAML 2.0 custom data type help


Chronological Thread 
  • From: "Scott Cantor" <>
  • To: <>
  • Subject: RE: [OpenSAML] OpenSAML 2.0 custom data type help
  • Date: Mon, 9 Feb 2009 15:12:56 -0500
  • Organization: The Ohio State University

Scott Cantor wrote on 2009-02-09:
> I know this much...if you want the XML content to be directly composed
> with the AttributeValue element, than you need to instantiate your
> XMLObject class with a builder call that overrides the element QName to
> be saml:AttributeValue.
>
> That's legal, and is actually what is meant by an xsi:type of your element's
> type.

This is confusing to read, let me illustrate what I mean. Say your custom
content is an element <foo:Bar> (with whatever that includes in the way of
attributes and children) and has an xsi:type of foo:BarType.

Now say you want this:

<saml:AttributeValue>
<foo:Bar>...</foo:Bar>
</saml:AttributeValue>

That is NOT an xsi:type of foo:BarType; the content model instead is a
sequence of one <foo:Bar> element, which is not what foo:BarType is.

Leaving aside whether you output the xsi:type or not, I raise this so you can
decide what it is you really want to do.

If you wanted the XML to reflect an xsi:type of foo:BarType for the
attribute's values, then instead you want this:

<saml:AttributeValue>
...
</saml:AttributeValue>

where the content there is whatever the content of <foo:Bar> would be.

The former case, you need to build an AttributeValue object and add your
XMLObject as a child.

The latter case, you need to build your XMLObject and override the element
QName.

Neither will be handled well by other SAML code. The latter seems to really
confuse them though, because they have problems dealing with the fact that
AttributeValue itself might carry XML attributes and child content directly,
rather than indirectly through a child element.

HTH,
-- Scott





Archive powered by MHonArc 2.6.16.

Top of Page