Following is a reproduction of liberty-idsis-pp-v1.0.xsd, the XSD file that accompanies the Liberty ID-SIS Personal Profile Service Specification as discussed in Chapter 6, Data Services.
<!-- 2003-11-02--> <xs:schema targetNamespace="urn:liberty:id-sis-pp:2003-08" xmlns="urn:liberty:id-sis-pp:2003-08" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" version="1.0"> <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/> <xs:annotation> <xs:documentation>Title: Liberty ID-WSF-SIS Personal Profile Services Schema </xs:documentation> <xs:documentation>The source code in this XSD file was excerpted verbatim from: Liberty Liberty ID-SIS Personal Profile Service Specification Version 1.2 12th November 2003 Copyright (c) 2003 Liberty Alliance participants, see https://www.projectliberty.org/specs/idwsf_copyrights.html </xs:documentation> </xs:annotation> <xs:include schemaLocation="liberty-idwsf-dst-v1.0.xsd"/> <xs:include schemaLocation="liberty-idwsf-dst-dt-v1.0.xsd"/> <xs:complexType name="KeyInfoType" mixed="true"> <xs:complexContent mixed="true"> <xs:extension base="ds:KeyInfoType"> <xs:attribute ref="modificationTime"/> <xs:attribute ref="ACC"/> <xs:attribute ref="ACCTime"/> <xs:attribute ref="modifier"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:simpleType name="SelectType"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:element name="PP" type="PPType"/> <xs:complexType name="PPType"> <xs:sequence> <xs:element ref="InformalName" minOccurs="0"/> <xs:element ref="LInformalName" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="CommonName" minOccurs="0"/> <xs:element ref="LegalIdentity" minOccurs="0"/> <xs:element ref="EmploymentIdentity" minOccurs="0"/> <xs:element ref="AddressCard" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="MsgContact" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="Facade" minOccurs="0"/> <xs:element ref="Demographics" minOccurs="0"/> <xs:element ref="SignKey" minOccurs="0"/> <xs:element ref="EncryptKey" minOccurs="0"/> <xs:element ref="EmergencyContact" minOccurs="0"/> <xs:element ref="LEmergencyContact" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="InformalName" type="DSTString"/> <xs:element name="LInformalName" type="DSTLocalizedString"/> <xs:element name="CommonName" type="CommonNameType"/> <xs:complexType name="CommonNameType"> <xs:sequence> <xs:element ref="CN" minOccurs="0"/> <xs:element ref="LCN" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="AltCN" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="LAltCN" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="AnalyzedName" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="CN" type="DSTString"/> <xs:element name="LCN" type="DSTLocalizedString"/> <xs:element name="AltCN" type="DSTString"/> <xs:element name="LAltCN" type="DSTLocalizedString"/> <xs:element name="AnalyzedName" type="AnalyzedNameType"/> <xs:complexType name="AnalyzedNameType"> <xs:sequence> <xs:element ref="PersonalTitle" minOccurs="0"/> <xs:element ref="LPersonalTitle" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="FN" minOccurs="0"/> <xs:element ref="LFN" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="SN" minOccurs="0"/> <xs:element ref="LSN" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="MN" minOccurs="0"/> <xs:element ref="LMN" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attribute name="nameScheme" type="xs:anyURI" use="optional"/> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="PersonalTitle" type="DSTString"/> <xs:element name="LPersonalTitle" type="DSTLocalizedString"/> <xs:element name="FN" type="DSTString"/> <xs:element name="LFN" type="DSTLocalizedString"/> <xs:element name="SN" type="DSTString"/> <xs:element name="LSN" type="DSTLocalizedString"/> <xs:element name="MN" type="DSTString"/> <xs:element name="LMN" type="DSTLocalizedString"/> <xs:element name="LegalIdentity" type="LegalIdentityType"/> <xs:complexType name="LegalIdentityType"> <xs:sequence> <xs:element ref="LegalName" minOccurs="0"/> <xs:element ref="LLegalName" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="AnalyzedName" minOccurs="0"/> <xs:element ref="VAT" minOccurs="0"/> <xs:element ref="AltID" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="DOB" minOccurs="0"/> <xs:element ref="Gender" minOccurs="0"/> <xs:element ref="MaritalStatus" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="LegalName" type="DSTString"/> <xs:element name="LLegalName" type="DSTLocalizedString"/> <xs:element name="VAT" type="VATType"/> <xs:complexType name="VATType"> <xs:sequence> <xs:element ref="IDValue"/> <xs:element ref="IDType" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="IDValue" type="DSTString"/> <xs:element name="IDType" type="DSTURI"/> <xs:element name="AltID" type="AltIDType"/> <xs:complexType name="AltIDType"> <xs:sequence> <xs:element ref="IDValue"/> <xs:element ref="IDType" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="DOB" type="DSTDate"/> <xs:element name="Gender" type="DSTURI"/> <xs:element name="MaritalStatus" type="DSTURI"/> <xs:element name="EmploymentIdentity" type="EmploymentIdentityType"/> <xs:complexType name="EmploymentIdentityType"> <xs:sequence> <xs:element ref="JobTitle" minOccurs="0"/> <xs:element ref="LJobTitle" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="O" minOccurs="0"/> <xs:element ref="LO" minOccurs="0"/> <xs:element ref="AltO" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="AltLO" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="JobTitle" type="DSTString"/> <xs:element name="LJobTitle" type="DSTLocalizedString"/> <xs:element name="O" type="DSTString"/> <xs:element name="LO" type="DSTLocalizedString"/> <xs:element name="AltO" type="DSTString"/> <xs:element name="AltLO" type="DSTLocalizedString"/> <xs:element name="AddressCard" type="AddressCardType"/> <xs:complexType name="AddressCardType"> <xs:sequence> <xs:element ref="AddrType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="Address" minOccurs="0"/> <xs:element ref="Nick" minOccurs="0"/> <xs:element ref="LNick" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="LComment" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="AddrType" type="DSTURI"/> <xs:element name="Address" type="AddressType"/> <xs:complexType name="AddressType"> <xs:sequence> <xs:element ref="PostalAddress" minOccurs="0"/> <xs:element ref="LPostalAddress" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="PostalCode" minOccurs="0"/> <xs:element ref="L" minOccurs="0"/> <xs:element ref="LL" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="St" minOccurs="0"/> <xs:element ref="LSt" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="C" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="PostalAddress" type="DSTString"/> <xs:element name="LPostalAddress" type="DSTLocalizedString"/> <xs:element name="PostalCode" type="DSTString"/> <xs:element name="L" type="DSTString"/> <xs:element name="LL" type="DSTLocalizedString"/> <xs:element name="St" type="DSTString"/> <xs:element name="LSt" type="DSTLocalizedString"/> <xs:element name="C" type="DSTString"/> <xs:element name="Nick" type="DSTString"/> <xs:element name="LNick" type="DSTLocalizedString"/> <xs:element name="LComment" type="DSTString"/> <xs:element name="MsgContact" type="MsgContactType"/> <xs:complexType name="MsgContactType"> <xs:sequence> <xs:element ref="Nick" minOccurs="0"/> <xs:element ref="LNick" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="LComment" minOccurs="0"/> <xs:element ref="MsgType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="MsgMethod" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="MsgTechnology" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="MsgProvider" minOccurs="0"/> <xs:element ref="MsgAccount" minOccurs="0"/> <xs:element ref="MsgSubaccount" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="MsgType" type="DSTURI"/> <xs:element name="MsgMethod" type="DSTURI"/> <xs:element name="MsgTechnology"> <xs:complexType> <xs:complexContent> <xs:extension base="DSTURI"> <xs:attribute name="msgLimit" type="xs:integer" use="optional"/> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:element name="MsgProvider" type="DSTString"/> <xs:element name="MsgAccount" type="DSTString"/> <xs:element name="MsgSubaccount" type="DSTString"/> <xs:element name="Facade" type="FacadeType"/> <xs:complexType name="FacadeType"> <xs:sequence> <xs:element ref="MugShot" minOccurs="0"/> <xs:element ref="WebSite" minOccurs="0"/> <xs:element ref="NamePronounced" minOccurs="0"/> <xs:element ref="GreetSound" minOccurs="0"/> <xs:element ref="GreetMeSound" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="MugShot" type="DSTURI"/> <xs:element name="WebSite" type="DSTURI"/> <xs:element name="NamePronounced" type="DSTURI"/> <xs:element name="GreetSound" type="DSTURI"/> <xs:element name="GreetMeSound" type="DSTURI"/> <xs:element name="Demographics" type="DemographicsType"/> <xs:complexType name="DemographicsType"> <xs:sequence> <xs:element ref="DisplayLanguage" minOccurs="0"/> <xs:element ref="Language" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="Birthday" minOccurs="0"/> <xs:element ref="Age" minOccurs="0"/> <xs:element ref="TimeZone" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> <xs:attributeGroup ref="commonAttributes"/> </xs:complexType> <xs:element name="DisplayLanguage" type="DSTString"/> <xs:element name="Language" type="DSTString"/> <xs:element name="Birthday" type="DSTMonthDay"/> <xs:element name="Age" type="DSTInteger"/> <xs:element name="TimeZone" type="DSTString"/> <xs:element name="SignKey" type="KeyInfoType"/> <xs:element name="EncryptKey" type="KeyInfoType"/> <xs:element name="EmergencyContact" type="DSTString"/> <xs:element name="LEmergencyContact" type="DSTLocalizedString"/> </xs:schema> |