Commit 5a43e4bd authored by Alexandre Delanoë's avatar Alexandre Delanoë

[REFACT] uniforming hyperdata fields name

parent 51641162
...@@ -89,16 +89,16 @@ wosToCorpus :: Int -> FilePath -> IO ([(Int,Text)]) ...@@ -89,16 +89,16 @@ wosToCorpus :: Int -> FilePath -> IO ([(Int,Text)])
wosToCorpus limit path = do wosToCorpus limit path = do
files <- getFilesFromPath path files <- getFilesFromPath path
take limit take limit
<$> map (\d -> let date' = fromJust $ _hyperdataDocument_publication_year d <$> map (\d -> let date' = fromJust $ _hd_publication_year d
title = fromJust $ _hyperdataDocument_title d title = fromJust $ _hd_title d
abstr = if (isJust $ _hyperdataDocument_abstract d) abstr = if (isJust $ _hd_abstract d)
then fromJust $ _hyperdataDocument_abstract d then fromJust $ _hd_abstract d
else "" else ""
in (date', title <> " " <> abstr)) in (date', title <> " " <> abstr))
<$> concat <$> concat
<$> mapConcurrently (\file -> <$> mapConcurrently (\file ->
filter (\d -> (isJust $ _hyperdataDocument_publication_year d) filter (\d -> (isJust $ _hd_publication_year d)
&& (isJust $ _hyperdataDocument_title d)) && (isJust $ _hd_title d))
<$> parseFile WOS (path <> file) ) files <$> parseFile WOS (path <> file) ) files
......
...@@ -132,11 +132,11 @@ csvToCorpus limit csv = DV.toList ...@@ -132,11 +132,11 @@ csvToCorpus limit csv = DV.toList
-- | To transform a Wos nfile into a readable corpus -- | To transform a Wos nfile into a readable corpus
wosToCorpus :: Limit -> CorpusPath -> IO ([(Int,Text)]) wosToCorpus :: Limit -> CorpusPath -> IO ([(Int,Text)])
wosToCorpus limit path = DL.take limit wosToCorpus limit path = DL.take limit
. map (\d -> ((fromJust $_hyperdataDocument_publication_year d) . map (\d -> ((fromJust $_hd_publication_year d)
,(fromJust $_hyperdataDocument_title d) <> " " <> (fromJust $_hyperdataDocument_abstract d))) ,(fromJust $_hd_title d) <> " " <> (fromJust $_hd_abstract d)))
. filter (\d -> (isJust $_hyperdataDocument_publication_year d) . filter (\d -> (isJust $_hd_publication_year d)
&& (isJust $_hyperdataDocument_title d) && (isJust $_hd_title d)
&& (isJust $_hyperdataDocument_abstract d)) && (isJust $_hd_abstract d))
. concat . concat
<$> mapConcurrently (\idx -> parseFile WOS (path <> show(idx) <> ".txt")) [1..20] <$> mapConcurrently (\idx -> parseFile WOS (path <> show(idx) <> ".txt")) [1..20]
......
...@@ -118,7 +118,7 @@ getCorpus cId lId nt' = do ...@@ -118,7 +118,7 @@ getCorpus cId lId nt' = do
) ns ngs ) ns ngs
where where
ng_hash b = sha $ List.foldl (\x y -> x<>y) "" $ List.sort $ Set.toList b ng_hash b = sha $ List.foldl (\x y -> x<>y) "" $ List.sort $ Set.toList b
d_hash a b = sha $ (fromMaybe "" (_hyperdataDocument_uniqId $ _node_hyperdata a)) d_hash a b = sha $ (fromMaybe "" (_hd_uniqId $ _node_hyperdata a))
<> (ng_hash b) <> (ng_hash b)
pure $ Corpus (Map.elems r) (sha $ List.foldl (\a b -> a<>b) "" pure $ Corpus (Map.elems r) (sha $ List.foldl (\a b -> a<>b) ""
......
...@@ -32,7 +32,7 @@ class UniqId a ...@@ -32,7 +32,7 @@ class UniqId a
instance UniqId HyperdataDocument instance UniqId HyperdataDocument
where where
uniqId = hyperdataDocument_uniqId uniqId = hd_uniqId
instance UniqId HyperdataContact instance UniqId HyperdataContact
where where
......
...@@ -347,8 +347,8 @@ instance ExtractNgramsT HyperdataContact ...@@ -347,8 +347,8 @@ instance ExtractNgramsT HyperdataContact
instance HasText HyperdataDocument instance HasText HyperdataDocument
where where
hasText h = catMaybes [ _hyperdataDocument_title h hasText h = catMaybes [ _hd_title h
, _hyperdataDocument_abstract h , _hd_abstract h
] ]
instance ExtractNgramsT HyperdataDocument instance ExtractNgramsT HyperdataDocument
...@@ -364,15 +364,15 @@ instance ExtractNgramsT HyperdataDocument ...@@ -364,15 +364,15 @@ instance ExtractNgramsT HyperdataDocument
extractNgramsT' lang' doc = do extractNgramsT' lang' doc = do
let source = text2ngrams let source = text2ngrams
$ maybe "Nothing" identity $ maybe "Nothing" identity
$ _hyperdataDocument_source doc $ _hd_source doc
institutes = map text2ngrams institutes = map text2ngrams
$ maybe ["Nothing"] (map toSchoolName . (splitOn ", ")) $ maybe ["Nothing"] (map toSchoolName . (splitOn ", "))
$ _hyperdataDocument_institutes doc $ _hd_institutes doc
authors = map text2ngrams authors = map text2ngrams
$ maybe ["Nothing"] (splitOn ", ") $ maybe ["Nothing"] (splitOn ", ")
$ _hyperdataDocument_authors doc $ _hd_authors doc
terms' <- map text2ngrams terms' <- map text2ngrams
<$> map (intercalate " " . _terms_label) <$> map (intercalate " " . _terms_label)
......
...@@ -76,8 +76,8 @@ fav2bool ft = if (==) ft IsFav then True else False ...@@ -76,8 +76,8 @@ fav2bool ft = if (==) ft IsFav then True else False
text :: FacetDoc -> Text text :: FacetDoc -> Text
text (FacetDoc _ _ _ h _ _) = title <> "" <> Text.take 100 abstr text (FacetDoc _ _ _ h _ _) = title <> "" <> Text.take 100 abstr
where where
title = maybe "" identity (_hyperdataDocument_title h) title = maybe "" identity (_hd_title h)
abstr = maybe "" identity (_hyperdataDocument_abstract h) abstr = maybe "" identity (_hd_abstract h)
--------------------------------------------------------------------------- ---------------------------------------------------------------------------
......
...@@ -17,6 +17,7 @@ module Gargantext.Database.Admin.Types.Hyperdata ...@@ -17,6 +17,7 @@ module Gargantext.Database.Admin.Types.Hyperdata
, module Gargantext.Database.Admin.Types.Hyperdata.Dashboard , module Gargantext.Database.Admin.Types.Hyperdata.Dashboard
, module Gargantext.Database.Admin.Types.Hyperdata.Document , module Gargantext.Database.Admin.Types.Hyperdata.Document
, module Gargantext.Database.Admin.Types.Hyperdata.Folder , module Gargantext.Database.Admin.Types.Hyperdata.Folder
, module Gargantext.Database.Admin.Types.Hyperdata.Frame
, module Gargantext.Database.Admin.Types.Hyperdata.List , module Gargantext.Database.Admin.Types.Hyperdata.List
, module Gargantext.Database.Admin.Types.Hyperdata.Model , module Gargantext.Database.Admin.Types.Hyperdata.Model
, module Gargantext.Database.Admin.Types.Hyperdata.Prelude , module Gargantext.Database.Admin.Types.Hyperdata.Prelude
...@@ -30,6 +31,7 @@ import Gargantext.Database.Admin.Types.Hyperdata.Corpus ...@@ -30,6 +31,7 @@ import Gargantext.Database.Admin.Types.Hyperdata.Corpus
import Gargantext.Database.Admin.Types.Hyperdata.Dashboard import Gargantext.Database.Admin.Types.Hyperdata.Dashboard
import Gargantext.Database.Admin.Types.Hyperdata.Document import Gargantext.Database.Admin.Types.Hyperdata.Document
import Gargantext.Database.Admin.Types.Hyperdata.Folder import Gargantext.Database.Admin.Types.Hyperdata.Folder
import Gargantext.Database.Admin.Types.Hyperdata.Frame
import Gargantext.Database.Admin.Types.Hyperdata.List import Gargantext.Database.Admin.Types.Hyperdata.List
import Gargantext.Database.Admin.Types.Hyperdata.Model import Gargantext.Database.Admin.Types.Hyperdata.Model
import Gargantext.Database.Admin.Types.Hyperdata.Prelude (Hyperdata) import Gargantext.Database.Admin.Types.Hyperdata.Prelude (Hyperdata)
......
...@@ -57,7 +57,6 @@ instance ToSchema CorpusField where ...@@ -57,7 +57,6 @@ instance ToSchema CorpusField where
& mapped.schema.description ?~ "CorpusField" & mapped.schema.description ?~ "CorpusField"
& mapped.schema.example ?~ toJSON defaultCorpusField & mapped.schema.example ?~ toJSON defaultCorpusField
------------------------------------------------------------------------ ------------------------------------------------------------------------
data HyperdataField a = data HyperdataField a =
HyperdataField { _hf_type :: !CodeType HyperdataField { _hf_type :: !CodeType
...@@ -89,84 +88,57 @@ instance (Typeable a, ToSchema a) => ToSchema (HyperdataField a) where ...@@ -89,84 +88,57 @@ instance (Typeable a, ToSchema a) => ToSchema (HyperdataField a) where
data HyperdataCorpus = data HyperdataCorpus =
HyperdataCorpus { _hc_fields :: ![HyperdataField CorpusField] } HyperdataCorpus { _hc_fields :: ![HyperdataField CorpusField] }
deriving (Generic) deriving (Generic)
------------------------------------------------------------------------
-- Instances
------------------------------------------------------------------------
instance Hyperdata HyperdataCorpus
$(deriveJSON (unPrefix "_hc_") ''HyperdataCorpus)
$(makeLenses ''HyperdataCorpus)
------------------------------------------------------------------------
data HyperdataFrame =
HyperdataFrame { base :: !Text
, frame_id :: !Text
}
deriving (Generic)
$(deriveJSON (unPrefix "") ''HyperdataFrame)
$(makeLenses ''HyperdataFrame)
instance Hyperdata HyperdataFrame
------------------------------------------------------------------------
corpusExample :: ByteString
corpusExample = "" -- TODO
defaultCorpus :: HyperdataCorpus
defaultCorpus = HyperdataCorpus [
HyperdataField JSON "Mandatory fields" (JsonField "Title" "Descr" "Bool query" "Authors")
, HyperdataField Markdown "Optional Text" (MarkdownField "# title\n## subtitle")
]
hyperdataCorpus :: HyperdataCorpus
hyperdataCorpus = case decode corpusExample of
Just hp -> hp
Nothing -> defaultCorpus
defaultHyperdataCorpus :: HyperdataCorpus defaultHyperdataCorpus :: HyperdataCorpus
defaultHyperdataCorpus = defaultCorpus defaultHyperdataCorpus =
HyperdataCorpus [ HyperdataField JSON
instance Arbitrary HyperdataCorpus where "Mandatory fields"
arbitrary = pure hyperdataCorpus -- TODO (JsonField "Title" "Descr" "Bool query" "Authors")
, HyperdataField Markdown
"Optional Text"
(MarkdownField "# title\n## subtitle")
]
------------------------------------------------------------------------ ------------------------------------------------------------------------
------------------------------------------------------------------------ ------------------------------------------------------------------------
data HyperdataAnnuaire = HyperdataAnnuaire { hyperdataAnnuaire_title :: !(Maybe Text) -- | Annuaire and Corpus should be the same
, hyperdataAnnuaire_desc :: !(Maybe Text) data HyperdataAnnuaire = HyperdataAnnuaire { _ha_title :: !(Maybe Text)
, _ha_desc :: !(Maybe Text)
} deriving (Show, Generic) } deriving (Show, Generic)
$(deriveJSON (unPrefix "hyperdataAnnuaire_") ''HyperdataAnnuaire)
instance Hyperdata HyperdataAnnuaire
defaultHyperdataAnnuaire :: HyperdataAnnuaire defaultHyperdataAnnuaire :: HyperdataAnnuaire
defaultHyperdataAnnuaire = HyperdataAnnuaire (Just "Title") (Just "Description") defaultHyperdataAnnuaire = HyperdataAnnuaire (Just "Title") (Just "Description")
instance Arbitrary HyperdataAnnuaire where
arbitrary = pure defaultHyperdataAnnuaire -- TODO
------------------------------------------------------------------------ ------------------------------------------------------------------------
-- Instances
------------------------------------------------------------------------ ------------------------------------------------------------------------
data HyperdataNotebook = instance Hyperdata HyperdataCorpus
HyperdataNotebook { hn_preferences :: !(Maybe Text)} instance Hyperdata HyperdataAnnuaire
deriving (Show, Generic)
$(makeLenses ''HyperdataCorpus)
$(makeLenses ''HyperdataAnnuaire)
$(deriveJSON (unPrefix "_hc_") ''HyperdataCorpus)
$(deriveJSON (unPrefix "_ha_") ''HyperdataAnnuaire)
------------------------------------------------------------------------
-- Instances
------------------------------------------------------------------------ ------------------------------------------------------------------------
instance ToSchema HyperdataCorpus where instance ToSchema HyperdataCorpus where
declareNamedSchema proxy = declareNamedSchema proxy =
genericDeclareNamedSchema (unPrefixSwagger "_hc_") proxy genericDeclareNamedSchema (unPrefixSwagger "_hc_") proxy
& mapped.schema.description ?~ "Corpus" & mapped.schema.description ?~ "Corpus Hyperdata"
& mapped.schema.example ?~ toJSON hyperdataCorpus & mapped.schema.example ?~ toJSON defaultHyperdataCorpus
instance ToSchema HyperdataAnnuaire where instance ToSchema HyperdataAnnuaire where
declareNamedSchema proxy = declareNamedSchema proxy =
genericDeclareNamedSchema (unPrefixSwagger "hyperdataAnnuaire_") proxy genericDeclareNamedSchema (unPrefixSwagger "_ha_") proxy
& mapped.schema.description ?~ "an annuaire" & mapped.schema.description ?~ "Annuaire Hyperdata"
& mapped.schema.example ?~ toJSON defaultHyperdataAnnuaire & mapped.schema.example ?~ toJSON defaultHyperdataAnnuaire
------------------------------------------------------------------------
instance Arbitrary HyperdataCorpus where
arbitrary = pure defaultHyperdataCorpus
instance Arbitrary HyperdataAnnuaire where
arbitrary = pure defaultHyperdataAnnuaire
------------------------------------------------------------------------ ------------------------------------------------------------------------
instance FromField HyperdataCorpus instance FromField HyperdataCorpus
where where
...@@ -175,7 +147,6 @@ instance FromField HyperdataCorpus ...@@ -175,7 +147,6 @@ instance FromField HyperdataCorpus
instance FromField HyperdataAnnuaire instance FromField HyperdataAnnuaire
where where
fromField = fromField' fromField = fromField'
------------------------------------------------------------------------ ------------------------------------------------------------------------
instance QueryRunnerColumnDefault PGJsonb HyperdataCorpus instance QueryRunnerColumnDefault PGJsonb HyperdataCorpus
where where
......
...@@ -25,25 +25,25 @@ import Gargantext.Database.Admin.Types.Hyperdata.Prelude ...@@ -25,25 +25,25 @@ import Gargantext.Database.Admin.Types.Hyperdata.Prelude
------------------------------------------------------------------------ ------------------------------------------------------------------------
data HyperdataDocument = HyperdataDocument { _hyperdataDocument_bdd :: !(Maybe Text) data HyperdataDocument = HyperdataDocument { _hd_bdd :: !(Maybe Text)
, _hyperdataDocument_doi :: !(Maybe Text) , _hd_doi :: !(Maybe Text)
, _hyperdataDocument_url :: !(Maybe Text) , _hd_url :: !(Maybe Text)
, _hyperdataDocument_uniqId :: !(Maybe Text) , _hd_uniqId :: !(Maybe Text)
, _hyperdataDocument_uniqIdBdd :: !(Maybe Text) , _hd_uniqIdBdd :: !(Maybe Text)
, _hyperdataDocument_page :: !(Maybe Int) , _hd_page :: !(Maybe Int)
, _hyperdataDocument_title :: !(Maybe Text) , _hd_title :: !(Maybe Text)
, _hyperdataDocument_authors :: !(Maybe Text) , _hd_authors :: !(Maybe Text)
, _hyperdataDocument_institutes :: !(Maybe Text) , _hd_institutes :: !(Maybe Text)
, _hyperdataDocument_source :: !(Maybe Text) , _hd_source :: !(Maybe Text)
, _hyperdataDocument_abstract :: !(Maybe Text) , _hd_abstract :: !(Maybe Text)
, _hyperdataDocument_publication_date :: !(Maybe Text) , _hd_publication_date :: !(Maybe Text)
, _hyperdataDocument_publication_year :: !(Maybe Int) , _hd_publication_year :: !(Maybe Int)
, _hyperdataDocument_publication_month :: !(Maybe Int) , _hd_publication_month :: !(Maybe Int)
, _hyperdataDocument_publication_day :: !(Maybe Int) , _hd_publication_day :: !(Maybe Int)
, _hyperdataDocument_publication_hour :: !(Maybe Int) , _hd_publication_hour :: !(Maybe Int)
, _hyperdataDocument_publication_minute :: !(Maybe Int) , _hd_publication_minute :: !(Maybe Int)
, _hyperdataDocument_publication_second :: !(Maybe Int) , _hd_publication_second :: !(Maybe Int)
, _hyperdataDocument_language_iso2 :: !(Maybe Text) , _hd_language_iso2 :: !(Maybe Text)
} deriving (Show, Generic) } deriving (Show, Generic)
...@@ -68,23 +68,23 @@ data StatusV3 = StatusV3 { statusV3_error :: !(Maybe Text) ...@@ -68,23 +68,23 @@ data StatusV3 = StatusV3 { statusV3_error :: !(Maybe Text)
$(deriveJSON (unPrefix "statusV3_") ''StatusV3) $(deriveJSON (unPrefix "statusV3_") ''StatusV3)
------------------------------------------------------------------------ ------------------------------------------------------------------------
data HyperdataDocumentV3 = HyperdataDocumentV3 { hyperdataDocumentV3_publication_day :: !(Maybe Int) data HyperdataDocumentV3 = HyperdataDocumentV3 { _hdv3_publication_day :: !(Maybe Int)
, hyperdataDocumentV3_language_iso2 :: !(Maybe Text) , _hdv3_language_iso2 :: !(Maybe Text)
, hyperdataDocumentV3_publication_second :: !(Maybe Int) , _hdv3_publication_second :: !(Maybe Int)
, hyperdataDocumentV3_publication_minute :: !(Maybe Int) , _hdv3_publication_minute :: !(Maybe Int)
, hyperdataDocumentV3_publication_month :: !(Maybe Int) , _hdv3_publication_month :: !(Maybe Int)
, hyperdataDocumentV3_publication_hour :: !(Maybe Int) , _hdv3_publication_hour :: !(Maybe Int)
, hyperdataDocumentV3_error :: !(Maybe Text) , _hdv3_error :: !(Maybe Text)
, hyperdataDocumentV3_language_iso3 :: !(Maybe Text) , _hdv3_language_iso3 :: !(Maybe Text)
, hyperdataDocumentV3_authors :: !(Maybe Text) , _hdv3_authors :: !(Maybe Text)
, hyperdataDocumentV3_publication_year :: !(Maybe Int) , _hdv3_publication_year :: !(Maybe Int)
, hyperdataDocumentV3_publication_date :: !(Maybe Text) , _hdv3_publication_date :: !(Maybe Text)
, hyperdataDocumentV3_language_name :: !(Maybe Text) , _hdv3_language_name :: !(Maybe Text)
, hyperdataDocumentV3_statuses :: !(Maybe [StatusV3]) , _hdv3_statuses :: !(Maybe [StatusV3])
, hyperdataDocumentV3_realdate_full_ :: !(Maybe Text) , _hdv3_realdate_full_ :: !(Maybe Text)
, hyperdataDocumentV3_source :: !(Maybe Text) , _hdv3_source :: !(Maybe Text)
, hyperdataDocumentV3_abstract :: !(Maybe Text) , _hdv3_abstract :: !(Maybe Text)
, hyperdataDocumentV3_title :: !(Maybe Text) , _hdv3_title :: !(Maybe Text)
} deriving (Show, Generic) } deriving (Show, Generic)
...@@ -100,11 +100,11 @@ instance ToHyperdataDocument HyperdataDocument ...@@ -100,11 +100,11 @@ instance ToHyperdataDocument HyperdataDocument
------------------------------------------------------------------------ ------------------------------------------------------------------------
instance Eq HyperdataDocument where instance Eq HyperdataDocument where
(==) h1 h2 = (==) (_hyperdataDocument_uniqId h1) (_hyperdataDocument_uniqId h2) (==) h1 h2 = (==) (_hd_uniqId h1) (_hd_uniqId h2)
------------------------------------------------------------------------ ------------------------------------------------------------------------
instance Ord HyperdataDocument where instance Ord HyperdataDocument where
compare h1 h2 = compare (_hyperdataDocument_publication_date h1) (_hyperdataDocument_publication_date h2) compare h1 h2 = compare (_hd_publication_date h1) (_hd_publication_date h2)
------------------------------------------------------------------------ ------------------------------------------------------------------------
instance Arbitrary HyperdataDocument where instance Arbitrary HyperdataDocument where
arbitrary = elements arbitraryHyperdataDocuments arbitrary = elements arbitraryHyperdataDocuments
...@@ -132,14 +132,14 @@ instance Hyperdata HyperdataDocument ...@@ -132,14 +132,14 @@ instance Hyperdata HyperdataDocument
instance Hyperdata HyperdataDocumentV3 instance Hyperdata HyperdataDocumentV3
------------------------------------------------------------------------ ------------------------------------------------------------------------
$(makeLenses ''HyperdataDocument) $(makeLenses ''HyperdataDocument)
-- $(makeLenses ''HyperdataDocumentV3) $(makeLenses ''HyperdataDocumentV3)
$(deriveJSON (unPrefix "_hyperdataDocument_") ''HyperdataDocument) $(deriveJSON (unPrefix "_hd_") ''HyperdataDocument)
$(deriveJSON (unPrefix "hyperdataDocumentV3_") ''HyperdataDocumentV3) $(deriveJSON (unPrefix "_hdv3_") ''HyperdataDocumentV3)
instance ToSchema HyperdataDocument where instance ToSchema HyperdataDocument where
declareNamedSchema proxy = declareNamedSchema proxy =
genericDeclareNamedSchema (unPrefixSwagger "_hyperdataDocument_") proxy genericDeclareNamedSchema (unPrefixSwagger "_hd_") proxy
& mapped.schema.description ?~ "Document Hyperdata" & mapped.schema.description ?~ "Document Hyperdata"
& mapped.schema.example ?~ toJSON defaultHyperdataDocument & mapped.schema.example ?~ toJSON defaultHyperdataDocument
......
{-|
Module : Gargantext.Database.Admin.Types.Hyperdata.Frame
Description :
Copyright : (c) CNRS, 2017-Present
License : AGPL + CECILL v3
Maintainer : team@gargantext.org
Stability : experimental
Portability : POSIX
-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE TemplateHaskell #-}
module Gargantext.Database.Admin.Types.Hyperdata.Frame
where
import Gargantext.Prelude
import Gargantext.Database.Admin.Types.Hyperdata.Prelude
------------------------------------------------------------------------
data HyperdataFrame =
HyperdataFrame { _hf_base :: !Text
, _hf_frame_id :: !Text
}
deriving (Generic)
defaultHyperdataFrame :: HyperdataFrame
defaultHyperdataFrame = HyperdataFrame "" ""
------------------------------------------------------------------------
-- Instances
------------------------------------------------------------------------
instance Hyperdata HyperdataFrame
$(makeLenses ''HyperdataFrame)
$(deriveJSON (unPrefix "_hf_") ''HyperdataFrame)
instance Arbitrary HyperdataFrame where
arbitrary = pure defaultHyperdataFrame
instance FromField HyperdataFrame
where
fromField = fromField'
instance QueryRunnerColumnDefault PGJsonb HyperdataFrame
where
queryRunnerColumnDefault = fieldQueryRunnerColumn
instance ToSchema HyperdataFrame where
declareNamedSchema proxy =
genericDeclareNamedSchema (unPrefixSwagger "_hf_") proxy
& mapped.schema.description ?~ "Frame Hyperdata"
& mapped.schema.example ?~ toJSON defaultHyperdataFrame
...@@ -164,9 +164,8 @@ nodeContactW maybeName maybeContact aId = ...@@ -164,9 +164,8 @@ nodeContactW maybeName maybeContact aId =
name = maybe "Contact" identity maybeName name = maybe "Contact" identity maybeName
contact = maybe arbitraryHyperdataContact identity maybeContact contact = maybe arbitraryHyperdataContact identity maybeContact
------------------------------------------------------------------------ ------------------------------------------------------------------------
defaultFolder :: HyperdataCorpus defaultFolder :: HyperdataFolder
defaultFolder = defaultCorpus defaultFolder = defaultHyperdataFolder
nodeFolderW :: Maybe Name -> Maybe HyperdataCorpus -> ParentId -> UserId -> NodeWrite nodeFolderW :: Maybe Name -> Maybe HyperdataCorpus -> ParentId -> UserId -> NodeWrite
...@@ -179,7 +178,7 @@ nodeCorpusW :: Maybe Name -> Maybe HyperdataCorpus -> ParentId -> UserId -> Node ...@@ -179,7 +178,7 @@ nodeCorpusW :: Maybe Name -> Maybe HyperdataCorpus -> ParentId -> UserId -> Node
nodeCorpusW maybeName maybeCorpus pId = node NodeCorpus name corpus (Just pId) nodeCorpusW maybeName maybeCorpus pId = node NodeCorpus name corpus (Just pId)
where where
name = maybe "Corpus" identity maybeName name = maybe "Corpus" identity maybeName
corpus = maybe defaultCorpus identity maybeCorpus corpus = maybe defaultHyperdataCorpus identity maybeCorpus
-------------------------- --------------------------
nodeDocumentW :: Maybe Name -> Maybe HyperdataDocument -> CorpusId -> UserId -> NodeWrite nodeDocumentW :: Maybe Name -> Maybe HyperdataDocument -> CorpusId -> UserId -> NodeWrite
......
...@@ -119,8 +119,8 @@ instance InsertDb HyperdataDocument ...@@ -119,8 +119,8 @@ instance InsertDb HyperdataDocument
insertDb' u p h = [ toField $ nodeTypeId NodeDocument insertDb' u p h = [ toField $ nodeTypeId NodeDocument
, toField u , toField u
, toField p , toField p
, toField $ maybe "No Title" (DT.take 255) (_hyperdataDocument_title h) , toField $ maybe "No Title" (DT.take 255) (_hd_title h)
, toField $ _hyperdataDocument_publication_date h -- TODO USE UTCTime , toField $ _hd_publication_date h -- TODO USE UTCTime
, (toField . toJSON) h , (toField . toJSON) h
] ]
...@@ -202,17 +202,17 @@ instance AddUniqId HyperdataDocument ...@@ -202,17 +202,17 @@ instance AddUniqId HyperdataDocument
addUniqId = addUniqIdsDoc addUniqId = addUniqIdsDoc
where where
addUniqIdsDoc :: HyperdataDocument -> HyperdataDocument addUniqIdsDoc :: HyperdataDocument -> HyperdataDocument
addUniqIdsDoc doc = set hyperdataDocument_uniqIdBdd (Just shaBdd) addUniqIdsDoc doc = set hd_uniqIdBdd (Just shaBdd)
$ set hyperdataDocument_uniqId (Just shaUni) doc $ set hd_uniqId (Just shaUni) doc
where where
shaUni = sha $ DT.concat $ map ($ doc) shaParametersDoc shaUni = sha $ DT.concat $ map ($ doc) shaParametersDoc
shaBdd = sha $ DT.concat $ map ($ doc) ([(\d -> maybeText (_hyperdataDocument_bdd d))] <> shaParametersDoc) shaBdd = sha $ DT.concat $ map ($ doc) ([(\d -> maybeText (_hd_bdd d))] <> shaParametersDoc)
shaParametersDoc :: [(HyperdataDocument -> Text)] shaParametersDoc :: [(HyperdataDocument -> Text)]
shaParametersDoc = [ \d -> maybeText (_hyperdataDocument_title d) shaParametersDoc = [ \d -> maybeText (_hd_title d)
, \d -> maybeText (_hyperdataDocument_abstract d) , \d -> maybeText (_hd_abstract d)
, \d -> maybeText (_hyperdataDocument_source d) , \d -> maybeText (_hd_source d)
, \d -> maybeText (_hyperdataDocument_publication_date d) , \d -> maybeText (_hd_publication_date d)
] ]
--------------------------------------------------------------------------- ---------------------------------------------------------------------------
......
...@@ -123,7 +123,7 @@ nodeNodesCategory inputData = map (\(PGS.Only a) -> a) ...@@ -123,7 +123,7 @@ nodeNodesCategory inputData = map (\(PGS.Only a) -> a)
selectDocsDates :: CorpusId -> Cmd err [Text] selectDocsDates :: CorpusId -> Cmd err [Text]
selectDocsDates cId = map (head' "selectDocsDates" . splitOn "-") selectDocsDates cId = map (head' "selectDocsDates" . splitOn "-")
<$> catMaybes <$> catMaybes
<$> map (view hyperdataDocument_publication_date) <$> map (view hd_publication_date)
<$> selectDocs cId <$> selectDocs cId
selectDocs :: CorpusId -> Cmd err [HyperdataDocument] selectDocs :: CorpusId -> Cmd err [HyperdataDocument]
......
...@@ -169,13 +169,13 @@ instance ToNamedRecord CsvDoc where ...@@ -169,13 +169,13 @@ instance ToNamedRecord CsvDoc where
] ]
hyperdataDocument2csvDoc :: HyperdataDocument -> CsvDoc hyperdataDocument2csvDoc :: HyperdataDocument -> CsvDoc
hyperdataDocument2csvDoc h = CsvDoc (m $ _hyperdataDocument_title h) hyperdataDocument2csvDoc h = CsvDoc (m $ _hd_title h)
(m $ _hyperdataDocument_source h) (m $ _hd_source h)
(mI $ _hyperdataDocument_publication_year h) (mI $ _hd_publication_year h)
(mI $ _hyperdataDocument_publication_month h) (mI $ _hd_publication_month h)
(mI $ _hyperdataDocument_publication_day h) (mI $ _hd_publication_day h)
(m $ _hyperdataDocument_abstract h) (m $ _hd_abstract h)
(m $ _hyperdataDocument_authors h) (m $ _hd_authors h)
where where
m = maybe "" identity m = maybe "" identity
......
...@@ -52,8 +52,8 @@ flowPhylo cId = do ...@@ -52,8 +52,8 @@ flowPhylo cId = do
termList <- Map.toList <$> getTermsWith Text.words [list] NgramsTerms MapTerm termList <- Map.toList <$> getTermsWith Text.words [list] NgramsTerms MapTerm
docs' <- catMaybes docs' <- catMaybes
<$> map (\h -> (,) <$> _hyperdataDocument_publication_year h <$> map (\h -> (,) <$> _hd_publication_year h
<*> _hyperdataDocument_abstract h <*> _hd_abstract h
) )
<$> selectDocs cId <$> selectDocs cId
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment