Sql Server query xml

60 views Asked by At

I need to write an sql query that "extract" all default inline namespace value of a xml columns having the default namespace (inline) that start with a prefix. The xml value is very complex and have a lot of custom ns. Here is an example:

<Activity xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:made="clr-namespace:Microsoft.Activities.Design.ExpressionTranslation;assembly=Microsoft.Activities.Design" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:msa="clr-namespace:MRCS.SmartStrategySystem.Activities;assembly=MRCS.SmartStrategySystem.CommonActivities" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:p="http://schemas.microsoft.com/workflow/2012/07/xaml/activities" xmlns:sads="http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger" xmlns:sap2010="http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" mc:Ignorable="sads sap2010" x:Class="Service.SimpleDelayedPing2">
<x:Members>
<x:Property Name="FilterName" Type="InArgument(x:String)">
<x:Property.Attributes>
<RequiredArgumentAttribute />
</x:Property.Attributes>
</x:Property>
<x:Property Name="FilterValue" Type="InArgument(x:String)">
<x:Property.Attributes>
<RequiredArgumentAttribute />
</x:Property.Attributes>
</x:Property>
<x:Property Name="Scope" Type="InArgument(x:String)">
<x:Property.Attributes>
<RequiredArgumentAttribute />
</x:Property.Attributes>
</x:Property>
<x:Property Name="Request" Type="InArgument(p:DynamicValue)" />
<x:Property Name="ReturnValue" Type="OutArgument(p:DynamicValue)" />
</x:Members>
<msa:SuiteServiceActivitySequence DisplayName="Service.Service1" sap2010:WorkflowViewState.IdRef="SuiteServiceActivitySequence_1" sads:DebugSymbol.Symbol="dw1DOlxFbXB0eS54YW1sAA==">
<msa:SuiteServiceActivitySequence.FilterName>
<InArgument x:TypeArguments="x:String">
<p:ExpressionContainerValue x:TypeArguments="x:String" DisplayName="FilterName">
<p:ExpressionContainerValue.Arguments>
<InArgument x:TypeArguments="x:String" x:Key="FilterName">
<ArgumentValue x:TypeArguments="x:String" ArgumentName="FilterName" />
</InArgument>
</p:ExpressionContainerValue.Arguments>
<ArgumentValue x:TypeArguments="x:String" ArgumentName="FilterName" />
</p:ExpressionContainerValue>
</InArgument>
</msa:SuiteServiceActivitySequence.FilterName>
<msa:SuiteServiceActivitySequence.FilterValue>
<InArgument x:TypeArguments="x:String">
<p:ExpressionContainerValue x:TypeArguments="x:String" DisplayName="FilterValue">
<p:ExpressionContainerValue.Arguments>
<InArgument x:TypeArguments="x:String" x:Key="FilterValue">
<ArgumentValue x:TypeArguments="x:String" ArgumentName="FilterValue" />
</InArgument>
</p:ExpressionContainerValue.Arguments>
<ArgumentValue x:TypeArguments="x:String" ArgumentName="FilterValue" />
</p:ExpressionContainerValue>
</InArgument>
</msa:SuiteServiceActivitySequence.FilterValue>
<msa:SuiteServiceActivitySequence.Request>
<InArgument x:TypeArguments="p:DynamicValue">
<p:ExpressionContainerValue x:TypeArguments="p:DynamicValue" DisplayName="Request">
<p:ExpressionContainerValue.Arguments>
<InArgument x:TypeArguments="p:DynamicValue" x:Key="Request">
<ArgumentValue x:TypeArguments="p:DynamicValue" ArgumentName="Request" />
</InArgument>
</p:ExpressionContainerValue.Arguments>
<ArgumentValue x:TypeArguments="p:DynamicValue" ArgumentName="Request" />
</p:ExpressionContainerValue>
</InArgument>
</msa:SuiteServiceActivitySequence.Request>
<msa:SuiteServiceActivitySequence.ReturnValue>
<InOutArgument x:TypeArguments="p:DynamicValue">
<p:ExpressionContainerReference x:TypeArguments="p:DynamicValue" DisplayName="ReturnValue">
<p:ExpressionContainerReference.Arguments>
<InOutArgument x:TypeArguments="p:DynamicValue" x:Key="ReturnValue">
<ArgumentReference x:TypeArguments="p:DynamicValue" ArgumentName="ReturnValue" />
</InOutArgument>
</p:ExpressionContainerReference.Arguments>
<ArgumentReference x:TypeArguments="p:DynamicValue" ArgumentName="ReturnValue" />
</p:ExpressionContainerReference>
</InOutArgument>
</msa:SuiteServiceActivitySequence.ReturnValue>
<msa:SuiteServiceActivitySequence.Scope>
<InArgument x:TypeArguments="x:String">
<p:ExpressionContainerValue x:TypeArguments="x:String" DisplayName="Scope">
<p:ExpressionContainerValue.Arguments>
<InArgument x:TypeArguments="x:String" x:Key="Scope">
<ArgumentValue x:TypeArguments="x:String" ArgumentName="Scope" />
</InArgument>
</p:ExpressionContainerValue.Arguments>
<ArgumentValue x:TypeArguments="x:String" ArgumentName="Scope" />
</p:ExpressionContainerValue>
</InArgument>
</msa:SuiteServiceActivitySequence.Scope>
<Delay Duration="00:00:05" sap2010:WorkflowViewState.IdRef="Delay_1" />
<Assign sap2010:WorkflowViewState.IdRef="Assign_2">
<Assign.To>
<OutArgument x:TypeArguments="p:DynamicValue">
<p:ExpressionContainerReference x:TypeArguments="p:DynamicValue" DisplayName="ReturnValue">
<p:ExpressionContainerReference.Arguments>
<InOutArgument x:TypeArguments="p:DynamicValue" x:Key="ReturnValue">
<ArgumentReference x:TypeArguments="p:DynamicValue" ArgumentName="ReturnValue" />
</InOutArgument>
</p:ExpressionContainerReference.Arguments>
<ArgumentReference x:TypeArguments="p:DynamicValue" ArgumentName="ReturnValue" />
</p:ExpressionContainerReference>
</OutArgument>
</Assign.To>
<Assign.Value>
<InArgument x:TypeArguments="p:DynamicValue">
<p:ExpressionContainerValue x:TypeArguments="p:DynamicValue" DisplayName="Request">
<p:ExpressionContainerValue.Arguments>
<InArgument x:TypeArguments="p:DynamicValue" x:Key="Request">
<ArgumentValue x:TypeArguments="p:DynamicValue" ArgumentName="Request" />
</InArgument>
</p:ExpressionContainerValue.Arguments>
<ArgumentValue x:TypeArguments="p:DynamicValue" ArgumentName="Request" />
</p:ExpressionContainerValue>
</InArgument>
</Assign.Value>
</Assign>
</msa:SuiteServiceActivitySequence>
</Activity>

and try to get all xmlns values that start with: wf://workflow.windows.net.

Any idea? Thank you

0

There are 0 answers