/[volute]/trunk/projects/dm/provenance/description/datamodel-links.tex
ViewVC logotype

Contents of /trunk/projects/dm/provenance/description/datamodel-links.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4380 - (show annotations)
Thu Sep 21 13:24:43 2017 UTC (3 years, 10 months ago) by mathieu.servillat
File MIME type: application/x-tex
File size: 9227 byte(s)
add \class and \attribute in model-links
1 %In this section we discuss how the Provenance Data Model interacts with
2 %classes and attributes from other VO data models (especially DatasetDM).
3 %(e.g. DatasetDM, SpectralDM (share some same classes), SimDM)
4 %and how provenance information can be stored.
5
6 The Provenance Data Model can be applied without making any links to other
7 IVOA data model classes. For example, when the data is not yet published, provenance information
8 can be stored already, but a DatasetDM-description for the data may not yet exist.
9 However, if there are data models implemented for the datasets, then it is
10 very useful to connect the classes and attributes of the other data models with provenance classes and attributes (if applicable), which we are going to discuss in this Section. These links help to avoid
11 unnecessary repetitions in the metadata of datasets, and also offer the possibility
12 to derive some basic provenance information from existing data model classes automatically, e.g. for creating provenance serializations from DatasetDM or SimDM metadata.
13
14
15 \subsection{Links with Dataset/ObsCore Model}
16 \label{sec:dataset-obscore}
17
18 \class{Entity} and \class{EntityDescription} in ProvenanceDM
19 are tightly linked to the \class{DataSet}-class in DatasetDM/ObsCoreDM, as well as to
20 \class{InputDataset} and \class{OutputDataSet} in the SimulationDM \citep{std:SimDM}.
21 Tables~\ref{tab:datasetmapping} and \ref{tab:datasetmapping2} map classes and attributes from DatasetDM
22 to concepts in ProvenanceDM.
23 %If the DatasetDM attributes are used in the serialization of an entity, they have the corresponding DatasetDM namespace.
24
25
26 %\begin{figure}[h]
27 %\centering
28 %\includegraphics[width=\textwidth]{../datamodel-diagrams/images/classes-relations-dms}
29 %\caption{Links between Agent and Party, Entity and Dataset.}
30 %\label{fig:class-relations-dm}
31 %\end{figure}
32 % --> a similar figure is already given in the sections on entity and agent.
33
34 \begin{table}[h]
35 \small
36 \tymax 0.5\textwidth
37 \begin{tabulary}{1.0\textwidth}{@{}Llp{5cm}@{}}
38 \toprule
39 \head{ProvenanceDM attribute} & \head{DatasetDM attribute} & \head{Comment}\\
40 \midrule
41 Entity.id & Curation.PublisherDID & unique identifier for the dataset assigned by the publisher\\
42 Entity.id & DataID.creatorDID & alternative id for the dataset given by the creator, could be used as Entity.id if no PublisherDID exists (yet)\\
43 Entity.name & DataID.title & title of the dataset\\
44 Entity.rights & Curation.Rights & access rights to the dataset; one of [...]\\
45 Entity.creationTime & DataID.date & date and time when the dataset was completely created\\
46 HadMember.collection & DataID.collection & link to the collection to which the dataset belongs\\
47 WasGeneratedBy.activityId & DataID.ObservationID & identifier to everything describing the observation\\
48 Agent & Curation.Contact & link to Agent with role contact\\
49 Agent.id & Curation.PublisherID & link to the publisher, i.e. to an Agent with role=``publisher''\\
50 Agent.name, \newline wasAttributedTo.role=\newline Creator & DataID.creator & name of agent creating the dataset\\
51 Agent.name, \newline wasAttributedTo.role=\newline Publisher & Curation.Publisher & name of the publisher\\
52 \bottomrule
53 \end{tabulary}
54 \caption[Mapping attributes from DatasetDM classes to attributes in ProvenanceDM]{Mapping attributes from DatasetDM classes to (optional) attributes in ProvenanceDM. This list is not complete.}
55 \label{tab:datasetmapping}
56 \end{table}
57
58 \begin{table}[h]
59 \small
60 \tymax 0.5\textwidth
61 \begin{tabulary}{1.0\textwidth}{@{}Llp{5cm}@{}}
62 \toprule
63 \head{ProvenanceDM class} & \head{DatasetDM attribute} & \head{Comment}\\
64 %\midrule
65 %\multicolumn{3}{c}{\bf Attributes specific to dataset entities}\\
66 \midrule
67 Entity & Curation.Date & release date of the dataset\\
68 Entity & Curation.Version & version of the dataset\\
69 Entity & Curation.Reference & link to publication\\
70 EntityDescription & DataProductType & the type of a dataproduct from DatasetDM can be used as attribute to EntityDescription\\
71 EntityDescription & DataProductSubType & subtype of a \mbox{dataproduct}/entity\\
72 EntityDescription & ObsDataset.calibLevel & (output) calibration level, integer between 0 and 3\\
73 \bottomrule
74 \end{tabulary}
75 \caption[Mapping attributes from DatasetDM classes to the ProvenanceDM classes]{Mapping attributes from DatasetDM classes to the ProvenanceDM classes to which they could be added. Attributes like \attribute{EntityDescription.calibLevel} are very specific to entities described with DatasetDM and thus are not included in this ProvenanceDM directly. This list is not complete.}
76 \label{tab:datasetmapping2}
77 \end{table}
78
79
80 \begin{figure}[h]
81 \centering
82 \includegraphics[width=\textwidth]{../datamodel-diagrams/images/agent-relations.pdf}
83 \caption[Agent in ProvenanceDM and Party in DatasetDM]{The relations between the \class{Agent} class within ProvenanceDM
84 (grey and yellow classes) with classes from the DatasetDM, party package (green).}
85 \label{fig:agent-relations}
86 \end{figure}
87
88 The \class{Agent} class, which is used for defining responsible persons and
89 organizations in ProvenanceDM, is very similar to the \class{Party} class in DatasetDM (and in SimDM). Its details are depicted in Figure~\ref{fig:agent-relations}.
90 The main difference between \class{Agent} and \class{Party} is that \class{Individual} and \class{Person} are subclasses in DatasetDM, whereas we just use the same class \emph{Agent} for both and distinguish between them using the \emph{Agent.type} attribute (which can have the value ``Individual'' or ``Organization''), which is closer to W3C's provenance data model.
91 % Which is closer to W3C ProvDM!
92
93
94 We imagine that services implementing both data models, \class{Dataset} and \class{ProvenanceDM} may just use \emph{one} class: either \class{Agent} or \class{Party}, enriched with all the necessary (project-specific) attributes. When delivering the data on request, the serialised versions can be adjusted to the corresponding notation.
95 Note that for Provenance queries using a ProvTAP service or for W3C compatible serializations, the name \class{Agent} for the responsible individuals/organizations is required.
96
97
98 \subsection{Links with Simulation Data Model}
99 In SimDM one also encounters a normalization similar to our separation of descriptions from
100 actual data instances and executions of processes: the SimDM class ``experiment''
101 is a type of \class{Activity} and its general, reusable description is called a ``protocol'',
102 which can be considered as a type of this model's \class{ActivityDescription}.
103 More direct mappings between classes and attributes of both models are given in Table~\ref{tab:simdmmapping}.
104
105 \begin{table}[h]
106 \small
107 \tymax 0.5\textwidth
108 \begin{tabulary}{1.0\textwidth}{@{}Llp{5cm}@{}}
109 \toprule
110 \head{ProvenanceDM} & \head{SimDM} & \head{Comment}\\
111 \midrule
112 Activity & Experiment & \\
113 Activity.name & Experiment.name & human readable name; name attribute in SimDM is inherited from Resource-class\\
114 Activity.endTime & Experiment.executionTime & end time of the execution of an experiment/activity \\
115 Activity.description & Experiment.protocol & reference to the protocol or ActivityDescription class \\
116 ActivityDescription & Protocol & \\
117 ActivityDescription.name & Protocol.name & human readable name\\
118 ActivityDescription.doculink & Protocol.referenceURL & reference to a webpage describing it\\
119 % add Protocol.code, Protocol.version?
120 Parameter & ParameterSetting & value of an (input) parameter\\
121 ParameterDescription & InputParameter & description of an (input) parameter\\
122 Agent & Party & responsible person or organization\\
123 Agent.name & Party.name & name of the agent \\
124 WasAssociatedWith & Contact & classes for linking to agent/party\\
125 WasAssociatedWith.role & Contact.role & role which the agent/party had for a certain experiment (activity); SimDM roles contain: \texttt{owner}, \texttt{creator}, \texttt{publisher}, \texttt{contributor}\\
126 WasAssociatedWith.agent & Contact.party & reference to the agent/party \\
127 Entity & DataObject & a dataset, which can be/refer to a collection\\
128
129 \bottomrule
130 \end{tabulary}
131 \caption[Mapping between classes and attributes from SimDM to classes/attributes in ProvenanceDM]{Mapping between classes and attributes from SimDM to classes/attributes in ProvenanceDM. This list is not complete.}
132 \label{tab:simdmmapping}
133 \end{table}
134
135 If simulations are already described with SimDM, this table can be used
136 to map from SimDM properties to ProvenanceDM, e.g. when serving serialized provenance
137 metadata via an additional ProvDAL interface or for storing provenance
138 metadata together with each released simulation dataset (e.g. in a VOTable).
139
140 % Remove this, because no further links to other data models are currently planned.
141 %\subsection{Further links to data models}
142 %More similarities and links to other data models will be detailed in future
143 %versions of this working draft.

msdemlei@ari.uni-heidelberg.de
ViewVC Help
Powered by ViewVC 1.1.26