Compartir a través de


publicationRule

Specifies a list of publication rules comprising a publication grammar for enhanced presence category instances.

     <publicationRule 
          rulType="ruleTypeEnumEx" 
          categoryName="xs:string"
          containerId="xs:integer"
          preferredSelfConsumption="xs:boolean"
          [anyAttribute]="anyType">[0..*]
        <instanceId 
             type="instanceIdValuesEnumEx" 
             value="xs:integer" 
             [anyAttribute]="anyType">[0..1]
        </instanceId>
        <expireType 
             type="expireTypeValuesEnumEx"  
             expireTime="xs:integer"  --> required only @type="time"
             [anyAttribute]="anyType">[0..1]
        </expireType>
        <categoryData>xs:string</categoryData>[0..1]
        <ct:delimiter/>[0..*]
        <[any]>anyType</[any]>[0..*]
        <ct:end/>[0..1]
        <ct:extension>[any]</ct:extension>[0..1]
     </publicationRule>

publicationRuleType

Attributes and Elements

The following sections describe attributes, child elements, and parent elements.

Attributes

Attribute

Description

[anyAttribute]

Any attribute

ruleType

A required string value to specify type of this publication rule. Lync Server 2010 supports the following predefined values:

transformation

The rule is for normal publication in which XLST transformation can be used to determine the final published data

bootstrap

The rule is for the initial publication performed by Microsoft Lync 2010 or another client when it starts the first time.

cleanup

The publication rule is used to clean up a publication.

categoryName

A required string value specifying the name of a category whose instances are published according to this publication rule.

containerId

A required integer value specifying the Id of a container where the specified category data is published.

preferredSelfConsumption

An optional Boolean value to indicate if the specified publication is preferred for self-consumption. The default value is false.

Child Elements

Element

Occurrence

Description

instanceId

0 or 1

Specifies the Id of the category instance published according to this publication rule.

expireType

0 or 1

Specifies the expiry policy of this publication.

categoryData

0 or 1

Specifies an XSLT transform to compute the category data to be published.

delimiter

0 or more

A marker to begin a version-dependent schema extension.

[any]

0 or more

Any element in the namespace of the parent element, specifying the extension to the parent element introduced in a particular version of the schema.

end

0 or 1

The marker to end all the schema extensions.

extension

0 or 1

Application-specified extension to the parent element.

Parent Elements

Element

Description

publicationList

The list of publication rules that includes this one.

Text Value

None

Example

The following example shows the publication rules for publishing note category instances used by Lync 2010.

<categoryPublicationManifest 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
     minSupportedClientVersion="2.0.0.0" 
     xmlns="https://schemas.microsoft.com/2008/09/sip/categoryPublicationManifest">
  <publicationList>

    <publicationRule ruleType="transformation" categoryName="note" containerId="100">
      <categoryData>
        <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
             version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
             xmlns:ct="https://schemas.microsoft.com/2006/09/sip/commontypes" 
             xmlns:tns="https://schemas.microsoft.com/2006/09/sip/note" 
             exclude-result-prefixes="tns ct"> 
          <xsl:output method="xml" encoding="utf-8" indent="yes"/> 
          <xsl:strip-space elements="*"/> 
          <xsl:template match="node()"> 
            <xsl:apply-templates select="//tns:note"/> 
          </xsl:template> 
          <xsl:template match="tns:note"> 
            <xsl:copy /> 
          </xsl:template> 
        </xsl:stylesheet>
      </categoryData> 
    </publicationRule>
    <publicationRule ruleType="transformation" categoryName="note" containerId="200" /> 
    <publicationRule ruleType="transformation" categoryName="note" containerId="300" /> 
    <publicationRule ruleType="transformation" categoryName="note" containerId="400" preferredSelfConsumption="true" /> 
    <publicationRule ruleType="transformation" categoryName="note" containerId="32000">
      <categoryData>
        <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" 
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
            xmlns:ct="https://schemas.microsoft.com/2006/09/sip/commontypes" 
            xmlns:tns="https://schemas.microsoft.com/2006/09/sip/note" 
            exclude-result-prefixes="tns ct"> 
          <xsl:output method="xml" encoding="utf-8" indent="yes"/> 
          <xsl:strip-space elements="*"/> 
          <xsl:template match="node()"> 
            <xsl:apply-templates select="//tns:note"/> 
          </xsl:template> 
          <xsl:template match="tns:note"> 
            <xsl:copy /> 
          </xsl:template> 
        </xsl:stylesheet>
      </categoryData> 
    </publicationRule>

  </publicationList>
</categoryPublicationManifest>

The publication rule in the above example specifies that the note category instances are published as follows when a publication request is made.

  • Publish note category instances, without modification, to Containers 200, 300, and 400.

  • Remove the data value of the note category instance using the supplied XSLT transform and publishes the empty note category instance to Containers 100 and 32000.

Element Information

Namespace

https://schemas.microsoft.com/2008/09/sip/categoryPublicationManifest

Schema Name

categoryPublicationManifest

Validation File

PublicationGrammarSchemaForNewPublicationManifest.xsd

Can be Empty

False

See Also

Concepts

Publication Grammar, Privacy and Interoperability