Question

I wrote several XQuery statements to shred existing KPI and Dashboard metadata but I would like to validate my queries by reviewing the corresponding Xml Schema or DTD if it exists. I searched online but could not find what i was looking for.

The metadata is stored in Performance Point's back end Sql Server database in the dbo.FCObjects table's SerializedXml column.

Was it helpful?

Solution

The PPS Authoring Service exposes a WSDL you can validate your XML against.

You can grab this WSDL from the open specification documentation at:

http://msdn.microsoft.com/en-us/library/dd930052(v=office.12).aspx

Or, by hitting a SharePoint server using the following URL:

http://server/_vti_bin/pps/PPSAuthoringService.asmx?wsdl

In your example, a KPI is:

  <xs:complexType name="Kpi">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:FirstClassElement">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="Actuals" type="tns:ArrayOfKpiMeasure"/>
          <xs:element minOccurs="0" maxOccurs="1" name="Targets" type="tns:ArrayOfTarget"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

And, a Dashboard is:

  <xs:complexType name="Dashboard">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:FirstClassElement">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="Pages" type="tns:ArrayOfDashboardElement"/>
        </xs:sequence>
        <xs:attribute name="TemplateType" type="xs:string"/>
        <xs:attribute name="DeploymentPath" type="xs:string"/>
        <xs:attribute name="SitePath" type="xs:string"/>
        <xs:attribute name="MasterPagePath" type="xs:string"/>
        <xs:attribute name="MasterPageDisplayName" type="xs:string"/>
        <xs:attribute name="PageList" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

If you need help validating an XML instance against a WSDL, take a look at Validate XML instance document against WSDL.

OTHER TIPS

If there is sample XML source available, a validator can be produced via that reference document with one of the following methods:

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top