Project

General

Profile

« Previous | Next » 

Revision 10480

schemas/VegCore/VegCore.ERD.mwb: georeferencing: added georeferenced_by

View differences:

schemas/VegCore/document.mwb.xml
10842 10842
                      <value type="string" key="oldName">input_place</value>
10843 10843
                      <link type="object" struct-name="GrtObject" key="owner">83dbd4da-f6e8-11e2-9cf1-080027bcf912</link>
10844 10844
                    </value>
10845
                    <value type="object" struct-name="db.mysql.Column" id="01b2e606-f6ed-11e2-9cf1-080027bcf912" struct-checksum="0x783b5183">
10846
                      <value type="int" key="autoIncrement">0</value>
10847
                      <value type="string" key="characterSetName"></value>
10848
                      <value _ptr_="0xcb0a200" type="list" content-type="object" content-struct-name="db.CheckConstraint" key="checks"/>
10849
                      <value type="string" key="collationName"></value>
10850
                      <value type="string" key="datatypeExplicitParams"></value>
10851
                      <value type="string" key="defaultValue"></value>
10852
                      <value type="int" key="defaultValueIsNull">1</value>
10853
                      <value _ptr_="0xcb0a758" type="list" content-type="string" key="flags"/>
10854
                      <value type="int" key="isNotNull">0</value>
10855
                      <value type="int" key="length">767</value>
10856
                      <value type="int" key="precision">-1</value>
10857
                      <value type="int" key="scale">-1</value>
10858
                      <link type="object" struct-name="db.SimpleDatatype" key="simpleType">com.mysql.rdbms.mysql.datatype.varbinary</link>
10859
                      <value type="string" key="comment"></value>
10860
                      <value type="string" key="name">georeferenced_by</value>
10861
                      <value type="string" key="oldName">georeferenced_by</value>
10862
                      <link type="object" struct-name="GrtObject" key="owner">83dbd4da-f6e8-11e2-9cf1-080027bcf912</link>
10863
                    </value>
10845 10864
                    <value type="object" struct-name="db.mysql.Column" id="83dbde1c-f6e8-11e2-9cf1-080027bcf912" struct-checksum="0x783b5183">
10846 10865
                      <value type="int" key="autoIncrement">0</value>
10847 10866
                      <value type="string" key="characterSetName"></value>
......
10849 10868
                      <value type="string" key="collationName"></value>
10850 10869
                      <value type="string" key="datatypeExplicitParams"></value>
10851 10870
                      <value type="string" key="defaultValue"></value>
10852
                      <value type="int" key="defaultValueIsNull">0</value>
10871
                      <value type="int" key="defaultValueIsNull">1</value>
10853 10872
                      <value _ptr_="0xbd1ddb0" type="list" content-type="string" key="flags"/>
10854 10873
                      <value type="int" key="isNotNull">0</value>
10855 10874
                      <value type="int" key="length">767</value>
......
10867 10886
                  <value type="string" key="defaultCollationName">utf8_bin</value>
10868 10887
                  <value type="int" key="delayKeyWrite">0</value>
10869 10888
                  <value _ptr_="0xbd5c9d8" type="list" content-type="object" content-struct-name="db.mysql.ForeignKey" key="foreignKeys">
10870
                    <value type="object" struct-name="db.mysql.ForeignKey" id="83dbe060-f6e8-11e2-9cf1-080027bcf912" struct-checksum="0x70a8fc40">
10871
                      <link type="object" struct-name="db.mysql.Table" key="referencedTable">be8cd56e-a6e0-11e2-95e9-080027bcf912</link>
10872
                      <value _ptr_="0xbd577b8" type="list" content-type="object" content-struct-name="db.Column" key="columns">
10873
                        <link type="object">83dbd8ae-f6e8-11e2-9cf1-080027bcf912</link>
10889
                    <value type="object" struct-name="db.mysql.ForeignKey" id="1b4ab2ae-f6ea-11e2-9cf1-080027bcf912" struct-checksum="0x70a8fc40">
10890
                      <link type="object" struct-name="db.mysql.Table" key="referencedTable">15161a3e-f6e2-11e2-b6d1-080027bcf912</link>
10891
                      <value _ptr_="0xc60b560" type="list" content-type="object" content-struct-name="db.Column" key="columns">
10892
                        <link type="object">83dbde1c-f6e8-11e2-9cf1-080027bcf912</link>
10874 10893
                      </value>
10875 10894
                      <value type="int" key="deferability">0</value>
10876 10895
                      <value type="string" key="deleteRule">CASCADE</value>
10877
                      <value type="int" key="mandatory">0</value>
10878
                      <value type="int" key="many">0</value>
10896
                      <link type="object" struct-name="db.Index" key="index">1b4ac44c-f6ea-11e2-9cf1-080027bcf912</link>
10897
                      <value type="int" key="mandatory">1</value>
10898
                      <value type="int" key="many">1</value>
10879 10899
                      <value type="int" key="modelOnly">0</value>
10880 10900
                      <link type="object" struct-name="db.Table" key="owner">83dbd4da-f6e8-11e2-9cf1-080027bcf912</link>
10881
                      <value _ptr_="0xbd5b680" type="list" content-type="object" content-struct-name="db.Column" key="referencedColumns">
10882
                        <link type="object">be8cd7b2-a6e0-11e2-95e9-080027bcf912</link>
10901
                      <value _ptr_="0xbe0af88" type="list" content-type="object" content-struct-name="db.Column" key="referencedColumns">
10902
                        <link type="object">15162024-f6e2-11e2-b6d1-080027bcf912</link>
10883 10903
                      </value>
10884
                      <value type="int" key="referencedMandatory">1</value>
10904
                      <value type="int" key="referencedMandatory">0</value>
10885 10905
                      <value type="string" key="updateRule">CASCADE</value>
10886 10906
                      <value type="string" key="comment"></value>
10887
                      <value type="string" key="name">fk_geovalidation_record100</value>
10888
                      <value type="string" key="oldName">fk_geovalidation_record100</value>
10907
                      <value type="string" key="name">fk_georeferencing_geoplace1</value>
10908
                      <value type="string" key="oldName">fk_georeferencing_geoplace1</value>
10889 10909
                    </value>
10910
                    <value type="object" struct-name="db.mysql.ForeignKey" id="01b2e3fe-f6ed-11e2-9cf1-080027bcf912" struct-checksum="0x70a8fc40">
10911
                      <link type="object" struct-name="db.mysql.Table" key="referencedTable">4001ec92-f678-11e2-9716-080027bcf912</link>
10912
                      <value _ptr_="0xc541620" type="list" content-type="object" content-struct-name="db.Column" key="columns">
10913
                        <link type="object">01b2e606-f6ed-11e2-9cf1-080027bcf912</link>
10914
                      </value>
10915
                      <value type="int" key="deferability">0</value>
10916
                      <value type="string" key="deleteRule">CASCADE</value>
10917
                      <link type="object" struct-name="db.Index" key="index">01b2fe70-f6ed-11e2-9cf1-080027bcf912</link>
10918
                      <value type="int" key="mandatory">1</value>
10919
                      <value type="int" key="many">1</value>
10920
                      <value type="int" key="modelOnly">0</value>
10921
                      <link type="object" struct-name="db.Table" key="owner">83dbd4da-f6e8-11e2-9cf1-080027bcf912</link>
10922
                      <value _ptr_="0xc571638" type="list" content-type="object" content-struct-name="db.Column" key="referencedColumns">
10923
                        <link type="object">4001ef9e-f678-11e2-9716-080027bcf912</link>
10924
                      </value>
10925
                      <value type="int" key="referencedMandatory">0</value>
10926
                      <value type="string" key="updateRule">CASCADE</value>
10927
                      <value type="string" key="comment"></value>
10928
                      <value type="string" key="name">fk_georeferencing_party_list1</value>
10929
                      <value type="string" key="oldName">fk_georeferencing_party_list1</value>
10930
                    </value>
10890 10931
                    <value type="object" struct-name="db.mysql.ForeignKey" id="dbe10c36-f6e8-11e2-9cf1-080027bcf912" struct-checksum="0x70a8fc40">
10891 10932
                      <link type="object" struct-name="db.mysql.Table" key="referencedTable">c6723d8a-a7a0-11e2-b667-080027bcf912</link>
10892 10933
                      <value _ptr_="0xc325bc8" type="list" content-type="object" content-struct-name="db.Column" key="columns">
......
10908 10949
                      <value type="string" key="name">fk_georef_place1</value>
10909 10950
                      <value type="string" key="oldName">fk_georef_place1</value>
10910 10951
                    </value>
10911
                    <value type="object" struct-name="db.mysql.ForeignKey" id="1b4ab2ae-f6ea-11e2-9cf1-080027bcf912" struct-checksum="0x70a8fc40">
10912
                      <link type="object" struct-name="db.mysql.Table" key="referencedTable">15161a3e-f6e2-11e2-b6d1-080027bcf912</link>
10913
                      <value _ptr_="0xc60b560" type="list" content-type="object" content-struct-name="db.Column" key="columns">
10914
                        <link type="object">83dbde1c-f6e8-11e2-9cf1-080027bcf912</link>
10952
                    <value type="object" struct-name="db.mysql.ForeignKey" id="83dbe060-f6e8-11e2-9cf1-080027bcf912" struct-checksum="0x70a8fc40">
10953
                      <link type="object" struct-name="db.mysql.Table" key="referencedTable">be8cd56e-a6e0-11e2-95e9-080027bcf912</link>
10954
                      <value _ptr_="0xbd577b8" type="list" content-type="object" content-struct-name="db.Column" key="columns">
10955
                        <link type="object">83dbd8ae-f6e8-11e2-9cf1-080027bcf912</link>
10915 10956
                      </value>
10916 10957
                      <value type="int" key="deferability">0</value>
10917 10958
                      <value type="string" key="deleteRule">CASCADE</value>
10918
                      <link type="object" struct-name="db.Index" key="index">1b4ac44c-f6ea-11e2-9cf1-080027bcf912</link>
10919
                      <value type="int" key="mandatory">1</value>
10920
                      <value type="int" key="many">1</value>
10959
                      <value type="int" key="mandatory">0</value>
10960
                      <value type="int" key="many">0</value>
10921 10961
                      <value type="int" key="modelOnly">0</value>
10922 10962
                      <link type="object" struct-name="db.Table" key="owner">83dbd4da-f6e8-11e2-9cf1-080027bcf912</link>
10923
                      <value _ptr_="0xbe0af88" type="list" content-type="object" content-struct-name="db.Column" key="referencedColumns">
10924
                        <link type="object">15162024-f6e2-11e2-b6d1-080027bcf912</link>
10963
                      <value _ptr_="0xbd5b680" type="list" content-type="object" content-struct-name="db.Column" key="referencedColumns">
10964
                        <link type="object">be8cd7b2-a6e0-11e2-95e9-080027bcf912</link>
10925 10965
                      </value>
10926
                      <value type="int" key="referencedMandatory">0</value>
10966
                      <value type="int" key="referencedMandatory">1</value>
10927 10967
                      <value type="string" key="updateRule">CASCADE</value>
10928 10968
                      <value type="string" key="comment"></value>
10929
                      <value type="string" key="name">fk_georeferencing_geoplace1</value>
10930
                      <value type="string" key="oldName">fk_georeferencing_geoplace1</value>
10969
                      <value type="string" key="name">fk_geovalidation_record100</value>
10970
                      <value type="string" key="oldName">fk_geovalidation_record100</value>
10931 10971
                    </value>
10932 10972
                  </value>
10933 10973
                  <value _ptr_="0xbd5c888" type="list" content-type="object" content-struct-name="db.mysql.Index" key="indices">
......
11000 11040
                      <value type="string" key="oldName">fk_georeferencing_geoplace1_idx</value>
11001 11041
                      <link type="object" struct-name="GrtObject" key="owner">83dbd4da-f6e8-11e2-9cf1-080027bcf912</link>
11002 11042
                    </value>
11043
                    <value type="object" struct-name="db.mysql.Index" id="01b2fe70-f6ed-11e2-9cf1-080027bcf912" struct-checksum="0x309b847a">
11044
                      <value _ptr_="0xc7f6f40" type="list" content-type="object" content-struct-name="db.mysql.IndexColumn" key="columns">
11045
                        <value type="object" struct-name="db.mysql.IndexColumn" id="01b3001e-f6ed-11e2-9cf1-080027bcf912" struct-checksum="0x62630b3c">
11046
                          <value type="int" key="columnLength">0</value>
11047
                          <value type="string" key="comment"></value>
11048
                          <value type="int" key="descend">0</value>
11049
                          <link type="object" struct-name="db.Column" key="referencedColumn">01b2e606-f6ed-11e2-9cf1-080027bcf912</link>
11050
                          <value type="string" key="name"></value>
11051
                          <link type="object" struct-name="GrtObject" key="owner">01b2fe70-f6ed-11e2-9cf1-080027bcf912</link>
11052
                        </value>
11053
                      </value>
11054
                      <value type="string" key="indexKind"></value>
11055
                      <value type="int" key="keyBlockSize">0</value>
11056
                      <value type="string" key="withParser"></value>
11057
                      <value type="string" key="comment"></value>
11058
                      <value type="int" key="deferability">0</value>
11059
                      <value type="string" key="indexType">INDEX</value>
11060
                      <value type="int" key="isPrimary">0</value>
11061
                      <value type="string" key="name">fk_georeferencing_party_list1_idx</value>
11062
                      <value type="int" key="unique">0</value>
11063
                      <value type="string" key="oldName">fk_georeferencing_party_list1_idx</value>
11064
                      <link type="object" struct-name="GrtObject" key="owner">83dbd4da-f6e8-11e2-9cf1-080027bcf912</link>
11065
                    </value>
11003 11066
                  </value>
11004 11067
                  <value type="string" key="maxRows"></value>
11005 11068
                  <value type="string" key="mergeInsert"></value>
......
11031 11094
                  <value type="int" key="commentedOut">0</value>
11032 11095
                  <value type="string" key="createDate">2013-04-16 14:58</value>
11033 11096
                  <value _ptr_="0xbd40a58" type="dict" key="customData"/>
11034
                  <value type="string" key="lastChangeDate">2013-07-27 11:44</value>
11097
                  <value type="string" key="lastChangeDate">2013-07-27 11:48</value>
11035 11098
                  <value type="int" key="modelOnly">0</value>
11036 11099
                  <value type="string" key="name">georeferencing</value>
11037 11100
                  <link type="object" struct-name="GrtNamedObject" key="owner">be8cb246-a6e0-11e2-95e9-080027bcf912</link>
......
13478 13541
                <value type="real" key="extraCaptionXOffs">0.e+00</value>
13479 13542
                <value type="real" key="extraCaptionYOffs">0.e+00</value>
13480 13543
                <link type="object" struct-name="db.ForeignKey" key="foreignKey">1b4ab2ae-f6ea-11e2-9cf1-080027bcf912</link>
13481
                <value type="real" key="middleSegmentOffset">-6.69220780197302929082070477306842803955078125e+01</value>
13544
                <value type="real" key="middleSegmentOffset">-6.2152476756478108654846437275409698486328125e+01</value>
13482 13545
                <value type="real" key="startCaptionXOffs">0.e+00</value>
13483 13546
                <value type="real" key="startCaptionYOffs">0.e+00</value>
13484 13547
                <value type="int" key="drawSplit">0</value>
......
13488 13551
                <value type="int" key="visible">1</value>
13489 13552
                <value type="string" key="name"></value>
13490 13553
              </value>
13554
              <value type="object" struct-name="workbench.physical.Connection" id="01b30690-f6ed-11e2-9cf1-080027bcf912" struct-checksum="0x9baebc92">
13555
                <value type="string" key="caption">fk_georeferencing_party_list1</value>
13556
                <value type="real" key="captionXOffs">0.e+00</value>
13557
                <value type="real" key="captionYOffs">0.e+00</value>
13558
                <value type="string" key="comment"></value>
13559
                <value type="real" key="endCaptionXOffs">0.e+00</value>
13560
                <value type="real" key="endCaptionYOffs">0.e+00</value>
13561
                <value type="string" key="extraCaption"></value>
13562
                <value type="real" key="extraCaptionXOffs">0.e+00</value>
13563
                <value type="real" key="extraCaptionYOffs">0.e+00</value>
13564
                <link type="object" struct-name="db.ForeignKey" key="foreignKey">01b2e3fe-f6ed-11e2-9cf1-080027bcf912</link>
13565
                <value type="real" key="middleSegmentOffset">0.e+00</value>
13566
                <value type="real" key="startCaptionXOffs">0.e+00</value>
13567
                <value type="real" key="startCaptionYOffs">0.e+00</value>
13568
                <value type="int" key="drawSplit">1</value>
13569
                <link type="object" struct-name="model.Figure" key="endFigure">40021096-f678-11e2-9716-080027bcf912</link>
13570
                <link type="object" struct-name="model.Figure" key="startFigure">83dc3f6a-f6e8-11e2-9cf1-080027bcf912</link>
13571
                <link type="object" struct-name="model.Diagram" key="owner">3915EB3C-D507-4518-BE3A-63A8D8DD4471</link>
13572
                <value type="int" key="visible">1</value>
13573
                <value type="string" key="name"></value>
13574
              </value>
13491 13575
            </value>
13492 13576
            <value type="string" key="description"></value>
13493 13577
            <value _ptr_="0xb6a2810" type="list" content-type="object" content-struct-name="model.Figure" key="figures">
......
14801 14885
                <value type="int" key="triggersExpanded">0</value>
14802 14886
                <value type="string" key="color">#ffcc33</value>
14803 14887
                <value type="int" key="expanded">1</value>
14804
                <value type="real" key="height">1.e+02</value>
14888
                <value type="real" key="height">1.23e+02</value>
14805 14889
                <link type="object" struct-name="model.Layer" key="layer">88F9E582-B992-43CC-B7D6-A42E190DCB13</link>
14806
                <value type="real" key="left">6.68e+02</value>
14890
                <value type="real" key="left">6.7e+02</value>
14807 14891
                <value type="int" key="locked">0</value>
14808 14892
                <value type="int" key="manualSizing">0</value>
14809
                <value type="real" key="top">3.52e+02</value>
14893
                <value type="real" key="top">3.4e+02</value>
14810 14894
                <value type="real" key="width">1.36e+02</value>
14811 14895
                <link type="object" struct-name="model.Diagram" key="owner">3915EB3C-D507-4518-BE3A-63A8D8DD4471</link>
14812 14896
                <value type="int" key="visible">1</value>
......
14939 15023
              <value type="int" key="visible">1</value>
14940 15024
              <value type="string" key="name"></value>
14941 15025
            </value>
14942
            <value _ptr_="0xb6a28e8" type="list" content-type="object" content-struct-name="model.Object" key="selection">
14943
              <link type="object">83dc3f6a-f6e8-11e2-9cf1-080027bcf912</link>
14944
            </value>
15026
            <value _ptr_="0xb6a28e8" type="list" content-type="object" content-struct-name="model.Object" key="selection"/>
14945 15027
            <value type="int" key="updateBlocked">0</value>
14946 15028
            <value type="real" key="width">1.6215e+03</value>
14947 15029
            <value type="real" key="x">0.e+00</value>
......
14954 15036
        <link type="object" struct-name="db.mgmt.Rdbms" key="rdbms">com.mysql.rdbms.mysql</link>
14955 15037
        <value _ptr_="0xb60f998" type="list" content-type="object" content-struct-name="db.Script" key="scripts"/>
14956 15038
        <value _ptr_="0xad7e9e8" type="dict" key="syncProfiles">
14957
          <value type="object" struct-name="db.mgmt.SyncProfile" id="daf82e50-f6eb-11e2-9cf1-080027bcf912" struct-checksum="0xc64972c2" key="">
14958
            <value _ptr_="0xcb4d4d0" type="dict" key="lastKnownDBNames">
15039
          <value type="object" struct-name="db.mgmt.SyncProfile" id="7c0aac18-f6ed-11e2-9cf1-080027bcf912" struct-checksum="0xc64972c2" key="">
15040
            <value _ptr_="0xc8ce4c0" type="dict" key="lastKnownDBNames">
15041
              <value type="string" key="01b2e3fe-f6ed-11e2-9cf1-080027bcf912">fk_georeferencing_party_list1</value>
15042
              <value type="string" key="01b2e606-f6ed-11e2-9cf1-080027bcf912">georeferenced_by</value>
15043
              <value type="string" key="01b2fe70-f6ed-11e2-9cf1-080027bcf912">fk_georeferencing_party_list1_idx</value>
14959 15044
              <value type="string" key="049df920-a91b-11e2-bdec-080027bcf912">organization</value>
14960 15045
              <value type="string" key="049dfc5e-a91b-11e2-bdec-080027bcf912">id</value>
14961 15046
              <value type="string" key="049dff1a-a91b-11e2-bdec-080027bcf912">info</value>
......
15503 15588
    <value type="object" struct-name="app.DocumentInfo" id="BEE3982F-55A1-4B2C-914A-CD6953803AB9" struct-checksum="0xbba780b8" key="info">
15504 15589
      <value type="string" key="author">Aaron Marcuse-Kubitza</value>
15505 15590
      <value type="string" key="caption">New Model</value>
15506
      <value type="string" key="dateChanged">2013-07-27 11:45</value>
15591
      <value type="string" key="dateChanged">2013-07-27 11:51</value>
15507 15592
      <value type="string" key="dateCreated">2012-01-19 14:06</value>
15508 15593
      <value type="string" key="description"></value>
15509 15594
      <value type="string" key="project">Name of the project</value>
schemas/VegCore/VegCore.my.sql
261 261
CREATE TABLE `georeferencing` (
262 262
  `id` varbinary(767) NOT NULL,
263 263
  `input_place` varbinary(767) NOT NULL,
264
  `georeferenced_place` varbinary(767) NOT NULL,
264
  `georeferenced_by` varbinary(767) DEFAULT NULL,
265
  `georeferenced_place` varbinary(767) DEFAULT NULL,
265 266
  PRIMARY KEY (`id`),
266 267
  KEY `fk_georef_place1_idx` (`input_place`),
267 268
  KEY `fk_georeferencing_geoplace1_idx` (`georeferenced_place`),
269
  KEY `fk_georeferencing_party_list1_idx` (`georeferenced_by`),
268 270
  CONSTRAINT `fk_georeferencing_geoplace1` FOREIGN KEY (`georeferenced_place`) REFERENCES `geoplace` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
271
  CONSTRAINT `fk_georeferencing_party_list1` FOREIGN KEY (`georeferenced_by`) REFERENCES `party_list` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
269 272
  CONSTRAINT `fk_georef_place1` FOREIGN KEY (`input_place`) REFERENCES `place` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
270 273
  CONSTRAINT `fk_geovalidation_record100` FOREIGN KEY (`id`) REFERENCES `record` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
271 274
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
schemas/VegCore/VegCore.pg.sql
263 263
CREATE TABLE "georeferencing" (
264 264
  "id" text NOT NULL,
265 265
  "input_place" text NOT NULL,
266
  "georeferenced_place" text NOT NULL,
266
  "georeferenced_by" text DEFAULT NULL,
267
  "georeferenced_place" text DEFAULT NULL,
267 268
  PRIMARY KEY ("id"),
268 269
  /*KEY "fk_georef_place1_idx" ("input_place")*/CHECK (true),
269 270
  /*KEY "fk_georeferencing_geoplace1_idx" ("georeferenced_place")*/CHECK (true),
271
  /*KEY "fk_georeferencing_party_list1_idx" ("georeferenced_by")*/CHECK (true),
270 272
  /*CONSTRAINT "fk_georeferencing_geoplace1" FOREIGN KEY ("georeferenced_place") REFERENCES "geoplace" ("id") ON DELETE CASCADE ON UPDATE CASCADE*/CHECK (true),
273
  /*CONSTRAINT "fk_georeferencing_party_list1" FOREIGN KEY ("georeferenced_by") REFERENCES "party_list" ("id") ON DELETE CASCADE ON UPDATE CASCADE*/CHECK (true),
271 274
  /*CONSTRAINT "fk_georef_place1" FOREIGN KEY ("input_place") REFERENCES "place" ("id") ON DELETE CASCADE ON UPDATE CASCADE*/CHECK (true),
272 275
  /*CONSTRAINT "fk_geovalidation_record100" FOREIGN KEY ("id") REFERENCES "record" ("id") ON DELETE CASCADE ON UPDATE CASCADE*/CHECK (true)
273 276
) /*ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin*/;

Also available in: Unified diff