Mercurial > pub > ModelGenerator
comparison data/model.xml @ 0:cbdada054b4a
Basic schemas for generating csharp internal dom from model definition
| author | cin |
|---|---|
| date | Wed, 21 Feb 2018 03:01:53 +0300 |
| parents | |
| children | 7f803979305f |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:cbdada054b4a |
|---|---|
| 1 <?xml version="1.0"?> | |
| 2 <package xmlns="http://implab.org/schemas/data-model.v1.xsd" | |
| 3 xmlns:f="http://implab.org/schemas/data-model/geo.v1.xsd" xmlns:clr="http://implab.org/schemas/data-model/dotnet.v1.xsd" | |
| 4 xmlns:sql="http://implab.org/schemas/data-model/sql.v1.xsd" xmlns:esri="http://geopallada.ru/schemas/data-model/esri.v1.xsd" | |
| 5 name="poisk-more" version="1.0" clr:namespace="Pallada.PoiskMore.Model"> | |
| 6 | |
| 7 <!-- Импортируем стандартные типы для строк, дат, чисел и т.п. --> | |
| 8 <import href="types.xml" /> | |
| 9 <import href="rccs.xml" /> | |
| 10 | |
| 11 <!-- определяем внешние типы, которые объявлены вне модели, но на них есть | |
| 12 ссылки в самой модели --> | |
| 13 <type name="IncidentData"> | |
| 14 <clr:type name="IncidentData" namespace="Pallada.Exchange.Sar" /> | |
| 15 </type> | |
| 16 | |
| 17 <entity name="BaseEntity"> | |
| 18 <!-- <extends type="MaritimeRcc"/> --> | |
| 19 </entity> | |
| 20 | |
| 21 <f:simpleFeature name="SarUnit"> | |
| 22 <description>Поисково-спасательная единица, характеризует | |
| 23 судно, | |
| 24 принимающее участие в ПСО | |
| 25 </description> | |
| 26 <f:geometry name="Location" type="Point"> | |
| 27 <description>Местоположение СРУ на момент начала ПСО</description> | |
| 28 <esri:geometry name="Shape" type="esriGeometryPoint" | |
| 29 mode="shape" /> | |
| 30 </f:geometry> | |
| 31 <primaryKey name="Id" type="uuid" /> | |
| 32 <hasA name="Region" type="Region"> | |
| 33 <description>Район проведения операции, в котором будет работать | |
| 34 данная единица. | |
| 35 </description> | |
| 36 <thisKey name="RegionId" matches="Id" /> | |
| 37 </hasA> | |
| 38 <hasA name="Operation" type="Operation" optional="true"> | |
| 39 <description>Идентификатор операции, используется для фильтрации | |
| 40 объектов на карте. | |
| 41 </description> | |
| 42 <thisKey name="OperationId"> | |
| 43 <esri:field name="OperId" mode="shape" /> | |
| 44 </thisKey> | |
| 45 </hasA> | |
| 46 <property name="Departure" type="datetime"> | |
| 47 <description>Дата отправления из исходной точки</description> | |
| 48 </property> | |
| 49 <property name="EstimatedArrival" type="datetime"> | |
| 50 <description>Ожидаемое время прибытия в конечную точку</description> | |
| 51 <esri:field name="Eta" mode="shape" /> | |
| 52 </property> | |
| 53 <property name="CrewFactor" type="datetime"> | |
| 54 <description>Коэффициент усталости экипажа</description> | |
| 55 <esri:field name="Fcrew" mode="shape" /> | |
| 56 </property> | |
| 57 </f:simpleFeature> | |
| 58 | |
| 59 <entity name="Operation"> | |
| 60 <sql:table name="Operation" /> | |
| 61 <primaryKey name="Id" type="uuid" /> | |
| 62 <property name="Name" type="string"> | |
| 63 <clr:type ref="string" /> | |
| 64 <description>Название операции</description> | |
| 65 </property> | |
| 66 <hasA name="Case" type="SarCase" optional="true"> | |
| 67 <description>Дело, с которым связана операция</description> | |
| 68 <thisKey name="CaseId" /> | |
| 69 <clr:lazy /> | |
| 70 <clr:association /> | |
| 71 </hasA> | |
| 72 <property name="Closed" type="bool"> | |
| 73 <description>Признак того, что операция завершена, т.е. ее нельзя | |
| 74 редактировать и она не отображается в списке операций | |
| 75 </description> | |
| 76 </property> | |
| 77 <property name="Date" type="datetime"> | |
| 78 <description>Дата начала операции</description> | |
| 79 </property> | |
| 80 <hasMany name="Regions" type="Region"> | |
| 81 <description>Список районов поиска</description> | |
| 82 <otherKey name="OperationId" /> | |
| 83 <clr:association> | |
| 84 <clr:type ref="listOf"> | |
| 85 <clr:type ref="Region" /> | |
| 86 </clr:type> | |
| 87 </clr:association> | |
| 88 </hasMany> | |
| 89 <property name="IncidentData" type="IncidentData"> | |
| 90 <description>Информация о происшествии на основании которой | |
| 91 строилась | |
| 92 данная операция | |
| 93 </description> | |
| 94 <sql:type name="text" /> | |
| 95 <xmlMember /> | |
| 96 </property> | |
| 97 <hasA name="Coordinator" type="MaritimeRcc" nullable="true"> | |
| 98 <thisKey name="CoordinatorId" /> | |
| 99 </hasA> | |
| 100 </entity> | |
| 101 | |
| 102 <entity name="SarCase"> | |
| 103 <description>Поисково-спасательное дело, собирает в себе информацию об | |
| 104 операциях, аварийном случае, поступающих данных.</description> | |
| 105 <sql:table name="SarCase" /> | |
| 106 <primaryKey name="Id" type="uuid" /> | |
| 107 <property name="CaseNo" type="string" sql:nullable="false"> | |
| 108 <description>Номер дела, которое объединяет несколько операций, | |
| 109 номера дел должны быть уникальными и не пустыми. | |
| 110 </description> | |
| 111 </property> | |
| 112 <hasMany name="Operations" type="Operation"> | |
| 113 <description>Операции выполненные в рамках текущего дела | |
| 114 </description> | |
| 115 <otherKey name="Case" /> | |
| 116 <clr:association> | |
| 117 <clr:type> | |
| 118 <arrayOf type="Operation"/> | |
| 119 </clr:type> | |
| 120 </clr:association> | |
| 121 </hasMany> | |
| 122 </entity> | |
| 123 | |
| 124 <entity name="Region"> | |
| 125 <description>Район проведение поисково-спасательной операции</description> | |
| 126 </entity> | |
| 127 | |
| 128 </package> |
