Data model extension XML must be defined in the namespace novell:liberty:wsf:config:1:0:0 and that namespace must be defined on the SchemaExtensions element. Normally, the namespace prefix wsfc is used. An example of data model extension XML is:
<wsfc:SchemaExtensions xmlns:wsfc="novell:liberty:wsf:config:1:0:0"> <wsfc:Root parent="/pp:PP/pp:Facade/pp:Extension" package="com.novell.nidp.liberty.wsf.idsis.ppservice.extensions" resourceClass="PPExtensionsResDesc"> <wsfc:Group resourceId="PP.EXT.FC.GROUP" descriptionResourceId="PP.EXT.FC.GROUP.DESC"> <wsfc:Extension name="AliasName" class="FacadeAliasName" syntax="String" format="CaseIgnore" resourceId="PP.EXT.FC.AliasName" min="0" max="1"/> <wsfc:Extension name="FavoriteURLs" class="FacadeFavoriteURLs" syntax="String" format="CaseExact" resourceId="PP.EXT.FC.FavoriteURLs" min="0" max="UNBOUNDED"/> </wsfc:Group> </wsfc:Root> <wsfc:Root parent="/pp:PP/pp:Demographics/pp:Extension" package="com.novell.nidp.liberty.wsf.idsis.ppservice.extensions" resourceClass="PPExtensionsResDesc"> <wsfc:Group resourceId="PP.EXT.DM.GROUP" descriptionResourceId="PP.EXT.DM.GROUP.DESC"> <wsfc:Extension name="EyeColor" class="DemographicsEyeColor" syntax="String" format="URI" resourceId="PP.EXT.DM.EyeColor" min="0" max="UNBOUNDED"> <wsfc:ValueSet> <wsfc:Value resourceId="PP.EXT.DM.HC.Blue" value="urn:pp:dm:blue"/> <wsfc:Value resourceId="PP.EXT.DM.HC.Brown" value="urn:pp:dm:brown"/> <wsfc:Value resourceId="PP.EXT.DM.HC.Green" value="urn:pp:dm:green"/> <wsfc:Value resourceId="PP.EXT.DM.HC.Gray" value="urn:pp:dm:gray"/> <wsfc:Value resourceId="PP.EXT.DM.HC.Hazel" value="urn:pp:dm:hazel"/> </wsfc:ValueSet> </wsfc:Extension> </wsfc:Group> </wsfc:Root> <wsfc:Root parent="/pp:PP/pp:Extension" package="com.novell.nidp.liberty.wsf.idsis.ppservice.extensions" resourceClass="PPExtensionsResDesc"> <wsfc:Group resourceId="PP.EXT.AU.GROUP" descriptionResourceId="PP.EXT.AU.GROUP.DESC"> <wsfc:Extension name="Automobile" class="Automobile" syntax="Container" resourceId="PP.EXT.Automobile" min="0" max="UNBOUNDED" namingClass="AutomobileLicensePlate"> <wsfc:Group resourceId="PP.EXT.AU.DETAILS.GROUP" descriptionResourceId="PP.EXT.AU.DETAILS.GROUP.DESC"> <wsfc:Extension name="AutomobileModel" class="AutomobileModel" syntax="String" resourceId="PP.EXT.AU.Model" min="0" max="1"/> <wsfc:Extension name="AutomobileMake" class="AutomobileMake" syntax="String" format="CaseIgnore" resourceId="PP.EXT.AU.Make" min="0" max="1"/> <wsfc:Extension name="AutomobileLicensePlate" class="AutomobileLicensePlate" syntax="String" format="CaseIgnore" resourceId="PP.EXT.AU.LicensePlate" min="0" max="1"/> </wsfc:Group> </wsfc:Extension> </wsfc:Group> </wsfc:Root> </wsfc:SchemaExtensions>