XpsAnalyzer Rules

The following table describes the rules that the XpsAnalysis tool uses to analyze XPS files. These rules are based on the XML Paper Specification (XPS) 1.0 specification. For more information about this specification, download the XML Paper Specification.

Open Packaging Conventions (OPC) Rules

Rule Name Data Type Explanation

CompressionOption

string

The value of the Compression option of the XPS package.

CorruptedOpc

bool

True if the XPS package does not conform to the OPC specification.

ForeignContentType

string

Content types that are not a part of the XPS specification.

ForeignRelationshipType

string

Relationship types that are not a part of the XPS 1.0 specification.

LargePartCount

long

The number of parts whose size exceeds a specified amount.

MaxFileSizeInBytes

long

The maximum size of the set of parts within the XPS package.

MaxPartRelationships

long

The maximum number of relationships for a part of the XPS package.

PackageRelationshipCount

long

The total number of relationships in the XPS package.

PartCount

long

The total number of parts in the OPC file.

TotalPartRelationships

long

The total number of part relationships.

XPS Trunk Rules

Rule Name Data Type Explanation

CorruptedXpsTrunk

bool

True if the XPS package does not conform to the XPS 1.0 specification (Trunk level).

FixedDocumentCount

long

The total number of documents in the XPS package.

HasCoreProperties

bool

True if the XPS package contains the XPS Core Properties part.

HasDiscardControl

bool

True if the XPS package contains the DiscardControl part.

HasDocumentPrintTicket

bool

True if the XPS package contains the document-level PrintTicket.

HasDocumentStructure

bool

True if the XPS package contains the DocumentStructure element.

HasJobPrintTicket

bool

True if the XPS package contains the DocumentSequence-level PrintTicket.

HasMoreThanOneSignatureBlockResourceInADocument

bool

True if the XPS package contains a document with more than one signature block resource.

PackageThumbnailType

string

The image type of the XPS package-level thumbnail.

SignatureBlockRequestCount

long

The total number of signatures in the XPS package.

XPS Page Rules

Rule Name Data Type Explanation

BleedBoxDimension

string

The dimension of NonDefault BleedBox in the XPS package.

BrushCount

long

The total number of Brushes elements in the XPS package.

CanvasCount

long

The total number of Canvas elements in the XPS package.

CanvasLanguage

string

The language of the Canvas element.

CanvasOpacityMaskBrush

string

The brush type of the Canvas OpacityMask element.

ContentBoxDimension

string

The dimension of NonDefault ContentBox in the XPS package.

CorruptedXpsPage

bool

True if the XPS package does not conform to the XPS 1.0 specification (Page level).

FixedPageCount

long

The total number of Page elements in the XPS package.

FontType

string

The font type found in the XPS package.

GeometryCount

long

The total number of Geometry elements in the XPS package.

GeometryFigureClosedFilledPatternRule

string

The type of the GeometryFigure.

GeometryFigureMaxSegmentCount

long

The maximum number of SegmentCount elements in GeometryFigures.

GeometryFigureMaxSegmentDataCount

long

The maximum number of SegmentDataCount elements in GeometryFigures.

GeometryFigureSegmentStrokePattern

string

The stroke pattern of the GeometryFigures element.

GeometryFigureSegmentType

string

The Segment Type of the GeometryFigure element.

GeometryFillRule

string

The FillRule of the geometry.

GlyphsBidiLevel

long

The BidiLevel of the Glyphs.

GlyphsCount

long

The total number of Glyphs elements in the XPS package.

GlyphsFillBrush

string

The brush type of the Glyphs Fill.

GlyphsLanguage

string

The language of the Glyphs.

GlyphsOpacityMaskBrush

string

The brush type of the Glyphs OpacityMask.

GlyphsStyleSimulations

string

The StyleSimulations of the Glyphs.

HasCanvasClipGeometryLocal

bool

True if the XPS package contains a Canvas element with local ClipGeometry.

HasCanvasClipGeometryRemote

bool

True if the XPS package contains a Canvas element with remote ClipGeometry.

HasCanvasHyperlinkTarget

bool

True if the XPS package contains a Canvas element with HyperlinkTarget.

HasCanvasName

bool

True if the XPS package contains a Canvas element with Name property.

HasCanvasOpacityEqualsOne

bool

True if the XPS package contains a Canvas element with Opacity=1.

HasCanvasOpacityEqualsToZero

bool

True if the XPS package contains a Canvas element with Opacity=0.

HasCanvasOpacityMaskBrushLocal

bool

True if the XPS package contains a Canvas element with local OpacityMaskBrush.

HasCanvasOpacityMaskBrushRemote

bool

True if the XPS package contains a Canvas element with remote OpacityMaskBrush.

HasCanvasTransformLocal

bool

True if the XPS package contains a Canvas element with local MatrixTransform.

HasCanvasTransformRemote

bool

True if the XPS package contains a Canvas element with remote MatrixTransform.

HasCanvasWithAccessibilityLongDescription

bool

True if the XPS package contains a Canvas element with AccessibilityLongDescription.

HasCanvasWithAccessibilityShortDescription

bool

True if the XPS package contains a Canvas element with AccessibilityShortDescription.

HasCanvasWithUseAliasedEdgeMode

bool

True if the XPS package contains a Canvas element with UseAliasedEdgeMode=True.

HasColorProfile

bool

True if the XPS package contains ColorProfile.

HasGeometryFigureWithMultipleSegmentTypes

bool

True if the XPS package contains a GeometryFigure element with multiple segment types.

HasGeometryFigureWithNonDefaultStartPoint

bool

True if the XPS package contains a GeometryFigure element with non default StartPoint (0.0, 0.0).

HasGeometryTransformLocal

bool

True if the XPS package contains a geometry with local MatrixTransform.

HasGeometryTransformRemote

bool

True if the XPS package contains a geometry with remote MatrixTransform.

HasGlyphsClipGeometryLocal

bool

True if the XPS package contains a Glyphs with local ClipGeometry.

HasGlyphsClipGeometryRemote

bool

True if the XPS package contains a Glyphs element with remote ClipGeometry.

HasGlyphsDeviceFontName

bool

True if the XPS package contains a Glyphs element with DeviceFontName.

HasGlyphsFillBrushLocal

bool

True if the XPS package contains a Glyphs element with local FillBrush.

HasGlyphsFillBrushRemote

bool

True if the XPS package contains a Glyphs element with remote FillBrush.

HasGlyphsFontFaceIndex

bool

True if the XPS package contains a Glyphs element with FontFaceIndex.

HasGlyphsHyperlinkTarget

bool

True if the XPS package contains a Glyphs element with HyperlinkTarget.

HasGlyphsName

bool

True if the XPS package contains a Glyphs element with Name property.

HasGlyphsOpacityEqualsOne

bool

True if the XPS package contains a Glyphs element with Opacity=1.

HasGlyphsOpacityEqualsToZero

bool

True if the XPS package contains a Glyphs element with Opacity=0.

HasGlyphsOpacityMaskBrushLocal

bool

True if the XPS package contains a Glyphs element with local OpacityMaskBrush.

HasGlyphsOpacityMaskBrushRemote

bool

True if the XPS package contains a Glyphs element with remote OpacityMaskBrush.

HasGlyphsTransformLocal

bool

True if the XPS package contains a Glyphs element with local MatrixTransform.

HasGlyphsTransformRemote

bool

True if the XPS package contains a Glyphs element with remote MatrixTransform.

HasGlyphsUnicodeString

bool

True if the XPS package contains a Glyphs element with UnicodeString.

HasGlyphsWithSideways

bool

True if the XPS package contains a Glyphs element with IsSideways property enabled.

HasHyperlinkTarget

bool

True if the XPS package contains a page with aHyperlink target.

HasImageBrushOpacityEqualsToOne

bool

True if the XPS package contains an ImageBrush with Opacity=1.

HasImageBrushOpacityEqualsToZero

bool

True if the XPS package contains an ImageBrush with Opacity=0.

HasImageBrushTransformLocal

bool

True if the XPS package contains an ImageBrush with Local MatrixTransform.

HasImageBrushTransformRemote

bool

True if the XPS package contains an ImageBrush with Remote MatrixTransform.

HasImageBrushWithColorProfileResource

bool

True if the XPS package contains an ImageBrush with ColorProfileResource.

HasImageBrushWithNonDefaultViewBox

bool

True if the XPS package contains an ImageBrush with a NonDefault ViewBox (0, 0, 1, 1).

HasImageBrushWithNonDefaultViewPort

bool

True if the XPS package contains an ImageBrush with a NonDefault ViewPort (0, 0, 1, 1).

HasLinearGradientBrushOpacityEqualsToOne

bool

True if the XPS package contains a LinearGradientBrush with Opacity=1.

HasLinearGradientBrushOpacityEqualsToZero

bool

True if the XPS package contains a LinearGradientBrush with Opacity=0.

HasLinearGradientBrushTransformLocal

bool

True if the XPS package contains a LinearGradientBrush with Local MatrixTransform.

HasLinearGradientBrushTransformRemote

bool

True if the XPS package contains a LinearGradientBrush with Remote MatrixTransform.

HasLinearGradientBrushWithColorProfileResource

bool

True if the XPS package contains a LinearGradientBrush with ColorProfileResource.

HasLinearGradientBrushWithNonDefaultEndPoint

string

True if the XPS package contains a LinearGradientBrush with a NonDefault EndPoint.

HasLinearGradientBrushWithNonDefaultGradientStopOffset

bool

True if the XPS package contains a LinearGradientBrush with a NonDefault GradientStopOffset.

HasLinearGradientBrushWithNonDefaultStartPoint

string

True if the XPS package contains a LinearGradientBrush with a NonDefault StartPoint.

HasLocalDictionary

bool

True if the XPS package contains a page that uses a Local Dictionary.

HasNonDefaultBleedBox

bool

True if the XPS package contains a page with a NonDefault BleedBox value.

HasNonDefaultContentBox

bool

True if the XPS package contains a page with a NonDefault ContentBox value.

HasPageName

bool

True if the XPS package contains a page with the Name attribute set.

HasPagePrintTicket

bool

True if the XPS package contains a Page level PrintTicket.

HasPathClipGeometryLocal

bool

True if the XPS package contains a Path with local ClipGeometry

HasPathClipGeometryRemote

bool

True if the XPS package contains a Path with a remote ClipGeometry value.

HasPathFillBrushLocal

bool

True if the XPS package contains a Path with local FillBrush.

HasPathFillBrushRemote

bool

True if the XPS package contains a Path with remote FillBrush.

HasPathGeometryLocal

bool

True if the XPS package contains a Path with local a Geometry property.

HasPathGeometryRemote

bool

True if the XPS package contains a Path with a remote Geometry property.

HasPathHyperlinkTarget

bool

True if the XPS package contains a Path with a HyperlinkTarget value.

HasPathName

bool

True if the XPS package contains a Path with a Name property.

HasPathOpacityEqualsOne

bool

True if the XPS package contains a Path with Opacity=1.

HasPathOpacityEqualsToZero

bool

True if the XPS package contains a Path with Opacity=0.

HasPathOpacityMaskBrushLocal

bool

True if the XPS package contains a Path with a local OpacityMaskBrush value.

HasPathOpacityMaskBrushRemote

bool

True if the XPS package contains a Path with remote an OpacityMaskBrush.

HasPathStrokeBrushLocal

bool

True if the XPS package contains a Path with a local StrokeBrush property.

HasPathStrokeBrushRemote

bool

True if the XPS package contains a Path with a remote StrokeBrush property.

HasPathStrokeDashOffset

bool

True if the XPS package contains a Path with StrokeDashOffset.

HasPathTransformLocal

bool

True if the XPS package contains a Path with a local MatrixTransform.

HasPathTransformRemote

bool

True if the XPS package contains a Path with a remote MatrixTransform.

HasPathWithAccessibilityLongDescription

bool

True if the XPS package contains a Path with AccessibilityLongDescription value.

HasPathWithAccessibilityShortDescription

bool

True if the XPS package contains a Path with AccessibilityShortDescription

HasPathWithNonDefaultStrokeMiterLimit

bool

True if the XPS package contains a Path with a NonDefault StrokeMiterLimit.

HasPathWithNonDefaultStrokeThickness

bool

True if the XPS package contains a Path with a NonDefault StrokeThickness.

HasPathWithSnapsToPixel

bool

True if the XPS package contains a Path with a SnapToPixels value.

HasRadialGradientBrushOpacityEqualsToOne

bool

True if the XPS package contains a RadialGradientBrush with Opacity=1.

HasRadialGradientBrushOpacityEqualsToZero

bool

True if the XPS package contains a RadialGradientBrush with Opacity=0.

HasRadialGradientBrushTransformLocal

bool

True if the XPS package contains a RadialGradientBrush with Local MatrixTransform.

HasRadialGradientBrushTransformRemote

bool

True if the XPS package contains a RadialGradientBrush with Remote MatrixTransform.

HasRadialGradientBrushWithColorProfileResource

bool

True if the XPS package contains a RadialGradientBrush with ColorProfileResource.

HasRadialGradientBrushWithNonDefaultCenter

bool

True if the XPS package contains a RadialGradientBrush with a NonDefault Center.

HasRadialGradientBrushWithNonDefaultGradientOrigin

bool

True if the XPS package contains a RadialGradientBrush with a NonDefault GradientOrigin.

HasRadialGradientBrushWithNonDefaultGradientStopOffset

bool

True if the XPS package contains a RadialGradientBrush with a NonDefault GradientStopOffset.

HasRadialGradientBrushWithNonDefaultRadiiSizes

bool

True if the XPS package contains a RadialGradientBrush with a NonDefault RadiiSizes.

HasRemoteDictionary

bool

True if the XPS package contains a page that uses a RemoteDictionary.

HasSolidColorBrushOpacityEqualsToOne

bool

True if the XPS package contains a SolidColorBrush with Opacity=1.

HasSolidColorBrushOpacityEqualsToZero

bool

True if the XPS package contains a SolidColorBrush with Opacity=0.

HasSolidColorBrushWithColorProfileResource

bool

True if the XPS package contains a SolidColorBrush with ColorProfileResource.

HasStoryFragment

bool

True if the XPS package contains a StoryFragment part.

HasVisualBrushOpacityEqualsToOne

bool

True if the XPS package contains a VisualBrush element with Opacity=1.

HasVisualBrushOpacityEqualsToZero

bool

True if the XPS package contains a VisualBrush element with Opacity=0.

HasVisualBrushTransformLocal

bool

True if the XPS package contains a VisualBrush element with Local MatrixTransform.

HasVisualBrushTransformRemote

bool

True if the XPS package contains a VisualBrush element with Remote MatrixTransform.

HasVisualBrushWithLocalCanvas

bool

True if the XPS package contains a VisualBrush element with a Local Canvas.

HasVisualBrushWithLocalGlyphs

bool

True if the XPS package contains a VisualBrush element with a Local Glyphs.

HasVisualBrushWithLocalPath

bool

True if the XPS package contains a VisualBrush element with a Local Path.

HasVisualBrushWithNonDefaultViewBox

bool

True if the XPS package contains a VisualBrush element with a NonDefault ViewBox (0, 0, 1, 1).

HasVisualBrushWithNonDefaultViewPort

bool

True if the XPS package contains a VisualBrush element with a NonDefault ViewPort (0, 0, 1, 1).

HasVisualBrushWithRemoteCanvas

bool

True if the XPS package contains a VisualBrush element with a Remote Canvas.

HasVisualBrushWithRemoteGlyphs

bool

True if the XPS package contains a VisualBrush element with a Remote Glyphs.

HasVisualBrushWithRemotePath

bool

True if the XPS package contains a VisualBrush element with a Remote Path.

ImageBrushCount

long

The total number of ImageBrush elements in the XPS package.

ImageBrushTileMode

string

The TileMode value of the ImageBrush element.

ImageBrushType

string

The Image type value of the ImageBrush element.

LinearGradientBrushColorInterpolationMode

string

The ColorInterpolationMode value of the LinearGradientBrush element.

LinearGradientBrushColorType

string

The Color Type value of the LinearGradientBrush element.

LinearGradientBrushContextColorChannelCount

string

The Context Color Channel Count value of the LinearGradientBrush element.

LinearGradientBrushCount

long

The total number of LinearGradientBrush elements in the XPS package.

LinearGradientBrushSpreadMethod

string

The SpreadMethod value of the LinearGradientBrush element.

LinkTargetsCount

long

The total number of LinkTargets elements in the XPS package.

LocalDictionaryContent

string

The type of Sharable Object found in this Local Dictionary.

MaxGlyphsFontRenderingEMSize

long

The maximum FontRenderingEmSize in a Glyphs element.

MaxGlyphsIndicesInAGlyphs

long

The maximum size of Indices in a Glyphs element.

MaxGlyphsMappingsInAGlyphs

long

The maximum size of Mappings in a Glyphs element.

MaxGlyphsProhibitedCaretStopCountInAGlyphs

long

The maximum size of ProhibitedCaretStopCount in a Glyphs element.

MaxGradientStopsInALinearGradientBrush

long

The maximum number of GradientStops in a LinearGradientBrush element.

MaxGradientStopsInARadialGradientBrush

long

The maximum number of GradientStops in a RadialGradientBrush element.

MaxStrokeDashesInAPath

long

The maximum number of StrokeDashes in a Path element.

PageDimension

string

The width and height of a Page in the XPS package.

PageLanguage

string

The language of the page.

PageThumbnailType

string

The Image type of the Page-level thumbnail.

PathCount

long

The total number of Path elements in the XPS package.

PathFillBrush

string

The brush type of the Path Fill.

PathLanguage

string

The Language value of the Path element.

PathOpacityMaskBrush

string

Type of Brush of the Path OpacityMask.

PathStrokeBrush

string

The brush type of the Path Stroke property.

PathStrokeDashCap

string

The StrokeDashCap type of the Path element.

PathStrokeEndLineCap

string

The StrokeEndLineCap value of the Path element.

PathStrokeLineJoin

string

The StrokeLineJoin value of the Path element.

PathStrokeStartLineCap

string

The StrokeStartLineCap value of the Path element.

RadialGradientBrushColorInterpolationMode

string

The ColorInterpolationMode value of the RadialGradientBrush element.

RadialGradientBrushColorType

string

The Color Type value of the RadialGradientBrush element.

RadialGradientBrushContextColorChannelCount

string

The Context Color Channel Count of the RadialGradientBrush element.

RadialGradientBrushCount

long

The total number of RadialGradientBrush elements in the XPS package.

RadialGradientBrushEllipseOrCircle

string

Defines whether the gradient brush is an ellipse or circle.

RadialGradientBrushSpreadMethod

string

The SpreadMethod value of the RadialGradientBrush element.

RemoteDictionaryContent

string

The type of Sharable Object found in this Remote Dictionary.

SolidColorBrushColorType

string

The Color Type of the SolidColorBrush element.

SolidColorBrushContextColorChannelCount

string

The Context Color Channel Count of the SolidColorBrush element.

SolidColorBrushCount

long

The total number of SolidColorBrush elements in the XPS package.

VisualBrushCount

long

The total number of VisualBrush elements in the XPS package.

VisualBrushTileMode

string

The TileMode value of the VisualBrush element.

VisualCount

long

The total number of Visuals in the XPS package.

Digital Signature Rules

Rule name Data type Explanation

CorruptedDigitalSignature

bool

True if the XPS package contains a corrupted digital signature.

SignatureCount

long

The total number of digital signatures in the XPS package.

XpsSignaturePolicy

string

The XPS Signature Policy value of the Signature element.

HasInvalidXpsSignature

bool

True if the XPS package contains an invalid XPS Signature element.

XpsSignatureStatus

string

The Signature Status value of the Signature element in the case where the signature is invalid. In other words, this rule is only enabled when HasInvalidXpsSignature is True.

MaxNumberOfCertificatesInASignature

long

The maximum number of certificates found in a Signature element.

HasXpsSignatureWithEmptyID

bool

True if the XPS package contains an XPS Signature element with empty ID.

SignatureTimeFormat

string

The Signature Time Format value of the Signature element.

MaxNumberOfCustomObjectsInASignature

long

The maximum number of Custom Objects found in a Signature element.

MaxNumberOfCustomReferencesInASignature

long

The maximum number of Custom References found in a Signature element.

Miscellaneous Rules

Rule name Data type Explanation

CorruptedPageRendering

bool

True if the XPS package contains a non-renderable page.