diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 924ab6d6dcd07dd9b944c387cc39767e3fe6a465..fd33e25046d033c0b11292afa51fced9f7078fbd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,4 +14,4 @@ checkASN1: checkXSD: stage: Checks script: - - python3 testing/check_xsd.py -r . \ No newline at end of file + - python3 testing/check_xsd.py -r . -i portal deps -d testing/deps \ No newline at end of file diff --git a/103120/examples/example.key b/103120/examples/example.key new file mode 100644 index 0000000000000000000000000000000000000000..b5959e7f2fa859401c0543f1038599b31600b37c --- /dev/null +++ b/103120/examples/example.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDc9UQSsRmchhOC +ixyrHvmjmDFeIApVlfTfVV5RJL/280wDlAYymhAcEcvMOyvBCHq4c3M8hBxt9zKD +mV+NbcDqXyblt8rVpjzbggn3Ch2dMJ/kLNO+O+WJSl3Jpyx3b4r8IVoUDXai2sjX +8jLNYI4TC673X3xX1VikzcGwFjt2zbL+WLHEnvUVeG/8FJfRl2ttWlSFMA2252ak +OwtAPF4AKJBW5pXSeILA+K32bf+Y5JMODWwI+njylAafTFV1eM/dTOSEKYCHVCN0 +cxiO6KCC2GSzLeQEGWmh/C+uyhSlLW/6EyEHJcLdi6eTPunYJGanai6PLLr5zNWX +lvcj/YbZAgMBAAECggEAbm1BPRo3U4uKWpaNmFPdrU3VdlYK9CUCgU8X2PPF4HRN +TAiBZG6smGqocIQt5MYJFv/T2q2ny6lcHHrdT0BHxpoRRYMqIsZ26bk+o7DxheqU +LiPdGtiyaX+6CZq71WDwk/tTGmx0GwW+lHXdv9h+iLQxGD4nVXoxWAPgxdEGnONY +gSYbOhXz+MEFZaW8HnVPfoA+RR9Hg59gnmBCZlhbahqf3WnjAwgS0nsbSUN57wVi +FcWHWLyzv94bQHcTgalXqVakQv5+ymJKF4ImiYUP2rLPQ8ubqwmdQ6xI8Gp3AGCr +FY5koP3JT2mMY+aZJEEGWE3U4JRDyrkOpI34No8iEQKBgQD6niFOopCjE2k7eIFr +c+s5Khp3ITmcgV4tycxngXOQw8GnPEzzZUW7xodTiMPLYz/8lFbJvCAWCeQpmVWX +U8OX9anzY0U0ILbolXpdpGdZkBHbKWtAVBNOZ/lY0SAmt6/ZWf/EcqpMm/fH+iph +aqafwQuX4qhy9HlwY2qwyj5y5QKBgQDhtBH9/9Hy0X2HI+uzNRaU0y1BqvuqjHOf +1v57DM5uYF0MAp1SAfAJcx+jUXdf28Nr4GlxBIvQumq6rsvfKhqBINsKgJf/4+PA +Lv+fofeUEEqrGHuecB4NbdHP5XIIiuyyuOtRhGq/sclOQSZAa1kxajGvDI1AVHL4 +LCwcy9HA5QKBgQDIq+2HhWvC6DwOvoMCgyMJ9siSMyxqQLwkdb0R8/mRJO3e9s22 +5pRbsq+RF6WPKb2GhVCo39XhT7I+DOUX8p5fAvo+RHKZNsi+m1ILwSRv9ogVsKiM +LcX3thFWKL1RwysvIn1F03rBNPHGUm206yzYJj8eMwMmaNMERtabEJXIcQKBgHct +Kvbwlr5daafrCrDkzlilLVdoXlzOrtrung8BUxsrHNaTptg/l6yVslX9VUgzdXvH +0kVP/jenx2VtmM7sn3Qhkid4gUon3gGDj4yN7HmtJJA1bEjbsLKsk0XwRIdIO/We ++PphLjCsQrxkYDtRs5YJGdTxjsAyF0b9pAlMgiQVAoGBAK/NGV5+IPDHEmz0CNJN +ApaA2jG8KrsIPWNpgOC3CxPMT3kWYK601y0CLw8ZpUnVTMfPkKMSOVsqaOpHV6eP +Oecq3bP1CiNunro+j3EOIDIST2ttrlNuKIBaiz63ZMNDbs/DyaGL8Zf688OJCXsb +yCWSJh8NbrNblNfI0jaMoTGw +-----END PRIVATE KEY----- diff --git a/103120/examples/example.pem b/103120/examples/example.pem new file mode 100644 index 0000000000000000000000000000000000000000..2aa1eaca4fc4ca1cb9d727356fefedb84b9dfade --- /dev/null +++ b/103120/examples/example.pem @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIC/zCCAeegAwIBAgIUUOGdj0hEfnnW9gqIOCTJ9EUocnMwDQYJKoZIhvcNAQEL +BQAwDzENMAsGA1UEAwwEdGVzdDAeFw0yMTA2MjUwNzIyMDlaFw0yNDAzMjEwNzIy +MDlaMA8xDTALBgNVBAMMBHRlc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQDc9UQSsRmchhOCixyrHvmjmDFeIApVlfTfVV5RJL/280wDlAYymhAcEcvM +OyvBCHq4c3M8hBxt9zKDmV+NbcDqXyblt8rVpjzbggn3Ch2dMJ/kLNO+O+WJSl3J +pyx3b4r8IVoUDXai2sjX8jLNYI4TC673X3xX1VikzcGwFjt2zbL+WLHEnvUVeG/8 +FJfRl2ttWlSFMA2252akOwtAPF4AKJBW5pXSeILA+K32bf+Y5JMODWwI+njylAaf +TFV1eM/dTOSEKYCHVCN0cxiO6KCC2GSzLeQEGWmh/C+uyhSlLW/6EyEHJcLdi6eT +PunYJGanai6PLLr5zNWXlvcj/YbZAgMBAAGjUzBRMB0GA1UdDgQWBBSFT3NqexF1 +LcYkjqUr9MMTIFp/ATAfBgNVHSMEGDAWgBSFT3NqexF1LcYkjqUr9MMTIFp/ATAP +BgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCzwydpNgq680qWmd0D +4ya9fHUopeX7LBSYOU7NU3CagjXnUMwaCmSpokkH0Wvn1UtXDUF+slA9bEeXkfZm +70YW8msIEt1mljDi4CBI+MvaJ40OJkXwkQUE3dhj9LJl5Nv0UBEyv7k/a/6+eO9K +OQoHIVqXwrWs9JHTW6T4diN1w7xcgvSXhlcOySHjfNzFzferqx8i0/Wz6jD/7YSC +FOEaUrXbeFS3asRoZRLW6uXgfDJ7qfCmUZZ853OF3MN63OwWjPGxtFmeZAqMS/K0 +FKgwMCrmZlVq6Fx87E+sc3eppXIceCau/+CHG91mRvMSha6jQD7jLMT9xjND5Dob +/scV +-----END CERTIFICATE----- diff --git a/103120/examples/mutliple-auth-example-request.xml b/103120/examples/mutliple-auth-example-request.xml index 5e5f226800ba796c704d3f2075b837b783dc7cb1..2b8ec478874a7fbdaca0d7a81af8602966386f0f 100644 --- a/103120/examples/mutliple-auth-example-request.xml +++ b/103120/examples/mutliple-auth-example-request.xml @@ -12,7 +12,7 @@ d442c58c-d5e1-4fd9-90ec-9c228ad947f1 2020-09-22T08:06:17.025833Z - V1.8.1 + V1.9.1 XX v1.1.1 diff --git a/103120/examples/request1.xml b/103120/examples/request1.xml index e8b6a5f8b113cfebe8e5f05f6aee82752fbc0184..84ad5c99406501d40a591fa8d157becc4ca773b3 100644 --- a/103120/examples/request1.xml +++ b/103120/examples/request1.xml @@ -12,7 +12,7 @@ c02358b2-76cf-4ba4-a8eb-f6436ccaea2e 2015-09-01T12:00:00.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/request2.xml b/103120/examples/request2.xml index 67cbefd85d9617fe8c574c0bd449694b2dbcdc8f..7daae44b722b0d4cc31b07d84899c212b42c4e73 100644 --- a/103120/examples/request2.xml +++ b/103120/examples/request2.xml @@ -12,7 +12,7 @@ 45002c1e-dc4a-470a-9152-8e752638c86c 2015-09-01T12:01:00.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/request3.xml b/103120/examples/request3.xml index 5da0df382bc54aab96d7a577222fcc449c0fe42b..714741b6186b99f7571cea30db9dc0948b251e4c 100644 --- a/103120/examples/request3.xml +++ b/103120/examples/request3.xml @@ -12,7 +12,7 @@ 69353ac0-9582-4c71-b162-86259c99de20 2015-09-01T12:02:00.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/request4.xml b/103120/examples/request4.xml index 555974f0a91b1cda95c0ec060fd6d75bf278de9f..48cb79de1c09d6f86f10e3591c7928e4a3c94021 100644 --- a/103120/examples/request4.xml +++ b/103120/examples/request4.xml @@ -12,7 +12,7 @@ c02358b2-76cf-4ba4-a8eb-f6436ccaea2e 2019-09-30T13:37:00.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/request5-Binary-Deli.xml b/103120/examples/request5-Binary-Delivery.xml similarity index 98% rename from 103120/examples/request5-Binary-Deli.xml rename to 103120/examples/request5-Binary-Delivery.xml index 7d5170752e0475762923ed6fbdcc9282801b8114..49b3ef3c78fee2f86ca3a1458e2e05f48d821f3f 100644 --- a/103120/examples/request5-Binary-Deli.xml +++ b/103120/examples/request5-Binary-Delivery.xml @@ -12,7 +12,7 @@ 8854cfad-44ac-43b8-99ae-530b690b43da 2019-09-30T13:37:37.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/request5-XML-Deli.xml b/103120/examples/request5-XML-Delivery.xml similarity index 99% rename from 103120/examples/request5-XML-Deli.xml rename to 103120/examples/request5-XML-Delivery.xml index f9314cdd3f3719b3d67dd0ba88122e0071a905d4..afefbec99b0adbfcf28446b8d3d4ad1ed4c1cfea 100644 --- a/103120/examples/request5-XML-Deli.xml +++ b/103120/examples/request5-XML-Delivery.xml @@ -12,7 +12,7 @@ 8854cfad-44ac-43b8-99ae-530b690b43da 2019-09-30T13:37:37.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/request6.xml b/103120/examples/request6.xml new file mode 100644 index 0000000000000000000000000000000000000000..7fb40189617c0b60048a0ae8f8da899f28c3a6fa --- /dev/null +++ b/103120/examples/request6.xml @@ -0,0 +1,82 @@ + + +
+ + XX + ACTOR01 + + + XX + ACTOR02 + + 9964584e-c1a5-4ffa-b949-d9da504c4efb + 2021-06-25T12:00:00.000000Z + + V1.9.1 + XX + v1.0 + +
+ + + + + 0 + + + 68c78910-c922-45f2-aeb3-017eb958bb05 + XX + ACTOR01 + W000001 + + 2021-06-25T12:00:00Z + 2021-09-01T12:00:00Z + + + + + + 1 + + + 4d8127db-e8bc-4a69-9378-457f0424ec2c + XX + ACTOR01 + + 68c78910-c922-45f2-aeb3-017eb958bb05 + + LIID1 + + + + + ETSI + InternationalizedEmailAddress + + Όνομα.παραδείγματος@example.com + + + + + ETSI + TaskDeliveryType + IRIandCC + + + + + 192.0.2.0 + + + + + XX + RECVER01 + + + + + + + +
diff --git a/103120/examples/request6_signed.xml b/103120/examples/request6_signed.xml new file mode 100644 index 0000000000000000000000000000000000000000..2bc0404ef924498e7280669c399ac4c430873787 --- /dev/null +++ b/103120/examples/request6_signed.xml @@ -0,0 +1,118 @@ + +
+ + XX + ACTOR01 + + + XX + ACTOR02 + + 9964584e-c1a5-4ffa-b949-d9da504c4efb + 2021-06-25T12:00:00.000000Z + + V1.9.1 + XX + v1.0 + +
+ + + + + 0 + + + 68c78910-c922-45f2-aeb3-017eb958bb05 + XX + ACTOR01 + W000001 + + 2021-06-25T12:00:00Z + 2021-09-01T12:00:00Z + + + + + + 1 + + + 4d8127db-e8bc-4a69-9378-457f0424ec2c + XX + ACTOR01 + + 68c78910-c922-45f2-aeb3-017eb958bb05 + + LIID1 + + + + + ETSI + InternationalizedEmailAddress + + Όνομα.παραδείγματος@example.com + + + + + ETSI + TaskDeliveryType + IRIandCC + + + + + 192.0.2.0 + + + + + XX + RECVER01 + + + + + + + + + + + + + + + + + + kARbaz+wH6oJWSvmy6Fk4vTQ7t4m3Y16IiNNdDO08/I= + + + DdT9ie03Z9O47sN8ad9gsfuhZhchtNhtvTyNhtiHKuqgNCt696tDH2c68tVqr+iJ3WpCn0gWJHKnYeniTwVPj6fxDh2RbCqk5SVHvdggZjCv3BInNH0ZfOrlvuArJS3UP/gifYXlT5s59Seze1nSjZDNeC25o9WRxNy0krGrhbqIFjxTHDilR40cmKq2SI1540yM3rsc+5D3hgsxGu7ly2dg7qtiFGQIQaFJi8twrViQUnOyDZ63yJHhWeLVU+2FvIuBZh3orDc3VipKsbqrjrDqdfi8qfYEHHPp25DfTpHXnCuhD/3hOwcxvhVJ4+47R8ysO9qMTvGRCUNptgskhQ== + + + MIIC/zCCAeegAwIBAgIUUOGdj0hEfnnW9gqIOCTJ9EUocnMwDQYJKoZIhvcNAQEL +BQAwDzENMAsGA1UEAwwEdGVzdDAeFw0yMTA2MjUwNzIyMDlaFw0yNDAzMjEwNzIy +MDlaMA8xDTALBgNVBAMMBHRlc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQDc9UQSsRmchhOCixyrHvmjmDFeIApVlfTfVV5RJL/280wDlAYymhAcEcvM +OyvBCHq4c3M8hBxt9zKDmV+NbcDqXyblt8rVpjzbggn3Ch2dMJ/kLNO+O+WJSl3J +pyx3b4r8IVoUDXai2sjX8jLNYI4TC673X3xX1VikzcGwFjt2zbL+WLHEnvUVeG/8 +FJfRl2ttWlSFMA2252akOwtAPF4AKJBW5pXSeILA+K32bf+Y5JMODWwI+njylAaf +TFV1eM/dTOSEKYCHVCN0cxiO6KCC2GSzLeQEGWmh/C+uyhSlLW/6EyEHJcLdi6eT +PunYJGanai6PLLr5zNWXlvcj/YbZAgMBAAGjUzBRMB0GA1UdDgQWBBSFT3NqexF1 +LcYkjqUr9MMTIFp/ATAfBgNVHSMEGDAWgBSFT3NqexF1LcYkjqUr9MMTIFp/ATAP +BgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCzwydpNgq680qWmd0D +4ya9fHUopeX7LBSYOU7NU3CagjXnUMwaCmSpokkH0Wvn1UtXDUF+slA9bEeXkfZm +70YW8msIEt1mljDi4CBI+MvaJ40OJkXwkQUE3dhj9LJl5Nv0UBEyv7k/a/6+eO9K +OQoHIVqXwrWs9JHTW6T4diN1w7xcgvSXhlcOySHjfNzFzferqx8i0/Wz6jD/7YSC +FOEaUrXbeFS3asRoZRLW6uXgfDJ7qfCmUZZ853OF3MN63OwWjPGxtFmeZAqMS/K0 +FKgwMCrmZlVq6Fx87E+sc3eppXIceCau/+CHG91mRvMSha6jQD7jLMT9xjND5Dob +/scV + + + + +
\ No newline at end of file diff --git a/103120/examples/response1.xml b/103120/examples/response1.xml index 25aa22c9fee5e4873142b34d7aff30c82e25021e..e4faf001bb4bfb076a5dbc60aa05506e654c74dc 100644 --- a/103120/examples/response1.xml +++ b/103120/examples/response1.xml @@ -12,7 +12,7 @@ c02358b2-76cf-4ba4-a8eb-f6436ccaea2e 2015-09-01T12:00:01.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/response2.xml b/103120/examples/response2.xml index 9ae5d35a80a58d747f995357752a222cdb41cd5d..0675cb2be88d5ea428fc7956797838cb2f0216cf 100644 --- a/103120/examples/response2.xml +++ b/103120/examples/response2.xml @@ -12,7 +12,7 @@ 45002c1e-dc4a-470a-9152-8e752638c86c 2015-09-01T12:01:00.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/response3.xml b/103120/examples/response3.xml index e3b1537dce4c53c395ef3c1adc6090af76661793..2412b1848adeb8dd33a470ded748ee24a080bffc 100644 --- a/103120/examples/response3.xml +++ b/103120/examples/response3.xml @@ -12,7 +12,7 @@ 69353ac0-9582-4c71-b162-86259c99de20 2015-09-01T12:02:00.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/response4.xml b/103120/examples/response4.xml index a8dc811c0046124966418f8127ad3b8affd9f312..a7f9e94bab1cc8c0777854d932ae255c4d3b5519 100644 --- a/103120/examples/response4.xml +++ b/103120/examples/response4.xml @@ -12,7 +12,7 @@ c02358b2-76cf-4ba4-a8eb-f6436ccaea2e 2019-09-30T13:37:01.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/response5.xml b/103120/examples/response5.xml index e210444e8a85f4dab6b4e2e9a593c551db3b8596..336c29fd84dfac0dd8b1a1ac2dda60954c8d7898 100644 --- a/103120/examples/response5.xml +++ b/103120/examples/response5.xml @@ -17,7 +17,7 @@ 8854cfad-44ac-43b8-99ae-530b690b43da 2019-09-30T13:37:37.000000Z - V1.8.1 + V1.9.1 XX v1.0 diff --git a/103120/examples/response6.xml b/103120/examples/response6.xml new file mode 100644 index 0000000000000000000000000000000000000000..3656eeb094d4eece2047e86044e739f4628d1ad8 --- /dev/null +++ b/103120/examples/response6.xml @@ -0,0 +1,38 @@ + + +
+ + XX + ACTOR01 + + + XX + ACTOR02 + + 9964584e-c1a5-4ffa-b949-d9da504c4efb + 2021-06-25T12:00:01.000000Z + + V1.9.1 + XX + v1.0 + +
+ + + + + 0 + + 68c78910-c922-45f2-aeb3-017eb958bb05 + + + + 1 + + 4d8127db-e8bc-4a69-9378-457f0424ec2c + + + + + +
diff --git a/103120/schema/ts_103120_Core.xsd b/103120/schema/ts_103120_Core.xsd index da3bc564ad4567ecfede36c7e8d83940d7e6b6e6..af1674ddfe45821634245197ebb7491779493078 100644 --- a/103120/schema/ts_103120_Core.xsd +++ b/103120/schema/ts_103120_Core.xsd @@ -2,6 +2,7 @@ + @@ -16,6 +18,8 @@ + + diff --git a/testing/check_xsd.py b/testing/check_xsd.py index 1e5055fff2cc842bf530b2669e7d7466921ed940..5ae053eab34201f74606ff57e344d6e4a4a7b409 100644 --- a/testing/check_xsd.py +++ b/testing/check_xsd.py @@ -47,18 +47,23 @@ def ValidateSingleFile (schemaFile): return None -def ValidateXSDFiles (fileList): +def ValidateXSDFiles (fileList, dependencyList): if len(fileList) == 0: logging.info("No schema files provided") return {} + dependencyList = BuildSchemaDictonary(dependencyList) schemaLocations = BuildSchemaDictonary(fileList) + errors = {} logging.info("Schema validation:") for schemaFile in fileList: try: - schema = XMLSchema(schemaFile, locations = schemaLocations) + schema = XMLSchema(schemaFile, locations = schemaLocations, build=False) + for tuple in dependencyList: + schema.add_schema(tuple[1]) + schema.build() logging.info(schemaFile + ": OK") errors[schemaFile] = [] except (XMLSchemaParseError, XMLSchemaModelError) as ex: @@ -87,6 +92,40 @@ def ValidateInstanceDocuments (coreFile, supportingSchemas, instanceDocs): return errors +def isPathIgnorable (path): + if args.ignorepattern is None: + return False + s = str(path) + for p in args.ignorepattern: + if p in s: + logging.info(f"...(Path {s} can be ignored)") + return True + return False + +def expandPathToFiles (pathList, dontIgnoreThings=False): + if pathList is None: + return [] + includeFileList = [] + for path in pathList: + p = Path(path) + if not p.exists(): + logging.error(f"Include path {path} not found") + exit(1) + if p.is_dir(): + logging.debug(f"Expanding directory") + if (args.recurse): + files = p.rglob("*.xsd") + else: + files = p.glob("*.xsd") + for f in files: + if dontIgnoreThings or not isPathIgnorable(f): + logging.info(f"...Including {f}") + includeFileList.append(str(f.absolute())) + else: + if dontIgnoreThings or not isPathIgnorable(p): + logging.info(f"Including {p.absolute()}") + includeFileList.append(str(p.absolute())) + return includeFileList if __name__ == '__main__': parser = argparse.ArgumentParser() @@ -94,6 +133,8 @@ if __name__ == '__main__': parser.add_argument("-r", "--recurse", help="recurse into subdirectories", action="store_true") parser.add_argument("-s", "--skipbuild", help="skip the (lengthy) build checks", action="store_true") parser.add_argument("input", help="include a directory or file", action="append", nargs="+") + parser.add_argument("-i", "--ignorepattern", help="ignore files which contain [IGNOREPATTERN] in their path", nargs="+") + parser.add_argument("-d", "--dependency", help="Paths to load dependency schemas", nargs="+") args = parser.parse_args() logging.getLogger().setLevel(logging.WARNING) @@ -109,31 +150,20 @@ if __name__ == '__main__': logging.info ("Recursion enabled") if (args.skipbuild): logging.info("Skipping build checks") + if (args.skipbuild): + logging.info("Skipping build checks") + if (args.ignorepattern is not None and len(args.ignorepattern)) > 0: + logging.info(f"Ignoring patterns: {args.ignorepattern}") - includeFileList = [] - for path in args.input[0]: - p = Path(path) - if not p.exists(): - logging.error(f"Include path {path} not found") - exit(1) - if p.is_dir(): - logging.debug(f"Expanding directory") - if (args.recurse): - files = p.rglob("*.xsd") - else: - files = p.glob("*.xsd") - for f in files: - logging.info(f"...Including {f}") - includeFileList.append(str(f.absolute())) - else: - logging.info(f"Including {p.absolute()}") - includeFileList.append(str(p.absolute())) syntaxErrors = 0 print ("====================================================") print ("XSD syntax checks:") print ("----------------------------------------------------") + + includeFileList = expandPathToFiles(args.input[0]) + errors = {} for file in includeFileList: error = ValidateSingleFile(file) @@ -153,12 +183,14 @@ if __name__ == '__main__': if (args.skipbuild): print ("Skipping build checks") exit(0) + + dependencyList = expandPathToFiles(args.dependency, dontIgnoreThings=True) print ("") print ("====================================================") print ("XSD build checks (this may take a while):") print ("----------------------------------------------------") - results = ValidateXSDFiles(includeFileList) + results = ValidateXSDFiles(includeFileList, dependencyList) errorCount = 0 for fileName, errors in results.items(): if len(errors) > 0: diff --git a/testing/deps/xmldsig/xmldsig-core-schema.xsd b/testing/deps/xmldsig/xmldsig-core-schema.xsd new file mode 100644 index 0000000000000000000000000000000000000000..30a0b0a3b20c8fb959b2527a557eea6c662b0d30 --- /dev/null +++ b/testing/deps/xmldsig/xmldsig-core-schema.xsd @@ -0,0 +1,307 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +