Add device metering values import

This commit is contained in:
2025-09-08 19:09:12 +09:00
parent 28079c4d84
commit 8b3e1249c0
25 changed files with 8727 additions and 0 deletions

View File

@ -0,0 +1,23 @@
using Hcs.Client.Api.Request.DeviceMetering;
using Hcs.Service.Async.DeviceMetering;
using System.Threading;
using System.Threading.Tasks;
namespace Hcs.Client.Api
{
// http://open-gkh.ru/DeviceMeteringServiceAsync/
public class DeviceMeteringApi(ClientBase client) : ApiBase(client)
{
/// <summary>
/// Импорт показаний приборов учета
/// </summary>
/// <param name="values">Показания прибора учета</param>
/// <param name="token">Токен отмены</param>
/// <returns>true, если операция выполнена успешно, иначе - false</returns>
public async Task<bool> ImportMeteringDeviceValuesAsync(importMeteringDeviceValuesRequestMeteringDevicesValues values, CancellationToken token = default)
{
var request = new ImportMeteringDeviceValuesRequest(client);
return await request.ExecuteAsync(values, token);
}
}
}

View File

@ -0,0 +1,55 @@
using Hcs.Client.Api.Request;
using Hcs.Client.Api.Request.Adapter;
using Hcs.Service.Async.DeviceMetering;
using System.Threading.Tasks;
namespace Hcs.Service.Async.DeviceMetering
{
#pragma warning disable IDE1006
public partial class getStateResult : IGetStateResultMany { }
#pragma warning restore IDE1006
public partial class DeviceMeteringPortTypesAsyncClient : IAsyncClient<RequestHeader>
{
public async Task<IGetStateResponse> GetStateAsync(RequestHeader header, IGetStateRequest request)
{
return await getStateAsync(header, (getStateRequest)request);
}
}
#pragma warning disable IDE1006
public partial class getStateResponse : IGetStateResponse
#pragma warning restore IDE1006
{
public IGetStateResult GetStateResult => getStateResult;
}
public partial class AckRequestAck : IAck { }
public partial class ErrorMessageType : IErrorMessage { }
#pragma warning disable IDE1006
public partial class getStateRequest : IGetStateRequest { }
#pragma warning restore IDE1006
}
namespace Hcs.Client.Api.Request.DeviceMetering
{
internal class DeviceMeteringRequestBase(ClientBase client) :
RequestBase<getStateResult,
DeviceMeteringPortTypesAsyncClient,
DeviceMeteringPortTypesAsync,
RequestHeader,
AckRequestAck,
ErrorMessageType,
getStateRequest>(client)
{
protected override EndPoint EndPoint => EndPoint.DeviceMeteringAsync;
protected override bool EnableMinimalResponseWaitDelay => true;
protected override bool CanBeRestarted => true;
protected override int RestartTimeoutMinutes => 20;
}
}

View File

@ -0,0 +1,40 @@
using Hcs.Client.Api.Request.Exception;
using Hcs.Client.Internal;
using Hcs.Service.Async.DeviceMetering;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
namespace Hcs.Client.Api.Request.DeviceMetering
{
internal class ImportMeteringDeviceValuesRequest(ClientBase client) : DeviceMeteringRequestBase(client)
{
protected override bool CanBeRestarted => false;
internal async Task<bool> ExecuteAsync(importMeteringDeviceValuesRequestMeteringDevicesValues values, CancellationToken token)
{
// http://open-gkh.ru/DeviceMetering/importMeteringDeviceValuesRequest.html
var request = new importMeteringDeviceValuesRequest
{
Id = Constants.SIGNED_XML_ELEMENT_ID,
version = "10.0.1.1",
MeteringDevicesValues = [values]
};
var result = await SendAndWaitResultAsync(request, async asyncClient =>
{
var response = await asyncClient.importMeteringDeviceValuesAsync(CreateRequestHeader(), request);
return response.AckRequest.Ack;
}, token);
result.Items.OfType<ErrorMessageType>().ToList().ForEach(error =>
{
throw RemoteException.CreateNew(error.ErrorCode, error.Description);
});
// TODO: Проверить содержимое ответа
return true;
}
}
}

View File

@ -11,6 +11,8 @@ namespace Hcs.Client
/// </summary>
public class UniClient : ClientBase
{
public DeviceMeteringApi DeviceMetering => new(this);
public HouseManagementApi HouseManagement => new(this);
public NsiApi Nsi => new(this);

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="AckRequest" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Hcs.Service.Async.DeviceMetering.AckRequest, Connected Services.Service.Async.DeviceMetering.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="ResultHeader" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Hcs.Service.Async.DeviceMetering.ResultHeader, Connected Services.Service.Async.DeviceMetering.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="exportMeteringDeviceHistoryResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryResponse, Connected Services.Service.Async.DeviceMetering.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="getStateResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Hcs.Service.Async.DeviceMetering.getStateResponse, Connected Services.Service.Async.DeviceMetering.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="getStateResult" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Hcs.Service.Async.DeviceMetering.getStateResult, Connected Services.Service.Async.DeviceMetering.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="importMeteringDeviceValuesResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesResponse, Connected Services.Service.Async.DeviceMetering.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<ReferenceGroup xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ID="1229db05-f5d9-4a47-b980-db290838b720" xmlns="urn:schemas-microsoft-com:xml-wcfservicemap">
<ClientOptions>
<GenerateAsynchronousMethods>false</GenerateAsynchronousMethods>
<GenerateTaskBasedAsynchronousMethod>true</GenerateTaskBasedAsynchronousMethod>
<EnableDataBinding>true</EnableDataBinding>
<ExcludedTypes />
<ImportXmlTypes>false</ImportXmlTypes>
<GenerateInternalTypes>false</GenerateInternalTypes>
<GenerateMessageContracts>false</GenerateMessageContracts>
<NamespaceMappings />
<CollectionMappings />
<GenerateSerializableTypes>true</GenerateSerializableTypes>
<Serializer>Auto</Serializer>
<UseSerializerForFaults>true</UseSerializerForFaults>
<ReferenceAllAssemblies>true</ReferenceAllAssemblies>
<ReferencedAssemblies />
<ReferencedDataContractTypes />
<ServiceContractMappings />
</ClientOptions>
<MetadataSources>
<MetadataSource Address="C:\Users\kshkulev\Documents\hcs\Hcs.Client\HcsWsdlSources\wsdl_xsd_v.15.7.0.1\device-metering\hcs-device-metering-service-async.wsdl" Protocol="file" SourceId="1" />
</MetadataSources>
<Metadata>
<MetadataFile FileName="hcs-metering-device-base.xsd" MetadataType="Schema" ID="3abb2c24-139f-47e2-9962-61dfe80dbdc6" SourceId="1" SourceUrl="file:///C:/Users/kshkulev/Documents/hcs/Hcs.Client/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-metering-device-base.xsd" />
<MetadataFile FileName="hcs-device-metering-service-async.wsdl" MetadataType="Wsdl" ID="025816c7-dcc2-422b-8bc8-22b994841a21" SourceId="1" SourceUrl="file:///C:/Users/kshkulev/Documents/hcs/Hcs.Client/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-service-async.wsdl" />
<MetadataFile FileName="hcs-base.xsd" MetadataType="Schema" ID="fae9cc47-41de-4501-a939-17837ea65b07" SourceId="1" SourceUrl="file:///C:/Users/kshkulev/Documents/hcs/Hcs.Client/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-base.xsd" />
<MetadataFile FileName="xmldsig-core-schema.xsd" MetadataType="Schema" ID="38040101-5e8b-41da-80fe-4f334424278a" SourceId="1" SourceUrl="file:///C:/Users/kshkulev/Documents/hcs/Hcs.Client/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/xmldsig-core-schema.xsd" />
<MetadataFile FileName="hcs-device-metering-types.xsd" MetadataType="Schema" ID="a94d0529-274a-463e-a90e-04580c1c290a" SourceId="1" SourceUrl="file:///C:/Users/kshkulev/Documents/hcs/Hcs.Client/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-types.xsd" />
<MetadataFile FileName="hcs-nsi-base.xsd" MetadataType="Schema" ID="18e4eb1e-f150-415a-8f8b-a0c19a1f425e" SourceId="1" SourceUrl="file:///C:/Users/kshkulev/Documents/hcs/Hcs.Client/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-nsi-base.xsd" />
</Metadata>
<Extensions>
<ExtensionFile FileName="configuration91.svcinfo" Name="configuration91.svcinfo" />
<ExtensionFile FileName="configuration.svcinfo" Name="configuration.svcinfo" />
</Extensions>
</ReferenceGroup>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<configurationSnapshot xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:schemas-microsoft-com:xml-wcfconfigurationsnapshot">
<behaviors />
<bindings>
<binding digest="System.ServiceModel.Configuration.BasicHttpBindingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089:&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data name=&quot;DeviceMeteringBindingAsync1&quot;&gt;&lt;security mode=&quot;Transport&quot; /&gt;&lt;/Data&gt;" bindingType="basicHttpBinding" name="DeviceMeteringBindingAsync1" />
<binding digest="System.ServiceModel.Configuration.BasicHttpBindingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089:&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data name=&quot;DeviceMeteringBindingAsync2&quot; /&gt;" bindingType="basicHttpBinding" name="DeviceMeteringBindingAsync2" />
</bindings>
<endpoints>
<endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;https://api.dom.gosuslugi.ru/ext-bus-device-metering-service/services/DeviceMeteringAsync&quot; binding=&quot;basicHttpBinding&quot; bindingConfiguration=&quot;DeviceMeteringBindingAsync1&quot; contract=&quot;Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync&quot; name=&quot;DeviceMeteringPortAsync1&quot; /&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;https://api.dom.gosuslugi.ru/ext-bus-device-metering-service/services/DeviceMeteringAsync&quot; binding=&quot;basicHttpBinding&quot; bindingConfiguration=&quot;DeviceMeteringBindingAsync1&quot; contract=&quot;Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync&quot; name=&quot;DeviceMeteringPortAsync1&quot; /&gt;" contractName="Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync" name="DeviceMeteringPortAsync1" />
</endpoints>
</configurationSnapshot>

View File

@ -0,0 +1,310 @@
<?xml version="1.0" encoding="utf-8"?>
<SavedWcfConfigurationInformation xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="9.1" CheckSum="52Vq16eghv6khH2MW8zA5gu7tuhPU4vCv2oTzYC66dA=">
<bindingConfigurations>
<bindingConfiguration bindingType="basicHttpBinding" name="DeviceMeteringBindingAsync1">
<properties>
<property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>DeviceMeteringBindingAsync1</serializedValue>
</property>
<property path="/closeTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/openTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/receiveTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/sendTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/allowCookies" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/bypassProxyOnLocal" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/hostNameComparisonMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HostNameComparisonMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>StrongWildcard</serializedValue>
</property>
<property path="/maxBufferPoolSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/maxBufferSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>65536</serializedValue>
</property>
<property path="/maxReceivedMessageSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/proxyAddress" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/readerQuotas" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement</serializedValue>
</property>
<property path="/readerQuotas/maxDepth" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxStringContentLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxArrayLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxBytesPerRead" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxNameTableCharCount" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.Text.Encoding, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Text.UTF8Encoding</serializedValue>
</property>
<property path="/transferMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.TransferMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Buffered</serializedValue>
</property>
<property path="/useDefaultWebProxy" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/messageEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.WSMessageEncoding, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Text</serializedValue>
</property>
<property path="/security" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.BasicHttpSecurityElement</serializedValue>
</property>
<property path="/security/mode" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.BasicHttpSecurityMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Transport</serializedValue>
</property>
<property path="/security/transport" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.HttpTransportSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.HttpTransportSecurityElement</serializedValue>
</property>
<property path="/security/transport/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpClientCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport/proxyCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpProxyCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/policyEnforcement" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.PolicyEnforcement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Never</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/protectionScenario" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.ProtectionScenario, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>TransportSelected</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/customServiceNames" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ServiceNameElementCollection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Коллекция)</serializedValue>
</property>
<property path="/security/transport/realm" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/message" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpMessageSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.BasicHttpMessageSecurityElement</serializedValue>
</property>
<property path="/security/message/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.BasicHttpMessageCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>UserName</serializedValue>
</property>
<property path="/security/message/algorithmSuite" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.SecurityAlgorithmSuite, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Default</serializedValue>
</property>
</properties>
</bindingConfiguration>
<bindingConfiguration bindingType="basicHttpBinding" name="DeviceMeteringBindingAsync2">
<properties>
<property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>DeviceMeteringBindingAsync2</serializedValue>
</property>
<property path="/closeTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/openTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/receiveTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/sendTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/allowCookies" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/bypassProxyOnLocal" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/hostNameComparisonMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HostNameComparisonMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>StrongWildcard</serializedValue>
</property>
<property path="/maxBufferPoolSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/maxBufferSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>65536</serializedValue>
</property>
<property path="/maxReceivedMessageSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/proxyAddress" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/readerQuotas" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement</serializedValue>
</property>
<property path="/readerQuotas/maxDepth" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxStringContentLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxArrayLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxBytesPerRead" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxNameTableCharCount" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.Text.Encoding, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Text.UTF8Encoding</serializedValue>
</property>
<property path="/transferMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.TransferMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Buffered</serializedValue>
</property>
<property path="/useDefaultWebProxy" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/messageEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.WSMessageEncoding, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Text</serializedValue>
</property>
<property path="/security" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.BasicHttpSecurityElement</serializedValue>
</property>
<property path="/security/mode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.BasicHttpSecurityMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.HttpTransportSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.HttpTransportSecurityElement</serializedValue>
</property>
<property path="/security/transport/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpClientCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport/proxyCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpProxyCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/policyEnforcement" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.PolicyEnforcement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Never</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/protectionScenario" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.ProtectionScenario, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>TransportSelected</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/customServiceNames" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ServiceNameElementCollection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Коллекция)</serializedValue>
</property>
<property path="/security/transport/realm" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/message" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpMessageSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.BasicHttpMessageSecurityElement</serializedValue>
</property>
<property path="/security/message/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.BasicHttpMessageCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>UserName</serializedValue>
</property>
<property path="/security/message/algorithmSuite" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.SecurityAlgorithmSuite, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Default</serializedValue>
</property>
</properties>
</bindingConfiguration>
</bindingConfigurations>
<endpoints>
<endpoint name="DeviceMeteringPortAsync1" contract="Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync" bindingType="basicHttpBinding" address="https://api.dom.gosuslugi.ru/ext-bus-device-metering-service/services/DeviceMeteringAsync" bindingConfiguration="DeviceMeteringBindingAsync1">
<properties>
<property path="/address" isComplexType="false" isExplicitlyDefined="true" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>https://api.dom.gosuslugi.ru/ext-bus-device-metering-service/services/DeviceMeteringAsync</serializedValue>
</property>
<property path="/behaviorConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/binding" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>basicHttpBinding</serializedValue>
</property>
<property path="/bindingConfiguration" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>DeviceMeteringBindingAsync1</serializedValue>
</property>
<property path="/contract" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync</serializedValue>
</property>
<property path="/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue>
</property>
<property path="/headers/headers" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>&lt;Header /&gt;</serializedValue>
</property>
<property path="/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue>
</property>
<property path="/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue>
</property>
<property path="/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue>
</property>
<property path="/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue>
</property>
<property path="/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue>
</property>
<property path="/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue>
</property>
<property path="/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue>
</property>
<property path="/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>My</serializedValue>
</property>
<property path="/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LocalMachine</serializedValue>
</property>
<property path="/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>FindBySubjectDistinguishedName</serializedValue>
</property>
<property path="/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>DeviceMeteringPortAsync1</serializedValue>
</property>
<property path="/kind" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/endpointConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
</properties>
</endpoint>
</endpoints>
</SavedWcfConfigurationInformation>

View File

@ -0,0 +1,862 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:tns="http://dom.gosuslugi.ru/schema/integration/base/" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://dom.gosuslugi.ru/schema/integration/base/" version="13.1.10.2" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="xmldsig-core-schema.xsd" namespace="http://www.w3.org/2000/09/xmldsig#" />
<xs:simpleType name="String2000Type">
<xs:annotation>
<xs:documentation>Строка не более 2000 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="2000" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String1500Type">
<xs:annotation>
<xs:documentation>Строка не более 1500 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="1500" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String300Type">
<xs:annotation>
<xs:documentation>Строка не более 300 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="300" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String255Type">
<xs:annotation>
<xs:documentation>Скалярный тип. Строка не более 255 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="255" />
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String100Type">
<xs:annotation>
<xs:documentation>Скалярный тип. Строка не более 100 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="100" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String250Type">
<xs:annotation>
<xs:documentation>Скалярный тип. Строка не более 250 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="250" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String500Type">
<xs:annotation>
<xs:documentation>Скалярный тип. Строка не более 500 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String60Type">
<xs:annotation>
<xs:documentation>Строка не более 60 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="60" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LongTextType">
<xs:annotation>
<xs:documentation>Текстовое поле 2000</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="2000" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NonEmptyStringType">
<xs:annotation>
<xs:documentation>Непустая строка</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:pattern value=".*[^\s].*" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BaseType">
<xs:annotation>
<xs:documentation>Базовый тип бизнес-сообщения с подписью</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element minOccurs="0" ref="ds:Signature" />
</xs:sequence>
<xs:attribute name="Id" />
</xs:complexType>
<xs:element name="RequestHeader">
<xs:annotation>
<xs:documentation>Заголовок запроса</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:HeaderType">
<xs:sequence>
<xs:choice>
<xs:element name="SenderID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор поставщика данных</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orgPPAGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор зарегистрированной организации</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Citizen">
<xs:annotation>
<xs:documentation>Информация о физическом лице</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice>
<xs:element name="CitizenPPAGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор физического лица, зарегистрированного в ГИС ЖКХ </xs:documentation>
</xs:annotation>
</xs:element>
<xs:sequence>
<xs:element minOccurs="0" name="SNILS">
<xs:annotation>
<xs:documentation>СНИЛС</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\d{11}" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" name="Document">
<xs:annotation>
<xs:documentation>Документ, удостоверяющий личность</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="DocumentType">
<xs:annotation>
<xs:documentation>Вид документа, удостоверяющего личность (НСИ №95)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Code">
<xs:annotation>
<xs:documentation>Код записи справочника</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="20" />
<xs:pattern value="(A{0,1}\d{1,4}(\.)?)+" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="GUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор записи в соответствующем справочнике ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="Name">
<xs:annotation>
<xs:documentation>Значение</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="tns:LongTextType">
<xs:maxLength value="1200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="Series">
<xs:annotation>
<xs:documentation>Серия документа</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="45" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Number">
<xs:annotation>
<xs:documentation>Номер документа</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="45" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:element minOccurs="0" fixed="true" name="IsOperatorSignature" type="xs:boolean">
<xs:annotation>
<xs:documentation>Используется подпись Оператора ИС</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="tns:ISCreator">
<xs:annotation>
<xs:documentation>Сведения об иной ИС, с использованием которой была сформирована информация (589/944/,п.164). Только для запросов размещения информации.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="ISRequestHeader">
<xs:annotation>
<xs:documentation>Заголовок запроса</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:HeaderType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="tns:ISCreator" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="ResultHeader">
<xs:annotation>
<xs:documentation>Заголовок ответа</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:HeaderType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="ResultType">
<xs:annotation>
<xs:documentation>Базовый тип ответа на запрос создания, редактирования, удаления </xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:choice>
<xs:element name="TransportGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Транспортный идентификатор, определенный постащиком информации</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UpdateGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор объекта в ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice>
<xs:sequence>
<xs:element name="GUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор объекта в ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UpdateDate" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата модификации</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="UniqueNumber" type="xs:string">
<xs:annotation>
<xs:documentation>Уникальный номер </xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:element maxOccurs="unbounded" name="CreateOrUpdateError" type="tns:ErrorMessageType" />
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="HeaderType">
<xs:annotation>
<xs:documentation>Базовый тип заголовка</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Date" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата отправки пакета</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MessageGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор сообщения</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="Attachment">
<xs:annotation>
<xs:documentation>Вложение</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="AttachmentGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор сохраненного вложения</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="AttachmentType">
<xs:annotation>
<xs:documentation>Вложение</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Name">
<xs:annotation>
<xs:documentation>Наименование вложения</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1024" />
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Description">
<xs:annotation>
<xs:documentation>Описание вложения</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element ref="tns:Attachment" />
<xs:element minOccurs="0" name="AttachmentHASH">
<xs:annotation>
<xs:documentation>Хэш-тег вложения по алгоритму ГОСТ в binhex.
Элемент обязателен в запросах импорта</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AttachmentWODescriptionType">
<xs:annotation>
<xs:documentation>Вложение</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Name">
<xs:annotation>
<xs:documentation>Наименование вложения</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1024" />
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" name="Description">
<xs:annotation>
<xs:documentation>Описание вложения</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element ref="tns:Attachment" />
<xs:element minOccurs="0" name="AttachmentHASH">
<xs:annotation>
<xs:documentation>Хэш-тег вложения по алгоритму ГОСТ в binhex</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SignedAttachmentType">
<xs:annotation>
<xs:documentation>Базовый тип, описывающий вложение с открепленными (detached) подписями. В сервисах ГИС ЖКХ, использущих тип SignedAttachmentType, может быть наложено ограничение на максимальное количесво элементов в блоке Signature (см. контроль INT002039). </xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Attachment" type="tns:AttachmentType">
<xs:annotation>
<xs:documentation>Вложение</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" name="Signature" type="tns:AttachmentWODescriptionType">
<xs:annotation>
<xs:documentation>Открепленная (detached) подпись</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="Fault">
<xs:annotation>
<xs:documentation>Элемент Fault (для параметра Fault в операции)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:annotation>
<xs:documentation>Базовый тип для fault-ошибки</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="ErrorCode" type="xs:string" />
<xs:element minOccurs="0" name="ErrorMessage" type="xs:string" />
<xs:element minOccurs="0" name="StackTrace" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ErrorMessage" type="tns:ErrorMessageType">
<xs:annotation>
<xs:documentation>Описание ошибок контролей или бизнес-процесса. Элемент не заполянется. Оставлен для совместимости
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ErrorMessageType">
<xs:annotation>
<xs:documentation>Базовый тип ошибки контроля или бизнес-процесса</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="ErrorCode" type="xs:string">
<xs:annotation>
<xs:documentation>Код ошибки</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Description" type="xs:string">
<xs:annotation>
<xs:documentation>Описание ошибки</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="StackTrace" type="xs:string">
<xs:annotation>
<xs:documentation>StackTrace в случае возникновения исключения</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:attribute name="version" type="xs:string">
<xs:annotation>
<xs:documentation>Версия элемента, начиная с которой поддерживается совместимость</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:element name="AckRequest">
<xs:annotation>
<xs:documentation>Возврат квитанции приема сообщения</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Ack">
<xs:annotation>
<xs:documentation>Квитанция</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MessageGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор сообщения, присвоенный ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="RequesterMessageGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор сообщения, присвоенный поставщиком</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getStateRequest">
<xs:annotation>
<xs:documentation>Запрос статуса отправленного сообщения</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MessageGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор сообщения, присвоенный ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getRequestsStateRequest">
<xs:annotation>
<xs:documentation>Запрос списка обработанных сообщений</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="10000" name="MessageGUIDList" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Массив идентификаторов сообщений, присвоенных ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getRequestsStateResult">
<xs:annotation>
<xs:documentation>Ответ на запрос списка обработанных сообщений</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:BaseType">
<xs:sequence>
<xs:element maxOccurs="10000" name="MessageGUIDList" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Список идентификаторов сообщений, присвоенный ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="BaseAsyncResponseType">
<xs:annotation>
<xs:documentation>Базовый тип ответа на запрос статуса</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:BaseType">
<xs:sequence>
<xs:element name="RequestState" type="tns:AsyncRequestStateType">
<xs:annotation>
<xs:documentation>Статус обработки</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MessageGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор сообщения, присвоенный ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CommonResultType">
<xs:annotation>
<xs:documentation>Результат выполнения C_UD</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element minOccurs="0" name="GUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор создаваемой/изменяемой сущности</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="1" name="TransportGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Транспортный идентификатор</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:sequence>
<xs:annotation>
<xs:documentation>Операция выполнена успешно</xs:documentation>
</xs:annotation>
<xs:element minOccurs="0" name="UniqueNumber" type="xs:string">
<xs:annotation>
<xs:documentation>Уникальный реестровый номер</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UpdateDate" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата модификации</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:element maxOccurs="unbounded" name="Error">
<xs:annotation>
<xs:documentation>Описание ошибки</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:ErrorMessageType" />
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="AsyncRequestStateType">
<xs:annotation>
<xs:documentation>Статус обработки сообщения в асинхронном обмене (1- получено; 2 - в обработке; 3- обработано)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:byte">
<xs:enumeration value="1" />
<xs:enumeration value="2" />
<xs:enumeration value="3" />
</xs:restriction>
</xs:simpleType>
<xs:element name="TransportGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Транспортный идентификатор</xs:documentation>
</xs:annotation>
</xs:element>
<xs:simpleType name="GUIDType">
<xs:annotation>
<xs:documentation>GUID-тип.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}" />
</xs:restriction>
</xs:simpleType>
<xs:element name="ModificationDate" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата модификации объекта</xs:documentation>
</xs:annotation>
</xs:element>
<xs:simpleType name="YearType">
<xs:annotation>
<xs:documentation>Тип, описывающий год</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:short">
<xs:minInclusive value="1600" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MonthType">
<xs:annotation>
<xs:documentation>Тип, описывающий месяц</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:int">
<xs:maxInclusive value="12" />
<xs:minInclusive value="1" />
</xs:restriction>
</xs:simpleType>
<xs:element name="Month" type="tns:MonthType">
<xs:annotation>
<xs:documentation>Месяц</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Year">
<xs:annotation>
<xs:documentation>Год</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="1920" />
<xs:maxInclusive value="2050" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:complexType name="YearMonth">
<xs:annotation>
<xs:documentation>Определенный месяц определенного года</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="tns:Year" />
<xs:element ref="tns:Month" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Period">
<xs:annotation>
<xs:documentation>Временной период (обе даты обязательны)</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="startDate" type="xs:date">
<xs:annotation>
<xs:documentation>Начало периода</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endDate" type="xs:date">
<xs:annotation>
<xs:documentation>Конец периода</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="PeriodOpen">
<xs:annotation>
<xs:documentation>Открытый временной период (даты необязательны)</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element minOccurs="0" name="startDate" type="xs:date">
<xs:annotation>
<xs:documentation>Начало периода</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="endDate" type="xs:date">
<xs:annotation>
<xs:documentation>Конец периода</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="VolumeType">
<xs:annotation>
<xs:documentation>Тип объема</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:decimal">
<xs:fractionDigits value="3" />
<xs:minInclusive value="0" />
<xs:totalDigits value="11" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RegionType">
<xs:annotation>
<xs:documentation>Ссылка на субъект РФ (ФИАС)</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="code">
<xs:annotation>
<xs:documentation>Код региона (ФИАС)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="2" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" name="name">
<xs:annotation>
<xs:documentation>Полное наименование</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="OKTMORefType">
<xs:annotation>
<xs:documentation>Ссылка на ОКТМО</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="code">
<xs:annotation>
<xs:documentation>Код по ОКТМО</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="11" />
<xs:pattern value="\d{11}|\d{8}" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" name="name">
<xs:annotation>
<xs:documentation>Полное наименование</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="OKEIType">
<xs:restriction base="xs:string">
<xs:pattern value="A{0,1}\d{3,4}" />
</xs:restriction>
</xs:simpleType>
<xs:element name="OKEI" type="tns:OKEIType">
<xs:annotation>
<xs:documentation>Код ОКЕИ</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orgPPAGUID" type="tns:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор зарегистрированной организации</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DocumentPortalType">
<xs:annotation>
<xs:documentation>Базовый тип документа ОЧ</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Name">
<xs:annotation>
<xs:documentation>Наименование документа</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" name="DocNumber">
<xs:annotation>
<xs:documentation>Номер документа</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ApproveDate" type="xs:date">
<xs:annotation>
<xs:documentation>Дата принятия документа органом власти</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Attachment" type="tns:AttachmentType">
<xs:annotation>
<xs:documentation>Вложение</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="ISCreator">
<xs:annotation>
<xs:documentation>Сведения об иной ИС, с использованием которой была сформирована информация (589/944/,п.164)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ISName" type="tns:String255Type">
<xs:annotation>
<xs:documentation>Наименование ИС</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ISOperatorName" type="tns:String255Type">
<xs:annotation>
<xs:documentation>Наименование Оператора ИС</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="OKTMOType">
<xs:annotation>
<xs:documentation>Код по ОКТМО</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="11" />
<xs:pattern value="\d{11}|\d{8}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="OKTMOImportType">
<xs:annotation>
<xs:documentation>Код по ОКТМО</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="8" />
<xs:pattern value="\d{8}" />
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,106 @@
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:base="http://dom.gosuslugi.ru/schema/integration/base/" xmlns:ns="http://www.w3.org/2000/09/xmldsig#" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://dom.gosuslugi.ru/schema/integration/device-metering-service-async/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:dm="http://dom.gosuslugi.ru/schema/integration/device-metering/" targetNamespace="http://dom.gosuslugi.ru/schema/integration/device-metering-service-async/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<xs:schema version="10.0.1.1">
<xs:import schemaLocation="hcs-device-metering-types.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/" />
<xs:import schemaLocation="../lib/hcs-base.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/base/" />
</xs:schema>
</wsdl:types>
<wsdl:message name="Fault">
<wsdl:part name="Fault" element="base:Fault" />
</wsdl:message>
<wsdl:message name="importMeteringDeviceValuesRequest">
<wsdl:part name="importMeteringDeviceValuesRequest" element="dm:importMeteringDeviceValuesRequest" />
</wsdl:message>
<wsdl:message name="exportMeteringDeviceHistoryRequest">
<wsdl:part name="exportMeteringDeviceHistoryRequest" element="dm:exportMeteringDeviceHistoryRequest" />
</wsdl:message>
<wsdl:message name="RequestHeader">
<wsdl:part name="Header" element="base:RequestHeader" />
</wsdl:message>
<wsdl:message name="ResultHeader">
<wsdl:part name="Header" element="base:ResultHeader" />
</wsdl:message>
<wsdl:message name="exportMeteringDeviceHistoryResult">
<wsdl:part name="AckRequest" element="base:AckRequest" />
</wsdl:message>
<wsdl:message name="getStateRequest">
<wsdl:part name="getStateRequest" element="base:getStateRequest" />
</wsdl:message>
<wsdl:message name="getStateResult">
<wsdl:part name="getStateResult" element="dm:getStateResult" />
</wsdl:message>
<wsdl:message name="importMeteringDeviceValuesResult">
<wsdl:part name="AckRequest" element="base:AckRequest" />
</wsdl:message>
<wsdl:portType name="DeviceMeteringPortTypesAsync">
<wsdl:operation name="importMeteringDeviceValues">
<wsdl:documentation>Передать показания ПУ</wsdl:documentation>
<wsdl:input message="tns:importMeteringDeviceValuesRequest" />
<wsdl:output message="tns:importMeteringDeviceValuesResult" />
<wsdl:fault name="InvalidRequest" message="tns:Fault" />
</wsdl:operation>
<wsdl:operation name="exportMeteringDeviceHistory">
<wsdl:documentation>Получить историю показаний ПУ</wsdl:documentation>
<wsdl:input message="tns:exportMeteringDeviceHistoryRequest" />
<wsdl:output message="tns:exportMeteringDeviceHistoryResult" />
<wsdl:fault name="InvalidRequest" message="tns:Fault" />
</wsdl:operation>
<wsdl:operation name="getState">
<wsdl:input message="tns:getStateRequest" />
<wsdl:output message="tns:getStateResult" />
<wsdl:fault name="InvalidRequest" message="tns:Fault" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="DeviceMeteringBindingAsync" type="tns:DeviceMeteringPortTypesAsync">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="importMeteringDeviceValues">
<soap:operation soapAction="urn:importMeteringDeviceValues" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:RequestHeader" part="Header" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
<soap:header message="tns:ResultHeader" part="Header" use="literal" />
</wsdl:output>
<wsdl:fault name="InvalidRequest">
<soap:fault use="literal" name="InvalidRequest" namespace="" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="exportMeteringDeviceHistory">
<soap:operation soapAction="urn:exportMeteringDeviceHistory" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:RequestHeader" part="Header" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
<soap:header message="tns:ResultHeader" part="Header" use="literal" />
</wsdl:output>
<wsdl:fault name="InvalidRequest">
<soap:fault use="literal" name="InvalidRequest" namespace="" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="getState">
<soap:operation soapAction="urn:getState" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:RequestHeader" part="Header" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
<soap:header message="tns:ResultHeader" part="Header" use="literal" />
</wsdl:output>
<wsdl:fault name="InvalidRequest">
<soap:fault use="literal" name="InvalidRequest" namespace="" />
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="DeviceMeteringServiceAsync">
<wsdl:documentation>Асинхронный сервис управления приборами учета и передачей показаний</wsdl:documentation>
<wsdl:port name="DeviceMeteringPortAsync" binding="tns:DeviceMeteringBindingAsync">
<soap:address location="https://api.dom.gosuslugi.ru/ext-bus-device-metering-service/services/DeviceMeteringAsync" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

View File

@ -0,0 +1,997 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:base="http://dom.gosuslugi.ru/schema/integration/base/" xmlns:nsi-base="http://dom.gosuslugi.ru/schema/integration/nsi-base/" xmlns:tns="http://dom.gosuslugi.ru/schema/integration/device-metering/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:metering-device-base="http://dom.gosuslugi.ru/schema/integration/metering-device-base/" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://dom.gosuslugi.ru/schema/integration/device-metering/" version="13.1.4.1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="../lib/hcs-base.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/base/" />
<xs:import schemaLocation="../lib/hcs-metering-device-base.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/" />
<xs:import schemaLocation="../lib/hcs-nsi-base.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/" />
<xs:complexType name="OneRateMeteringValueImportType">
<xs:annotation>
<xs:documentation>?????????????????? ?????????????????????????? ????. ???????????????????????? ?????? ?????????????? ?????????????? ?? ?????????????????????? ?????????????????? ????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="metering-device-base:OneRateMeteringValueBaseType">
<xs:sequence>
<xs:element name="DateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="base:TransportGUID" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElectricMeteringValueImportType">
<xs:annotation>
<xs:documentation>?????????????????? ?????????????????????????? ????. ???????????????????????? ?????? ?????????????? ?????????????? ?? ?????????????????????? ?????????????????? ????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="metering-device-base:ElectricMeteringValueBaseType">
<xs:sequence>
<xs:element name="DateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="base:TransportGUID" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VolumeMeteringValueImportType">
<xs:annotation>
<xs:documentation>???????????? ????, ?????????????????????? ?????????? ?????????????????????? ????. ???????????????????????? ?????? ?????????????? ?????????????? ?? ?????????????????????? ??????????????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="metering-device-base:VolumeMeteringValueBaseType">
<xs:sequence>
<xs:element name="DateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="base:TransportGUID" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OneRateMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????? ?????????????????? ?????????????????????????? ????: ???????????????????????? ????????????, ???????????????? ?????????????????? ?? ???????????????? ?????????????????? ???? ?? (???????? ????????????????????) ?? ???????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????, ???????????????? ???????????? ?? ???????????????????? ????, ????????-?????????? ???????????????? ?? ??????????????. ???????????????????????? ?????? ???????????????? ?????????????? ?????????????????? ???? ?? ?????????????????? ???? ???????????? / ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="metering-device-base:OneRateMeteringValueExportWithTSType">
<xs:sequence minOccurs="0">
<xs:element minOccurs="0" name="Unit" type="xs:string">
<xs:annotation>
<xs:documentation>?????? ?????????????? ?????????????????? ?????????????????? ???? (???? ???????????????????????? ???????????????????????????? ????????). ??????????????????????, ???????? ???? ?????????????????? ???? ???????????????????? ???? ???? ?????????????????????????? ?????????????? ???? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueInDefaultUnit">
<xs:annotation>
<xs:documentation>???????????????? ?????????????????? ????, ???????????????????? ?? ???????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????. ??????????????????????, ???????? ???? ?????????????????? ???? ???????????????????? ???? ???? ???? ???? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MeteringValue" type="metering-device-base:MeteringValueType">
<xs:annotation>
<xs:documentation>????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DefaultUnit" type="xs:string">
<xs:annotation>
<xs:documentation>?????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElectricMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????? ???????????????????????????? ????: ???????????????? ?????????????????? ?? ???????????????? ?????????????????? ???? ?? (???????? ????????????????????) ?? ???????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????, ???????????????? ???????????? ?? ???????????????????? ????, ????????-?????????? ???????????????? ?? ??????????????. ???????????????????????? ?????? ???????????????? ?????????????? ?????????????????? ???? ?? ?????????????????? ???? ???????????? / ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="metering-device-base:ElectricMeteringValueExportWithTSType">
<xs:sequence minOccurs="0">
<xs:element minOccurs="0" name="Unit" type="xs:string">
<xs:annotation>
<xs:documentation>?????? ?????????????? ?????????????????? ?????????????????? ???? (???? ???????????????????????? ???????????????????????????? ????????). ??????????????????????, ???????? ???? ?????????????????? ???? ???????????????????? ???? ???? ?????????????????????????? ?????????????? ???? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueInDefaultUnit">
<xs:annotation>
<xs:documentation>???????????????? ?????????????????? ????, ???????????????????? ?? ???????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????. ??????????????????????, ???????? ???? ?????????????????? ???? ???????????????????? ???? ???? ???? ???? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MeteringValueT1" type="metering-device-base:MeteringValueType">
<xs:annotation>
<xs:documentation>???????????????? ???? ???????????? T1</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT2" type="metering-device-base:MeteringValueType">
<xs:annotation>
<xs:documentation>???????????????? ???? ???????????? T2</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT3" type="metering-device-base:MeteringValueType">
<xs:annotation>
<xs:documentation>???????????????? ???? ???????????? T3</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DefaultUnit" type="xs:string">
<xs:annotation>
<xs:documentation>?????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OneRateCurrentMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????? ?????????????????? ?????????????????????????? ????: ?????????????????? ?????? ?????????????? ?????????????????? ?????????????????????????? ???? ?????????? ???????????? ??????????????????. ???????????????????????? ?????? ???????????????? ?????????????? ?? ?????????????????????? ?????????????????? ????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:OneRateMeteringValueExportType">
<xs:sequence>
<xs:element name="DateValue" type="xs:dateTime">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElectricCurrentMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????? ?????????????????? ???????????????????????????? ????: ?????????????????? ?????? ?????????????? ?????????????????? ???????????????????????????? ???? ?????????? ???????????? ??????????????????. ???????????????????????? ?????? ???????????????? ?????????????? ?? ?????????????????????? ?????????????????? ???? ????????????????????????????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:ElectricMeteringValueExportType">
<xs:sequence>
<xs:element name="DateValue" type="xs:dateTime">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VolumeMeteringValueExportBaseType">
<xs:annotation>
<xs:documentation>???????????? ?????????????? ?????????????????? ????, ?????????????????????? ?????????? ?????????????????????????? ?????????????????????????? ??????????????: ???????????????????????? ????????????, ???????????????? ?????????????????? ?? ???????????????? ?????????????????? ???? ?? (???????? ????????????????????) ?? ???????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????, ???????????????? ???????????? ?? ???????????????????? ????. ???????????????????????? ?????? ???????????????? ?????????????????? ???? ???????????? / ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="metering-device-base:VolumeMeteringValueBaseType">
<xs:sequence minOccurs="0">
<xs:element minOccurs="0" name="ReadingsSource" type="xs:string">
<xs:annotation>
<xs:documentation>?????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="orgPPAGUID" type="xs:string">
<xs:annotation>
<xs:documentation>?????????????????????????? ??????????????????????, ?????????????? ?????????? ???????????? ?? ??????????????. ???? ??????????????????????, ???????? ???????????? ???????? ?????????????? ??????????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EnterIntoSystem" type="xs:dateTime">
<xs:annotation>
<xs:documentation>???????? ?? ?????????? ???????????????? ?? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="Unit" type="xs:string">
<xs:annotation>
<xs:documentation>?????? ?????????????? ?????????????????? ?????????????? ?????????????????????? (???? ???????????????????????? ???????????????????????????? ????????). ??????????????????????, ???????? ???? ?????????????????? ???? ???????????????????? ???? ???? ?????????????????????????? ?????????????? ???? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueInDefaultUnit">
<xs:annotation>
<xs:documentation>???????????????? ?????????????? ?????????????????????? ????, ???????????????????? ?? ???????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????. ??????????????????????, ???????? ???? ?????????????????? ???? ???????????????????? ???? ???? ???? ???? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="MeteringValueT1" type="metering-device-base:MeteringValueType">
<xs:annotation>
<xs:documentation>???????????????? ???? ???????????? T1</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT2" type="metering-device-base:MeteringValueType">
<xs:annotation>
<xs:documentation>???????????????? ???? ???????????? T2</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT3" type="metering-device-base:MeteringValueType">
<xs:annotation>
<xs:documentation>???????????????? ???? ???????????? T3</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DefaultUnit" type="xs:string">
<xs:annotation>
<xs:documentation>?????????????? ?????????????????? ?????????????????????????? ?????????????? ???? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VolumeCurrentMeteringValueExportType">
<xs:annotation>
<xs:documentation>???????????? ?????????????? ?????????????????? ????, ?????????????????????? ?????????? ?????????????????????????? ?????????????????????????? ??????????????: ?????????????????? ?????????????? ?????? ?????????? ???????????? ??????????????????. ???????????????????????? ?????? ???????????????? ?????????????? ?? ?????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:VolumeMeteringValueExportBaseType">
<xs:sequence>
<xs:element name="DateValue" type="xs:dateTime">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VolumeMeteringValueExportType">
<xs:annotation>
<xs:documentation>???????????????????????????? ???????? ?????????????????? ???? (???????????????? ??????????????, ??????, ?????????????? ????????, ???????????????? ????????, ?????????????? ?????????????? ????????) (???????????????????????? ?????? ???????????????? ??????????????????)</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CurrentValue">
<xs:annotation>
<xs:documentation>?????????? ?????????????????????? ???? ????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:VolumeCurrentMeteringValueExportType">
<xs:sequence minOccurs="0">
<xs:element name="Period" type="base:YearMonth">
<xs:annotation>
<xs:documentation>????????????, ?? ???????????????? ?????????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ControlValue" type="tns:VolumeCurrentMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????????? ??????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="VerificationValue">
<xs:annotation>
<xs:documentation>???????????? ??????????????, ???? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="StartDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SealDate" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????????????????? ???? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="3" name="StartValue" type="tns:VolumeMeteringValueExportBaseType">
<xs:annotation>
<xs:documentation>?????????? ???? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="3" name="EndValue" type="tns:VolumeMeteringValueExportBaseType">
<xs:annotation>
<xs:documentation>?????????? ???? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element fixed="true" name="PlannedVerification" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VerificationReason" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????????????? ???????????? ???? ???? ?????????? (?????? 224). ???????????????? ?????? ???????????????????? ??????????????.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="importMeteringDeviceValuesRequest">
<xs:annotation>
<xs:documentation>???????????? ?????????????????? ???????????????? ??????????. ?????????????????? ?????????????????????????? ?? ???????????????? ??????????????????, ?????????????? ?????????????????? ?????????????? ?????????? ?????? ?????? ????????????????. (?????????????????? ?????????????????? ????: ?????? ???????????????????????? ???????????????? "???????????????? ????????", "?????????????? ????????", "?????????????? ?????????????? ????????" - 112 (????????) ?? 113 (???????????????????? ????????); ?????? ???? "?????????????????????????? ??????????????" - 245 (????????????????-??????); ?????? ???? "??????" - 113 (???????????????????? ????????); ?????? ???? "???????????????? ??????????????" - 233 (??????????????????????), 245 (????????????????-??????), 246 (????????????????-??????), 271 (????????????), A056 (????????????????????) ?? A058 (????????????????????))</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="base:BaseType">
<xs:sequence>
<xs:element minOccurs="0" name="FIASHouseGuid" type="base:GUIDType">
<xs:annotation>
<xs:documentation>???????????????????? ???????????????????? ?????????????????????????? ???????? ???? ????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1000" name="MeteringDevicesValues">
<xs:annotation>
<xs:documentation>?????????????????? ?? ???????????? ???????????????????????? ???????????????? ????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:choice>
<xs:element name="MeteringDeviceRootGUID" type="metering-device-base:MeteringDeviceGUIDType">
<xs:annotation>
<xs:documentation>?????????????????????????? ????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MeteringDeviceVersionGUID" type="metering-device-base:MeteringDeviceGUIDType">
<xs:annotation>
<xs:documentation>?????????????????????????? ???????????? ????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice>
<xs:element name="OneRateDeviceValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ???? (???????????????? ??????????????, ??????, ?????????????? ????????, ???????????????? ????????, ?????????????? ?????????????? ????????). ?????????????????????? ???????????? ?????? ????, ?????????????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="3" name="CurrentValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:OneRateMeteringValueImportType">
<xs:sequence minOccurs="0">
<xs:element minOccurs="1" name="Period" type="base:YearMonth">
<xs:annotation>
<xs:documentation>????????????, ???? ?????????????? ???????????????????? ??????????????????.
???????? ???? ????????????, ???? ?????????????????? ?????????????????? ?? ???????????? ???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="3" name="ControlValue" type="tns:OneRateMeteringValueImportType">
<xs:annotation>
<xs:documentation>?????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="VerificationValue">
<xs:annotation>
<xs:documentation>?????????????????? ??????????????, ???? ???????????????? ?????????????? ???????? ???????????????????????? ?? ???????????? ???????????? ???? ??????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="StartDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SealDate" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????????????????? ???? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="3" name="StartValue" type="metering-device-base:OneRateMeteringValueBaseType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="3" name="EndValue" type="metering-device-base:OneRateMeteringValueBaseType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element fixed="true" name="PlannedVerification" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VerificationReason" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????????????? ???????????? ???? ???? ?????????? (?????? 224). ???????????????? ?????? ???????????????????? ??????????????.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element ref="base:TransportGUID" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ElectricDeviceValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ???? (?????????????????????????? ??????????????). ?????????????????????? ???????????? ?????? ????, ?????????????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="CurrentValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:ElectricMeteringValueImportType">
<xs:sequence minOccurs="0">
<xs:element name="Period" type="base:YearMonth">
<xs:annotation>
<xs:documentation>????????????, ???? ?????????????? ???????????????????? ??????????????????.
???????? ???? ????????????, ???? ?????????????????? ?????????????????? ?? ???????????? ???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="ControlValue" type="tns:ElectricMeteringValueImportType">
<xs:annotation>
<xs:documentation>?????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="VerificationValue">
<xs:annotation>
<xs:documentation>?????????????????? ??????????????, ???? ???????????????? ?????????????? ???????? ???????????????????????? ?? ???????????? ???????????? ???? ??????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="StartDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SealDate" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????????????????? ???? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StartValue" type="metering-device-base:ElectricMeteringValueBaseType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndValue" type="metering-device-base:ElectricMeteringValueBaseType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element fixed="true" name="PlannedVerification" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VerificationReason" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????????????? ???????????? ???? ???? ?????????? (?????? 224). ???????????????? ?????? ???????????????????? ??????????????.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element ref="base:TransportGUID" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VolumeDeviceValue">
<xs:annotation>
<xs:documentation>???????????? ???????????????????????? ???????????????? ???? ???? (????????????????????????????, ???????????????? ??????????????, ??????, ?????????????? ????????, ???????????????? ????????, ?????????????? ?????????????? ????????). ?????????????????????? ???????????? ?????? ????, ?????????????????????????????? ?????????? ?????????????????????????? ???? </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="3" name="CurrentValue">
<xs:annotation>
<xs:documentation>?????????? ?????????????????????? ???? ????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:VolumeMeteringValueImportType">
<xs:sequence minOccurs="0">
<xs:element name="Period" type="base:YearMonth">
<xs:annotation>
<xs:documentation>????????????, ???? ?????????????? ???????????????????? ??????????????????.
???????? ???? ????????????, ???? ?????????????????? ?????????????????? ?? ???????????? ???????? ???????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="3" name="ControlValue" type="tns:VolumeMeteringValueImportType">
<xs:annotation>
<xs:documentation>?????????????????????? ??????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="VerificationValue">
<xs:annotation>
<xs:documentation>???????????????? ?? ??????????????, ???? ???????????????? ?????????????? ???????? ???????????????????????? ?? ???????????? ???????????? ???? ??????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="StartDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SealDate" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????????????????? ???? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="3" name="StartValue" type="metering-device-base:VolumeMeteringValueBaseType">
<xs:annotation>
<xs:documentation>?????????? ???? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="3" name="EndValue" type="metering-device-base:VolumeMeteringValueBaseType">
<xs:annotation>
<xs:documentation>?????????? ???? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element fixed="true" name="PlannedVerification" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VerificationReason" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????????????? ???????????? ???? ???? ?????????? (?????? 224). ???????????????? ?????? ???????????????????? ??????????????.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element ref="base:TransportGUID" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute fixed="10.0.1.1" ref="base:version" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:key name="importMeteringDeviceValuesRequest_TransportGUIDKey">
<xs:selector xpath=".//base:TransportGUID" />
<xs:field xpath="." />
</xs:key>
</xs:element>
<xs:element name="exportMeteringDeviceHistoryRequest">
<xs:annotation>
<xs:documentation>?????????????? ?????????????? ?????????????????? ?? ?????????????? ???????????????? ?????????? (????) ????????????????????????, ?????????????????????????? ?? ?????????????????? ????????. ?????????????????????? ???????????????? ???????????????????? ??????????. ?????????? ?????????????????????? ???? ?????????????????? ???? ???????????? ???????? (?? ???????? ???????????? ???????????????????????????? ???????????? ???? ???????? ???? ????????????????????????). ???????? ???????????????? ?????????????? ???? 2-?? ?? ?????????? (?????? ????????) ??????????, ???? ???????????? ???????????????????????????? ??????????????, ?????????????????????? ???? ?????????? 1000 ???? ?? ???????????? ??????????. ?????? ???????????????? 2-???? ?? ?????????????????????? ???????????? ???????????????????? ?????????????????? ???????????? ?? ???????? ???? ???????????????????? ???????????????????? ?? ?????????????? ?? ?????? ?????????????? ExportMeteringDeviceRootGUID</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="base:BaseType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="100" name="FIASHouseGuid" type="base:GUIDType">
<xs:annotation>
<xs:documentation>???????????????????? ???????????????????? ?????????????????????????? ???????? ???? ????????, ?? ?????????????? ???????????????????? ???? ????????????????????????. ?????????????????????? ???????????????? ???????????????????? ??????????????????. ???????? ???? ????????????, ???? ?????????? ???????????????????????????????? ???????????? ???? ???????? ???? ????????????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="ExportMeteringDeviceRootGUID" type="base:GUIDType">
<xs:annotation>
<xs:documentation>?????????????????????????? ???? ?? ?????? ??????, ???????????????????????? ?????? ???????????????? 2-???? ?? ?????????????????????? ???????????? ???????????? (????. ?????????????????? ?????????????????? ????????????????). ???????????? ?????????????????????? ????????????????, ???????????????????? ?? ???????????????? exportMeteringDeviceHistoryResult/PagedOutput/ExportMeteringDeviceRootGUID ?????? ???????????????? ?????????????????????? ?????????? ????????????. ?????? ???????????????? ?????????????? ?????????? ???????????? ?????????????? ???? ??????????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element maxOccurs="100" name="MeteringDeviceType" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????? ?????????????? ?????????? (?????? 27)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="100" name="MunicipalResource" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????? ?????????????????????????? ?????????????? (?????? 2)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="100" name="MeteringDeviceRootGUID" type="base:GUIDType">
<xs:annotation>
<xs:documentation>?????????????????????????? ????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element minOccurs="0" name="CommissioningDateFrom" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????? ?? ???????????????????????? ??????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="CommissioningDateTo" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????? ?? ???????????????????????? ????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="SerchArchived" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????????? ????????????????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="ArchiveDateFrom" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="ArchiveDateTo" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="inputDateFrom" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????, ???? ?????????????? ?????????????????????? ?????????????????? ?? ?????????????? ???? (???? ???????? ???????????? ??????????????????). ???????????????? ???? ??????????????????: 1-?? ?????????? ?????????????????????? ???????????????????????? ????????????. ???????????? ???????????????? ?????????????????? ???? (???????????????????????? ???????????????????? inputDateFrom ?? inputDateTo) ???? ???????????? ???????????????? ???? ?????????????? ???????? ???????????????????????????????? ?????????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="inputDateTo" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????????????, ???? ?????????????? ?????????????????????? ?????????????????? ?? ?????????????? ???? (???? ???????? ???????????? ??????????????????). ???????????????? ???? ??????????????????: ?????????????? ????????. ???????????? ???????????????? ?????????????????? ???? (???????????????????????? ???????????????????? inputDateFrom ?? inputDateTo) ???? ???????????? ???????????????? ???? ?????????????? ???????? ???????????????????????????????? ?????????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="ExcludePersonAsDataSource" type="xs:boolean">
<xs:annotation>
<xs:documentation>???????? ???????? ?????????????? ?????? ??????????????????????, ???? ??????????????????, ?????????????????? ?? ?????????????? ??????????????????????, ???????????????????? ?? ????????????????. ???????? ???????? ????????????????????, ???? ?????????? ?????????????????? ?? ???????????????? ???? ????????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="ExcludeCurrentOrgAsDataSource" type="xs:boolean">
<xs:annotation>
<xs:documentation>???????? ???????? ?????????????? ?????? ??????????????????????, ???? ??????????????????, ?????????????????? ?? ?????????????? ?????????????? ????????????????????????, ???????????????????? ?? ???????????????? (?????? ??????????????, ?????? ???? ???????????????????? ???????? excludeISValues). ???????? ???????? ????????????????????, ???? ?????????? ?????????????????? ?? ???????????????? ???? ????????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="ExcludeOtherOrgAsDataSource" type="xs:boolean">
<xs:annotation>
<xs:documentation>???????? ???????? ?????????????? ?????? ??????????????????????, ???? ??????????????????, ?????????????????? ?? ?????????????? ?????????????????????????? ???????????????? ???? ??????????????, ???????????????????? ?? ????????????????. ???????? ???????? ????????????????????, ???? ?????????? ?????????????????? ?? ???????????????? ???? ????????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="excludeISValues" type="xs:boolean">
<xs:annotation>
<xs:documentation>???????? ???????? ????????????????????, ???? ?? ???????????????? ???????????????????? ???????????? ??????????????????, ?????????????????? ?? ???????????? ???????????????? ?????? ?????????????????????? ?????????????????????????? ???????????????? ???? ??????????????. ?? ?????????????????? ?????????????? ?????????????????????? ?????? ??????????????????. (???????????????????? ????????????????????????????????, ?????????????? ?????????????????????????? ?????????????? ExcludePersonAsDataSource, ExcludeCurrentOrgAsDataSource, ExcludeOtherOrgAsDataSource)</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute ref="base:version" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="exportMeteringDeviceHistoryResultType">
<xs:annotation>
<xs:documentation>?????????????? ?????????????????? ?? ?????????????? ???????????????? ??????????. ???????????????? ?????????????????? ?? ?????????????? ?????????????????????? ?? ???????????????? ?????????????????? (????), ?????????????? ?????????????????? ?????????????? ?????????? ?????? ?????? ????????????????. ???????? ???? ?????????????? ?????????? ???????????????????? ???? ???? ?????????????????????????? ?????????????? (????) ???? ??????????????????, ???? ?????????????????????????? ?????????????????????? ???????????????? ?????????????????? ?? ?????????????? ?? ???? ???? ???? ??????????????????</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="MeteringDeviceRootGUID" type="metering-device-base:MeteringDeviceGUIDType">
<xs:annotation>
<xs:documentation>?????????????????????????? ????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="HCSHouseGUID" type="base:GUIDType">
<xs:annotation>
<xs:documentation>???????????????????? ?????????????????????????? ????????-?????????? ?????????????????? ???? (?? ?????? ??????). ?????????????????????? ????????????, ?????????? ????????????, ?????????? ?? ?????????????? exportMeteringDeviceHistoryRequest ???????????? ?????????? ???????? ?????????????? tns:FIASHouseGuid</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="FIASHouseGuid" type="base:GUIDType">
<xs:annotation>
<xs:documentation>???????????????????? ?????????????????????????? ????????-?????????? ?????????????????? ???? (???? ????????). ?????????????????????? ????????????, ?????????? ????????????, ?????????? ?? ?????????????? exportMeteringDeviceHistoryRequest ???????????? ?????????? ???????? ?????????????? tns:FIASHouseGuid</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element name="OneRateDeviceValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ?????????????? ????????????????/?????????????? ????????; ????????; ???????????????? ??????????????. ?????????????????????? ???????????? ?????? ????, ?????????????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="3" name="BaseValue" type="tns:OneRateMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="1" name="Values">
<xs:annotation>
<xs:documentation>??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CurrentValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:OneRateCurrentMeteringValueExportType">
<xs:sequence minOccurs="0">
<xs:element name="Period" type="base:YearMonth">
<xs:annotation>
<xs:documentation>????????????, ?? ???????????????? ?????????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ControlValue" type="tns:OneRateCurrentMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="VerificationValue">
<xs:annotation>
<xs:documentation>?????????????????? ??????????????, ???? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="StartDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SealDate" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????????????????? ???? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="3" name="StartValue" type="tns:OneRateMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="3" name="EndValue" type="tns:OneRateMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element fixed="true" name="PlannedVerification" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VerificationReason" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????????????? ???????????? ???? ???? ?????????? (?????? 224). ???????????????? ?????? ???????????????????? ??????????????.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="excludeISValues" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????????? ??????????????????, ?????????????????? ?????????????? ???? ?????????????? ????.
(?????????? ?????????????????? ?????????? ???????? ?????????????? ???? ???????????? ?????????? ??????, ?? ?? ?????????????? ???????????? ????) ???????? ???????? = "????????????", ???? ?????????????????????? ??????????????????, ?????????????????? ?????????? ?????? ?? ?? ?????????????? ???????????? ????, ?? ?????????????????? ?????????????? ?????????????????????? ?????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ElectricDeviceValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ?????????????? ????????????????????????????. ?????????????????????? ???????????? ?????? ????, ?????????????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="BaseValue" type="tns:ElectricMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="1" name="Values">
<xs:annotation>
<xs:documentation>??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CurrentValue">
<xs:annotation>
<xs:documentation>?????????????????? ???? ????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:ElectricCurrentMeteringValueExportType">
<xs:sequence minOccurs="0">
<xs:element name="Period" type="base:YearMonth">
<xs:annotation>
<xs:documentation>????????????, ?? ???????????????? ?????????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ControlValue" type="tns:ElectricCurrentMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="VerificationValue">
<xs:annotation>
<xs:documentation>?????????????????? ??????????????, ???? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="StartDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndDateValue" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SealDate" type="xs:date">
<xs:annotation>
<xs:documentation>???????? ?????????????????????????????? ???? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StartValue" type="tns:ElectricMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ???????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndValue" type="tns:ElectricMeteringValueExportType">
<xs:annotation>
<xs:documentation>?????????????????? ???? ?????????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element fixed="true" name="PlannedVerification" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????? ???????????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VerificationReason" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????????????? ???????????? ???? ???? ?????????? (?????? 224). ???????????????? ?????? ???????????????????? ??????????????.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="excludeISValues" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????????? ??????????????????, ?????????????????? ?????????????? ???? ?????????????? ????.
(?????????? ?????????????????? ?????????? ???????? ?????????????? ???? ???????????? ?????????? ??????, ?? ?? ?????????????? ???????????? ????) ???????? ???????? = "????????????", ???? ?????????????????????? ??????????????????, ?????????????????? ?????????? ?????? ?? ?? ?????????????? ???????????? ????, ?? ?????????????????? ?????????????? ?????????????????????? ?????? ??????????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VolumeDeviceValue">
<xs:annotation>
<xs:documentation>???????????? ?????????????????????? ???????????????? ???? (????????????????????????????, ???????????????? ??????????????, ??????, ?????????????? ????????, ???????????????? ????????, ?????????????? ?????????????? ????????). ?????????????????????? ???????????? ?????? ????, ?????????????????????????????? ?????????? ?????????????????????????? ???? </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="tns:VolumeMeteringValueExportType">
<xs:sequence>
<xs:element minOccurs="0" name="excludeISValues" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????????? ????????????, ?????????????????? ?????????????? ???? ?????????????? ????.
(?????????? ???????????? ?????????? ???????? ?????????????? ???? ???????????? ?????????? ??????, ?? ?? ?????????????? ???????????? ????) ???????? ???????? = "????????????", ???? ?????????????????????? ????????????, ?????????????????? ?????????? ?????? ?? ?? ?????????????? ???????????? ????, ?? ?????????????????? ?????????????? ?????????????????????? ?????? ????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:element minOccurs="0" name="ArchivedValues">
<xs:annotation>
<xs:documentation>???????????? ???? ?????????????????? ????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ArchivingReason" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>?????????????? ??????????????????. ???????????? ???? ?????? "?????????????? ?????????????????? ?????????????? ??????????" (???????????????????? ?????????? 21).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="getStateResult">
<xs:annotation>
<xs:documentation>?????????????? ?????????????? ?????????????????????????? ??????????????????</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent mixed="false">
<xs:extension base="base:BaseAsyncResponseType">
<xs:choice minOccurs="0">
<xs:element ref="base:ErrorMessage" />
<xs:element maxOccurs="unbounded" name="ImportResult" type="base:CommonResultType" />
<xs:sequence>
<xs:element maxOccurs="unbounded" name="exportMeteringDeviceHistoryResult" type="tns:exportMeteringDeviceHistoryResultType" />
<xs:element minOccurs="0" name="PagedOutput">
<xs:annotation>
<xs:documentation>??????????????????, ???????????????????????? ?????? ???????????????? ?????????????????? ?? ?????????????? ???? ??????????????, ?????????????????????? ???? ?????????? 1000 ???? ?? ???????????? ??????????. ?????????????????????? ????????????, ?????????? ????????????, ?????????? ?? ?????????????? exportMeteringDeviceHistoryRequest ???????????? ?????????? ???????? ?????????????? tns:FIASHouseGuid</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice>
<xs:element name="ExportMeteringDeviceRootGUID" type="base:GUIDType">
<xs:annotation>
<xs:documentation>???????????????? ?????????????????????????? ???? ?? ?????? ?????? ?????? ?????????????????? ???????????????????? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element fixed="true" name="LastPage" type="xs:boolean">
<xs:annotation>
<xs:documentation>?????????????? ???????????????????? ?????????? ??????????????</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:choice>
<xs:attribute fixed="10.0.1.1" ref="base:version" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,159 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:nsi-base="http://dom.gosuslugi.ru/schema/integration/nsi-base/" xmlns:tns="http://dom.gosuslugi.ru/schema/integration/metering-device-base/" xmlns:base="http://dom.gosuslugi.ru/schema/integration/base/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/" version="11.13.0.6" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="hcs-base.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/base/" />
<xs:import schemaLocation="hcs-nsi-base.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/" />
<xs:simpleType name="MeteringDeviceGUIDType">
<xs:annotation>
<xs:documentation>Идентификатор ПУ</xs:documentation>
</xs:annotation>
<xs:restriction base="base:GUIDType" />
</xs:simpleType>
<xs:simpleType name="MeteringValueType">
<xs:annotation>
<xs:documentation>Показание ПУ. Значение (15 до запятой, 7 после)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="\d{1,15}(\.\d{1,7})?" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="OneRateMeteringValueBaseType">
<xs:annotation>
<xs:documentation>Коммунальный ресурс и показание ПУ для однотарифного ПУ. Используется при импорте показаний поверки и фиксации показаний ПУ при его замене, а также, как базовый класс для других типов</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="MunicipalResource" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>Коммунальный ресурс (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) (НСИ 2)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MeteringValue" type="tns:MeteringValueType">
<xs:annotation>
<xs:documentation>Значение</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="OneRateMeteringValueExportType">
<xs:annotation>
<xs:documentation>Данные однотарифного ПУ: коммунальный ресурс, последнее полученное показание в единицах измерения ПУ, источник данных о показаниях ПУ. Используется при экспорте данных ПУ</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:OneRateMeteringValueBaseType">
<xs:sequence minOccurs="0">
<xs:element minOccurs="0" name="ReadingsSource" type="xs:string">
<xs:annotation>
<xs:documentation>Кем внесено</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="orgPPAGUID" type="xs:string">
<xs:annotation>
<xs:documentation>Идентификатор организации, которая ввела показания в Систему. Не заполняется, если показания были введены гражданином</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OneRateMeteringValueExportWithTSType">
<xs:annotation>
<xs:documentation>Данные однотарифного ПУ: коммунальный ресурс, последнее полученное показание в единицах измерения ПУ, источник данных о показаниях ПУ, время внесения в Систему. Используется при экспорте показаний ПУ</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:OneRateMeteringValueExportType">
<xs:sequence>
<xs:element name="EnterIntoSystem" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата и время внесения в Систему</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElectricMeteringValueBaseType">
<xs:annotation>
<xs:documentation>Показания ПУ электрической энергии. Используется при импорте показаний поверки и фиксации показаний ПУ при его замене, а также, как базовый класс для других типов</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="MeteringValueT1" type="tns:MeteringValueType">
<xs:annotation>
<xs:documentation>Значение по тарифу T1</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT2" type="tns:MeteringValueType">
<xs:annotation>
<xs:documentation>Значение по тарифу T2</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT3" type="tns:MeteringValueType">
<xs:annotation>
<xs:documentation>Значение по тарифу T3</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ElectricMeteringValueExportType">
<xs:annotation>
<xs:documentation>Данные многотарифного ПУ: коммунальный ресурс, последние полученные показания в единицах измерения ПУ, источник данных о показаниях ПУ. Используется при экспорте данных ПУ</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:ElectricMeteringValueBaseType">
<xs:sequence minOccurs="0">
<xs:element minOccurs="0" name="ReadingsSource" type="xs:string">
<xs:annotation>
<xs:documentation>Кем внесено</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="orgPPAGUID" type="xs:string">
<xs:annotation>
<xs:documentation>Идентификатор организации, которая ввела показания в Систему. Не заполняется, если показания были введены гражданином</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElectricMeteringValueExportWithTSType">
<xs:annotation>
<xs:documentation>Данные многотарифного ПУ: коммунальный ресурс, последнее полученное показание в единицах измерения ПУ, источник данных о показаниях ПУ, время внесения в Систему. Используется при экспорте показаний ПУ</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:ElectricMeteringValueExportType">
<xs:sequence>
<xs:element name="EnterIntoSystem" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата и время внесения в Систему</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VolumeMeteringValueBaseType">
<xs:annotation>
<xs:documentation>Объемы потребленных ресурсов по ПУ (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды)</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="MunicipalResource" type="nsi-base:nsiRef">
<xs:annotation>
<xs:documentation>Коммунальный ресурс (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) (НСИ 2)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MeteringValueT1" type="tns:MeteringValueType">
<xs:annotation>
<xs:documentation>Объем по тарифу T1</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT2" type="tns:MeteringValueType">
<xs:annotation>
<xs:documentation>Объем по тарифу T2</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="MeteringValueT3" type="tns:MeteringValueType">
<xs:annotation>
<xs:documentation>Объем по тарифу T3</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,427 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:base="http://dom.gosuslugi.ru/schema/integration/base/" xmlns:tns="http://dom.gosuslugi.ru/schema/integration/nsi-base/" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/" version="11.2.1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="hcs-base.xsd" namespace="http://dom.gosuslugi.ru/schema/integration/base/" />
<xs:simpleType name="nsiCodeType">
<xs:restriction base="xs:string">
<xs:maxLength value="20" />
<xs:pattern value="(A{0,1}\d{1,4}(\.)?)+" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="nsiRef">
<xs:annotation>
<xs:documentation>Ссылка на справочник</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Code" type="tns:nsiCodeType">
<xs:annotation>
<xs:documentation>Код записи справочника</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="GUID" type="base:GUIDType">
<xs:annotation>
<xs:documentation>Идентификатор записи в соответствующем справочнике ГИС ЖКХ</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="Name">
<xs:annotation>
<xs:documentation>Значение</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="base:LongTextType">
<xs:maxLength value="1200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="NsiItemNameType">
<xs:annotation>
<xs:documentation>Скалярный тип. Наименование справочника. Строка не более 200 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="2500" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NsiItemRegistryNumberType">
<xs:annotation>
<xs:documentation>Скалярный тип. Реестровый номер справочника. Код не более 10 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:positiveInteger">
<xs:totalDigits value="10" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="NsiItemInfoType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование, дата и время последнего изменения справочника.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="RegistryNumber" type="tns:NsiItemRegistryNumberType">
<xs:annotation>
<xs:documentation>Реестровый номер справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Name" type="tns:NsiItemNameType">
<xs:annotation>
<xs:documentation>Наименование справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Modified" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата и время последнего изменения справочника.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NsiListType">
<xs:annotation>
<xs:documentation>Перечень справочников с датой последнего изменения каждого из них.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Created" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата и время формирования перечня справочников.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" name="NsiItemInfo" type="tns:NsiItemInfoType">
<xs:annotation>
<xs:documentation>Наименование, дата и время последнего изменения справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="tns:ListGroup" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="NsiItemType">
<xs:annotation>
<xs:documentation>Данные справочника.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="NsiItemRegistryNumber" type="tns:NsiItemRegistryNumberType">
<xs:annotation>
<xs:documentation>Реестровый номер справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Created" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата и время формирования данных справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" name="NsiElement" type="tns:NsiElementType">
<xs:annotation>
<xs:documentation>Элемент справочника верхнего уровня.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NsiElementType">
<xs:annotation>
<xs:documentation>Составной тип. Элемент справочника.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Code" type="tns:nsiCodeType">
<xs:annotation>
<xs:documentation>Код элемента справочника, уникальный в пределах справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="GUID" type="base:GUIDType">
<xs:annotation>
<xs:documentation>Глобально-уникальный идентификатор элемента справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element name="Modified" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата и время последнего изменения элемента справочника (в том числе создания).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:sequence>
<xs:element name="StartDate" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата начала действия значения</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EndDate" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Дата окончания действия значения</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:choice>
<xs:element name="IsActual" type="xs:boolean">
<xs:annotation>
<xs:documentation>Признак актуальности элемента справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="NsiElementField" type="tns:NsiElementFieldType">
<xs:annotation>
<xs:documentation>Наименование и значение поля для элемента справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ChildElement" type="tns:NsiElementType">
<xs:annotation>
<xs:documentation>Дочерний элемент.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NsiElementFieldType" abstract="true">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля для элемента справочника. Абстрактный тип.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Name" type="tns:FieldNameType">
<xs:annotation>
<xs:documentation>Наименование поля элемента справочника.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NsiElementStringFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Строка" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="Value" type="xs:string">
<xs:annotation>
<xs:documentation>Значение поля элемента справочника типа "Строка".</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementBooleanFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Да/Нет" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="Value" type="xs:boolean">
<xs:annotation>
<xs:documentation>Значение поля элемента справочника типа "Да/Нет".</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementFloatFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Вещественное" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="Value" type="xs:float">
<xs:annotation>
<xs:documentation>Значение поля элемента справочника типа "Вещественное".</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementDateFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Дата" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="Value" type="xs:date">
<xs:annotation>
<xs:documentation>Значение поля элемента справочника типа "Дата".</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementIntegerFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Целое число" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="Value" type="xs:integer">
<xs:annotation>
<xs:documentation>Значение поля элемента справочника типа "Целое число".</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementEnumFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Перечислимый" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="Position">
<xs:annotation>
<xs:documentation>Запись элемента справочника типа "Перечислимый".</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="GUID">
<xs:annotation>
<xs:documentation>Код поля элемента справочника типа "Перечислимый".</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Value" type="xs:string">
<xs:annotation>
<xs:documentation>Значение поля элемента справочника типа "Перечислимый".</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementNsiFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Ссылка на справочник" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="NsiRef">
<xs:annotation>
<xs:documentation>Ссылка на справочник.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="NsiItemRegistryNumber" type="tns:NsiItemRegistryNumberType">
<xs:annotation>
<xs:documentation>Реестровый номер справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="tns:ListGroup" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementNsiRefFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Ссылка на элемент внутреннего справочника" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="NsiRef">
<xs:annotation>
<xs:documentation>Ссылка на элемент внутреннего справочника.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="NsiItemRegistryNumber" type="tns:NsiItemRegistryNumberType">
<xs:annotation>
<xs:documentation>Реестровый номер справочника.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Ref" type="tns:nsiRef">
<xs:annotation>
<xs:documentation>Ссылка на элемент справочника.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementOkeiRefFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Ссылка на элемент справочника ОКЕИ" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="Code" type="tns:nsiCodeType">
<xs:annotation>
<xs:documentation>Код единицы измерения по справочнику ОКЕИ.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementFiasAddressRefFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля типа "Ссылка на элемент справочника ФИАС" для элемента справочника.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element minOccurs="0" name="NsiRef">
<xs:annotation>
<xs:documentation>Ссылка на элемент справочника ФИАС.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Guid" type="xs:string">
<xs:annotation>
<xs:documentation>Идентификационный код позиции в справочнике ФИАС.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="aoGuid" type="xs:string">
<xs:annotation>
<xs:documentation>Глобально-уникальный идентификатор адресного объекта в справочнике ФИАС.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NsiElementAttachmentFieldType">
<xs:annotation>
<xs:documentation>Составной тип. Наименование и значение поля "Вложение"</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="false">
<xs:extension base="tns:NsiElementFieldType">
<xs:sequence>
<xs:element name="Document" type="base:AttachmentType">
<xs:annotation>
<xs:documentation>Документ</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FieldNameType">
<xs:annotation>
<xs:documentation>Скалярный тип. Наименование поля элемента справочника. Строка не более 200 символов.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
<xs:element name="ListGroup">
<xs:annotation>
<xs:documentation>Группа справочника:
NSI - (по умолчанию) общесистемный
NSIRAO - ОЖФ</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NSI" />
<xs:enumeration value="NSIRAO" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,213 @@
<?xml version="1.0" encoding="utf-8"?>
<schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" targetNamespace="http://www.w3.org/2000/09/xmldsig#" version="0.1" xmlns="http://www.w3.org/2001/XMLSchema">
<simpleType name="CryptoBinary">
<restriction base="base64Binary" />
</simpleType>
<element name="Signature" type="ds:SignatureType" />
<complexType name="SignatureType">
<sequence>
<element ref="ds:SignedInfo" />
<element ref="ds:SignatureValue" />
<element minOccurs="0" ref="ds:KeyInfo" />
<element minOccurs="0" maxOccurs="unbounded" ref="ds:Object" />
</sequence>
<attribute name="Id" type="ID" use="optional" />
</complexType>
<element name="SignatureValue" type="ds:SignatureValueType" />
<complexType name="SignatureValueType">
<simpleContent>
<extension base="base64Binary">
<attribute name="Id" type="ID" use="optional" />
</extension>
</simpleContent>
</complexType>
<element name="SignedInfo" type="ds:SignedInfoType" />
<complexType name="SignedInfoType">
<sequence>
<element ref="ds:CanonicalizationMethod" />
<element ref="ds:SignatureMethod" />
<element maxOccurs="unbounded" ref="ds:Reference" />
</sequence>
<attribute name="Id" type="ID" use="optional" />
</complexType>
<element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType" />
<complexType name="CanonicalizationMethodType" mixed="true">
<sequence>
<any minOccurs="0" maxOccurs="unbounded" namespace="##any" />
</sequence>
<attribute name="Algorithm" type="anyURI" use="required" />
</complexType>
<element name="SignatureMethod" type="ds:SignatureMethodType" />
<complexType name="SignatureMethodType" mixed="true">
<sequence>
<element minOccurs="0" name="HMACOutputLength" type="ds:HMACOutputLengthType" />
<any minOccurs="0" maxOccurs="unbounded" namespace="##other" />
</sequence>
<attribute name="Algorithm" type="anyURI" use="required" />
</complexType>
<element name="Reference" type="ds:ReferenceType" />
<complexType name="ReferenceType">
<sequence>
<element minOccurs="0" ref="ds:Transforms" />
<element ref="ds:DigestMethod" />
<element ref="ds:DigestValue" />
</sequence>
<attribute name="Id" type="ID" use="optional" />
<attribute name="URI" type="anyURI" use="optional" />
<attribute name="Type" type="anyURI" use="optional" />
</complexType>
<element name="Transforms" type="ds:TransformsType" />
<complexType name="TransformsType">
<sequence>
<element maxOccurs="unbounded" ref="ds:Transform" />
</sequence>
</complexType>
<element name="Transform" type="ds:TransformType" />
<complexType name="TransformType" mixed="true">
<choice minOccurs="0" maxOccurs="unbounded">
<any namespace="##other" processContents="lax" />
<element name="XPath" type="string" />
</choice>
<attribute name="Algorithm" type="anyURI" use="required" />
</complexType>
<element name="DigestMethod" type="ds:DigestMethodType" />
<complexType name="DigestMethodType" mixed="true">
<sequence>
<any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</sequence>
<attribute name="Algorithm" type="anyURI" use="required" />
</complexType>
<element name="DigestValue" type="ds:DigestValueType" />
<simpleType name="DigestValueType">
<restriction base="base64Binary" />
</simpleType>
<element name="KeyInfo" type="ds:KeyInfoType" />
<complexType name="KeyInfoType" mixed="true">
<choice maxOccurs="unbounded">
<element ref="ds:KeyName" />
<element ref="ds:KeyValue" />
<element ref="ds:RetrievalMethod" />
<element ref="ds:X509Data" />
<element ref="ds:PGPData" />
<element ref="ds:SPKIData" />
<element ref="ds:MgmtData" />
<any namespace="##other" processContents="lax" />
</choice>
<attribute name="Id" type="ID" use="optional" />
</complexType>
<element name="KeyName" type="string" />
<element name="MgmtData" type="string" />
<element name="KeyValue" type="ds:KeyValueType" />
<complexType name="KeyValueType" mixed="true">
<choice>
<element ref="ds:DSAKeyValue" />
<element ref="ds:RSAKeyValue" />
<any namespace="##other" processContents="lax" />
</choice>
</complexType>
<element name="RetrievalMethod" type="ds:RetrievalMethodType" />
<complexType name="RetrievalMethodType">
<sequence>
<element minOccurs="0" ref="ds:Transforms" />
</sequence>
<attribute name="URI" type="anyURI" />
<attribute name="Type" type="anyURI" use="optional" />
</complexType>
<element name="X509Data" type="ds:X509DataType" />
<complexType name="X509DataType">
<sequence maxOccurs="unbounded">
<choice>
<element name="X509IssuerSerial" type="ds:X509IssuerSerialType" />
<element name="X509SKI" type="base64Binary" />
<element name="X509SubjectName" type="string" />
<element name="X509Certificate" type="base64Binary" />
<element name="X509CRL" type="base64Binary" />
<any namespace="##other" processContents="lax" />
</choice>
</sequence>
</complexType>
<complexType name="X509IssuerSerialType">
<sequence>
<element name="X509IssuerName" type="string" />
<element name="X509SerialNumber" type="integer" />
</sequence>
</complexType>
<element name="PGPData" type="ds:PGPDataType" />
<complexType name="PGPDataType">
<choice>
<sequence>
<element name="PGPKeyID" type="base64Binary" />
<element minOccurs="0" name="PGPKeyPacket" type="base64Binary" />
<any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</sequence>
<sequence>
<element name="PGPKeyPacket" type="base64Binary" />
<any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</sequence>
</choice>
</complexType>
<element name="SPKIData" type="ds:SPKIDataType" />
<complexType name="SPKIDataType">
<sequence maxOccurs="unbounded">
<element name="SPKISexp" type="base64Binary" />
<any minOccurs="0" namespace="##other" processContents="lax" />
</sequence>
</complexType>
<element name="Object" type="ds:ObjectType" />
<complexType name="ObjectType" mixed="true">
<sequence minOccurs="0" maxOccurs="unbounded">
<any namespace="##any" processContents="lax" />
</sequence>
<attribute name="Id" type="ID" use="optional" />
<attribute name="MimeType" type="string" use="optional" />
<attribute name="Encoding" type="anyURI" use="optional" />
</complexType>
<element name="Manifest" type="ds:ManifestType" />
<complexType name="ManifestType">
<sequence>
<element maxOccurs="unbounded" ref="ds:Reference" />
</sequence>
<attribute name="Id" type="ID" use="optional" />
</complexType>
<element name="SignatureProperties" type="ds:SignaturePropertiesType" />
<complexType name="SignaturePropertiesType">
<sequence>
<element maxOccurs="unbounded" ref="ds:SignatureProperty" />
</sequence>
<attribute name="Id" type="ID" use="optional" />
</complexType>
<element name="SignatureProperty" type="ds:SignaturePropertyType" />
<complexType name="SignaturePropertyType" mixed="true">
<choice maxOccurs="unbounded">
<any namespace="##other" processContents="lax" />
</choice>
<attribute name="Target" type="anyURI" use="required" />
<attribute name="Id" type="ID" use="optional" />
</complexType>
<simpleType name="HMACOutputLengthType">
<restriction base="integer" />
</simpleType>
<element name="DSAKeyValue" type="ds:DSAKeyValueType" />
<complexType name="DSAKeyValueType">
<sequence>
<sequence minOccurs="0">
<element name="P" type="ds:CryptoBinary" />
<element name="Q" type="ds:CryptoBinary" />
</sequence>
<element minOccurs="0" name="G" type="ds:CryptoBinary" />
<element name="Y" type="ds:CryptoBinary" />
<element minOccurs="0" name="J" type="ds:CryptoBinary" />
<sequence minOccurs="0">
<element name="Seed" type="ds:CryptoBinary" />
<element name="PgenCounter" type="ds:CryptoBinary" />
</sequence>
</sequence>
</complexType>
<element name="RSAKeyValue" type="ds:RSAKeyValueType" />
<complexType name="RSAKeyValueType">
<sequence>
<element name="Modulus" type="ds:CryptoBinary" />
<element name="Exponent" type="ds:CryptoBinary" />
</sequence>
</complexType>
</schema>

View File

@ -65,6 +65,7 @@
</ItemGroup>
<ItemGroup>
<Compile Include="Client\Api\ApiBase.cs" />
<Compile Include="Client\Api\DeviceMeteringApi.cs" />
<Compile Include="Client\Api\HouseManagementApi.cs" />
<Compile Include="Client\Api\NsiApi.cs" />
<Compile Include="Client\Api\NsiCommonApi.cs" />
@ -85,6 +86,8 @@
<Compile Include="Client\Api\Request\Adapter\IGetStateResult.cs" />
<Compile Include="Client\Api\Request\Adapter\IGetStateResultMany.cs" />
<Compile Include="Client\Api\Request\Adapter\IGetStateResultOne.cs" />
<Compile Include="Client\Api\Request\DeviceMetering\DeviceMeteringRequestBase.cs" />
<Compile Include="Client\Api\Request\DeviceMetering\ImportMeteringDeviceValuesRequest.cs" />
<Compile Include="Client\Api\Request\Exception\NoResultsRemoteException.cs" />
<Compile Include="Client\Api\Request\GostSigningEndpointBehavior.cs" />
<Compile Include="Client\Api\Request\GostSigningMessageInspector.cs" />
@ -221,6 +224,11 @@
<DesignTime>True</DesignTime>
<DependentUpon>Reference.svcmap</DependentUpon>
</Compile>
<Compile Include="Connected Services\Service.Async.DeviceMetering\Reference.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Reference.svcmap</DependentUpon>
</Compile>
<Compile Include="Connected Services\Service.Async.HouseManagement.v15_7_0_1\Reference.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
@ -664,6 +672,40 @@
<None Include="Connected Services\Service.Async.DeviceMetering.v15_7_0_1\xmldsig-core-schema.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\hcs-base.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\hcs-device-metering-service-async.wsdl" />
<None Include="Connected Services\Service.Async.DeviceMetering\hcs-device-metering-types.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\hcs-metering-device-base.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\hcs-nsi-base.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\Hcs.Service.Async.DeviceMetering.AckRequest.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\Hcs.Service.Async.DeviceMetering.getStateResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\Hcs.Service.Async.DeviceMetering.getStateResult.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\Hcs.Service.Async.DeviceMetering.ResultHeader.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\xmldsig-core-schema.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\Service.Async.HouseManagement.v15_7_0_1\hcs-account-base.xsd">
<SubType>Designer</SubType>
</None>
@ -1408,6 +1450,7 @@
<ItemGroup>
<WCFMetadataStorage Include="Connected Services\Service.Async.DebtRequests.v15_7_0_1\" />
<WCFMetadataStorage Include="Connected Services\Service.Async.DeviceMetering.v15_7_0_1\" />
<WCFMetadataStorage Include="Connected Services\Service.Async.DeviceMetering\" />
<WCFMetadataStorage Include="Connected Services\Service.Async.HouseManagement.v15_7_0_1\" />
<WCFMetadataStorage Include="Connected Services\Service.Async.HouseManagement\" />
<WCFMetadataStorage Include="Connected Services\Service.Async.Nsi.v15_7_0_1\" />
@ -1478,6 +1521,12 @@
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
<None Include="Connected Services\Service.Async.DeviceMetering\configuration91.svcinfo" />
<None Include="Connected Services\Service.Async.DeviceMetering\configuration.svcinfo" />
<None Include="Connected Services\Service.Async.DeviceMetering\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
<Content Include="HcsWsdlSources\wsdl_xsd_v.15.7.0.1\changelog.txt" />
<Content Include="HcsWsdlSources\how-to-generate-cs-from-wsdl.txt" />
</ItemGroup>

View File

@ -38,6 +38,10 @@
<security mode="Transport" />
</binding>
<binding name="RegOrgBindingAsync2" />
<binding name="DeviceMeteringBindingAsync1">
<security mode="Transport" />
</binding>
<binding name="DeviceMeteringBindingAsync2" />
</basicHttpBinding>
</bindings>
<client>
@ -78,6 +82,10 @@
binding="basicHttpBinding" bindingConfiguration="RegOrgBindingAsync1"
contract="Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync"
name="RegOrgAsyncPort1" />
<endpoint address="https://api.dom.gosuslugi.ru/ext-bus-device-metering-service/services/DeviceMeteringAsync"
binding="basicHttpBinding" bindingConfiguration="DeviceMeteringBindingAsync1"
contract="Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync"
name="DeviceMeteringPortAsync1" />
</client>
</system.serviceModel>
</configuration>

View File

@ -76,6 +76,7 @@
<Compile Include="ClientDemo\Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="TestApp\Program.cs" />
<Compile Include="TestApp\Scenario\DeviceMeteringScenario.cs" />
<Compile Include="TestApp\Scenario\HouseManagementScenario.cs" />
<Compile Include="TestApp\Scenario\NsiCommonScenario.cs" />
<Compile Include="TestApp\Scenario\NsiScenario.cs" />

View File

@ -36,12 +36,15 @@ namespace Hcs.TestApp
client.SetSigningCertificate(cert);
var deviceMeteringScenario = new DeviceMeteringScenario(client);
var houseManagementScenario = new HouseManagementScenario(client);
var nsiScenario = new NsiScenario(client);
var nsiCommonScenario = new NsiCommonScenario(client);
var orgRegistryCommonScenario = new OrgRegistryCommonScenario(client);
try
{
//deviceMeteringScenario.ImportMeteringDeviceValues();
//houseManagementScenario.ExportAccount();
//houseManagementScenario.ExportHouse();

View File

@ -0,0 +1,56 @@
using Hcs.Client;
using Hcs.Client.Api.Registry;
using Hcs.Service.Async.DeviceMetering;
using System;
namespace Hcs.TestApp.Scenario
{
internal class DeviceMeteringScenario(UniClient client)
{
private readonly UniClient client = client;
internal void ImportMeteringDeviceValues()
{
var values = new importMeteringDeviceValuesRequestMeteringDevicesValues()
{
// TODO: Вставить айди ПУ
Item = "",
ItemElementName = ItemChoiceType.MeteringDeviceRootGUID,
Item1 = new importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValue()
{
CurrentValue = [new importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValueCurrentValue()
{
Period = new YearMonth()
{
Year = 2025,
Month = 9
},
DateValue = new DateTime(2025, 9, 25),
TransportGUID = Guid.NewGuid().ToString(),
// TODO: Переделать работу с НСИ
MunicipalResource = new nsiRef()
{
Code = Registry239.Element4.Code,
GUID = Registry239.Element4.GUID
},
MeteringValue = "100"
}],
ControlValue = [new OneRateMeteringValueImportType()
{
DateValue = new DateTime(2025, 9, 25),
TransportGUID = Guid.NewGuid().ToString(),
// TODO: Переделать работу с НСИ
MunicipalResource = new nsiRef()
{
Code = Registry239.Element4.Code,
GUID = Registry239.Element4.GUID
},
MeteringValue = "100"
}]
}
};
var result = client.DeviceMetering.ImportMeteringDeviceValuesAsync(values).Result;
Console.WriteLine("Scenario execution " + (result ? "succeeded" : "failed"));
}
}
}