[ antp.be > Forum ]

[ FAQFAQ - SearchSearch - MemberlistMemberlist - UsergroupsUsergroups - ]

[ RegisterRegister - ProfileProfile - Log in to check your private messagesLog in to check your private messages - Log inLog in ]


[FR][EN] Ant Movie Catalog 4.2.1 (04/11/17)
Goto page Previous  1, 2, 3, 4 ... 37, 38, 39  Next
 
Post new topic   Reply to topic    www.antp.be Forum Index -> Ant Movie Catalog > Comments
Author Message
antp
Site Admin
PostPosted: 2011-09-10 10:00:29    Post subject: Reply with quote
View user's profile Send private message Visit poster's website picturepath didn't exist in "official" AMC, was it added in 3.6/3.7 ?
fullman
PostPosted: 2011-09-10 12:14:03    Post subject: Reply with quote
View user's profile Send private message it's new since 3.5.1

- Ajout d'un visualisateur HTML pour afficher les informations des films selon le template HTML sélectionné (HTMLDefaultTemplate.html par défaut).
soulsnake
PostPosted: 2011-09-10 18:38:10    Post subject: Reply with quote
View user's profile Send private message Send e-mail
Quote:
PS : I see where is the mismatch. The tag changed
old : $$ITEM_PICTUREPATH
new : $$ITEM_PICTUREFILENAME


In version 3.6.0 and 3.7.0, I changed "$$ITEM_PICTUREFILENAME" tag (present in version 3.5.1) with "$$ITEM_PICTUREPATH" tag for some reasons but it was a mistake.
So I replaced "$$ITEM_PICTUREPATH" tag with "$$ITEM_PICTUREFILENAME" tag (the original one) in version 3.8.0 and it should not change again.
Sorry for this.
yuyuki
PostPosted: 2011-09-17 20:32:27    Post subject: Reply with quote
View user's profile Send private message Bonjour tout le monde,

Très bien cette version.

Serait-il possible d'ajouter un flag : déjà vu?
Ainsi, quand je souhaites voir un film, je n'affiche que ceux que je n'ai pas encore vu.

Serait-il possible de rajouter un type d'export SQlite ?

Bien à toi,

YuYuKi
soulsnake
PostPosted: 2011-09-18 01:44:25    Post subject: Reply with quote
View user's profile Send private message Send e-mail Ant Movie Catalog Unofficial 3.8.1 (18/09/11) released ! grin kind

Packages updated 20/09/2011 10:45:
- Minor bug with movie picture show/copy fixed.
- Minor bug on movie list sort after movie field change fixed.
- Minor bug on movie picture load fixed.
- Other minor bugs fixed.
- Some optimisations added.


Last edited by soulsnake on 2011-09-20 09:53:18; edited 11 times in total
soulsnake
PostPosted: 2011-09-19 17:29:36    Post subject: Reply with quote
View user's profile Send private message Send e-mail
Quote:
Très bien cette version.


Je suis heureux que tu aimes cette version.

Quote:
Serait-il possible d'ajouter un flag : déjà vu?


J'ai déjà répondu à cette question précédemment mais en anglais.
Pour résumer, je sais que le nombre de champs n'est pas suffisant pour tout le monde.
Cependant, si je rajoute des champs, la nouvelle version ne sera plus compatible avec la version officielle actuelle.
Pour le moment, ma priorité est de garder une compatibilité totale avec la version officielle.
Plus tard, dans une nouvelle version majeure (4.X), Antoine et moi rajouterons plusieurs champs et surement un gestionnaire de champs personnalisables.
Mais ces nouvelles fonctionnalités nécessitent beaucoup de modifications sur le programme de base, donc patience...

Quote:
Serait-il possible de rajouter un type d'export SQlite ?


Pourquoi n'utilise-tu pas l'export SQL (Plus général que SQLite) ?
Le fichier SQL généré devrait être directement exploitable pour SQLite non ?

Cordialement,
Soulsnake
fineface
PostPosted: 2011-09-22 12:41:42    Post subject: AMC unofficial 3.8 suggestions Reply with quote
View user's profile Send private message Bonjour,

Tout d'abord, bon travail d'évolution de la version officielle.

Erait-il possible d'insérer dans une version ultérieure la possibilité de modifier les valeurs en mode "tableau" (et ainsi de faciliter des modifications "de masse" ?
Merci
Cordialement wink
soulsnake
PostPosted: 2011-09-23 10:22:07    Post subject: Reply with quote
View user's profile Send private message Send e-mail
Quote:
Serait-il possible d'insérer dans une version ultérieure la possibilité de modifier les valeurs en mode "tableau" (et ainsi de faciliter des modifications "de masse" ?


Qu'est-ce que tu entends par modifications "de masse" ?
Parce qu'il existe un script appelé "Update Fields" permettant des modifications de masse sur les champs de plusieurs films sélectionnés.
Pour l'édition en mode tableau, pourquoi pas mais je la trouve peu pratique surtout pour les champs avec beaucoup de texte.
Autant utiliser le panneau de droite prévu à cet effet, c'est aussi rapide.
Est-ce que la possibilité de modifier les valeurs de plusieurs films sélectionnés ne serait pas plus pertinent (un peu à la manière du script UpdateFields mais de manière plus ergonomique ?)

Cordialement.
Guzzi
PostPosted: 2011-09-24 14:46:43    Post subject: Reply with quote
View user's profile Send private message Hi Soulsnake, Hi Antoine,
sorry to post in english, my french is just too bad.
I am the current developer of the MyFilms plugin:
http://forum.team-mediaportal.com/my-films-164/my-films-5-1-released-19-09-2011-v5-1-0-1468-mediaportal-1-2-0-a-98353/#post764644
I (and many user of AMC) would really very much appreciate, if we could
- include the improvements into an "official version update"
- add some more fields so AMC allows to read and write them in XML format and not looses them - this will allow much better integration in the mediacenter and remove some of the current restrictions.
From the mediacenter point of view, it would even be suffiecient, if AMC would just support to read/write the new fields - that is: Extending the DB schema and load/save routines with some additoinal DB fields (like writer, rating, studio, or some userdefines fields, so user can use them as they like).

However, I don't wanna break this thread - especially because of posting in english - so if there is a different place we could discuss that it please point me to it - would be great and highly appreciated.

Thanks in advance and regards,

Guzzi
soulsnake
PostPosted: 2011-09-24 17:47:33    Post subject: Reply with quote
View user's profile Send private message Send e-mail
Quote:
I (and many user of AMC) would really very much appreciate, if we could
- include the improvements into an "official version update"
- add some more fields so AMC allows to read and write them in XML format and not looses them - this will allow much better integration in the
mediacenter and remove some of the current restrictions.


Hi Guzzy,
This two requests are already expected wink, don't worry.
The next release should add read/write of custom fields in XML format.
I do not plan to add this feature in AMC format to keep compatibility with old versions. Maybe I will add a new format to keep binary files.

Regards,
Soulsnake.
Guzzi
PostPosted: 2011-09-24 18:56:24    Post subject: Reply with quote
View user's profile Send private message
soulsnake wrote:
Quote:
I (and many user of AMC) would really very much appreciate, if we could
- include the improvements into an "official version update"
- add some more fields so AMC allows to read and write them in XML format and not looses them - this will allow much better integration in the
mediacenter and remove some of the current restrictions.


Hi Guzzy,
This two requests are already expected wink, don't worry.
The next release should add read/write of custom fields in XML format.
I do not plan to add this feature in AMC format to keep compatibility with old versions. Maybe I will add a new format to keep binary files.

Regards,
Soulsnake.


Hi Soulsnake,
that sounds like really exiting news ! :-)
I am using only the XML format as native format since several years (due to the possibility to have it compatible to MyFilms) - and I think the approach to allow read/write of new fields just for XML format will do exactly what we need for the MyFilms extensions - as we can use those fields and still use AMC without loosing those fields after reading/writing the XML with AMC.

Just for Info:
In current MyFilms implementation, the "internal XML format" uses additional fields as elements (instead of attributes) - this way the XML file is still AMC compatible (but element data will of course be lost, when saving in AMC).
If you plan to extend the attributes, I will change the "extended fields" from elements back to attributes - so I would be compatible with the implementation.
Guzzi
soulsnake
PostPosted: 2011-09-24 19:15:02    Post subject: Reply with quote
View user's profile Send private message Send e-mail
Quote:
In current MyFilms implementation, the "internal XML format" uses additional fields as elements (instead of attributes) - this way the XML file is still AMC compatible (but element data will of course be lost, when saving in AMC).


Ok, do you have an XML database example with the new fields.

Thanks.
Soulsnake
Guzzi
PostPosted: 2011-09-25 08:30:32    Post subject: Reply with quote
View user's profile Send private message
soulsnake wrote:
Quote:
In current MyFilms implementation, the "internal XML format" uses additional fields as elements (instead of attributes) - this way the XML file is still AMC compatible (but element data will of course be lost, when saving in AMC).


Ok, do you have an XML database example with the new fields.

Thanks.
Soulsnake


Hi soulsnake,

I have attached a generaded XSD that shows what fields I added.
You see the "movie" element of AMC - with all well known fields as attributes - and (on top of AMC fields) you see elements, that are presenting the "new extended fields".
I had to use elements, because otherwise AMC would not be able to read the catalog anymore - using elements works fine (but of course all element data is lost when saving in AMC).

Here is link to a sample AMC xml catalog, using some of the extended field:
http://wiki.team-mediaportal.com/@api/deki/files/2450/=AMC-Catalog-ExtendedSample.xml

So the "new extended fields" I added are (followed by their purpose/use):

"RatingUser" - same as Rating, but for personal rating instead of grabbed rating
"Edition" - like "directors cut", "extended edition", etc.
"DateAdded" - internal calculated from "date" for sorting
"Length_Num" - internal caclulated from "length" as numeric
"Fanart" - path to fanart file or diectory for the movie
"Certification" - Certification (grabbed from internet)
"Writer" - as name says, grabbed from internet
"Watched" - field to handle extended watched status (checked only supports boolean)
"DateWatched" - as name says
"IMDB_Id" - to keep IMDBid persistant in DB, as it is used for a lot of interactive actions like Trakt.tv - see blog or MyFilms post
"TMDB_Id" - same as IMDBid - to keep persistant
"SourceTrailer" - same as "source", but links to trailer media files
"TagLine" - grabbed from internet
"Tags" - allows to store Tags for classifications
"Studio" - grabbed from internet
"IMDB_Rank" - Ranking info about the movie
"IsOnline" - to store media availability ersistant
"IsOnlineTrailer" - to store trailer availability persistant
"Aspectratio" - aspectratio of the movie

Code:

<?xml version="1.0" standalone="yes"?>
<xs:schema id="AntMovieCatalog" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
  <xs:element name="AntMovieCatalog" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="Catalog">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Properties" type="xs:string" minOccurs="0" msdata:Ordinal="1" />
              <xs:element name="Contents" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Movie" minOccurs="0" maxOccurs="unbounded">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="RatingUser" type="xs:decimal" minOccurs="0" msdata:Ordinal="8" />
                          <xs:element name="Edition" type="xs:string" minOccurs="0" msdata:Ordinal="12" />
                          <xs:element name="DateAdded" msdata:ReadOnly="true" msdata:Expression="Convert(Date,'System.DateTime')" type="xs:dateTime" minOccurs="0" msdata:Ordinal="30" />
                          <xs:element name="Length_Num" msdata:ReadOnly="true" msdata:Expression="Convert(Length,'System.Int32')" type="xs:int" default="0" minOccurs="0" msdata:Ordinal="34" />
                          <xs:element name="Fanart" type="xs:string" minOccurs="0" msdata:Ordinal="36" />
                          <xs:element name="Certification" type="xs:string" minOccurs="0" msdata:Ordinal="37" />
                          <xs:element name="Writer" type="xs:string" minOccurs="0" msdata:Ordinal="38" />
                          <xs:element name="Watched" type="xs:string" minOccurs="0" msdata:Ordinal="39" />
                          <xs:element name="DateWatched" type="xs:dateTime" minOccurs="0" msdata:Ordinal="40" />
                          <xs:element name="IMDB_Id" type="xs:string" minOccurs="0" msdata:Ordinal="41" />
                          <xs:element name="TMDB_Id" type="xs:string" minOccurs="0" msdata:Ordinal="42" />
                          <xs:element name="SourceTrailer" type="xs:string" minOccurs="0" msdata:Ordinal="43" />
                          <xs:element name="TagLine" type="xs:string" minOccurs="0" msdata:Ordinal="44" />
                          <xs:element name="Tags" type="xs:string" minOccurs="0" msdata:Ordinal="45" />
                          <xs:element name="Studio" type="xs:string" minOccurs="0" msdata:Ordinal="46" />
                          <xs:element name="IMDB_Rank" type="xs:string" minOccurs="0" msdata:Ordinal="47" />
                          <xs:element name="IsOnline" type="xs:string" minOccurs="0" msdata:Ordinal="48" />
                          <xs:element name="IsOnlineTrailer" type="xs:string" minOccurs="0" msdata:Ordinal="49" />
                          <xs:element name="Aspectratio" type="xs:string" minOccurs="0" msdata:Ordinal="50" />
                        </xs:sequence>
                        <xs:attribute name="Number" type="xs:int" />
                        <xs:attribute name="Checked" type="xs:string" />
                        <xs:attribute name="MediaLabel" type="xs:string" />
                        <xs:attribute name="MediaType" type="xs:string" />
                        <xs:attribute name="Source" type="xs:string" />
                        <xs:attribute name="Date" type="xs:string" />
                        <xs:attribute name="Borrower" type="xs:string" />
                        <xs:attribute name="Rating" type="xs:decimal" />
                        <xs:attribute name="OriginalTitle" type="xs:string" />
                        <xs:attribute name="TranslatedTitle" type="xs:string" />
                        <xs:attribute name="FormattedTitle" type="xs:string" />
                        <xs:attribute name="Director" type="xs:string" />
                        <xs:attribute name="Producer" type="xs:string" />
                        <xs:attribute name="Country" type="xs:string" />
                        <xs:attribute name="Category" type="xs:string" />
                        <xs:attribute name="Year" type="xs:string" />
                        <xs:attribute name="Length" type="xs:string" />
                        <xs:attribute name="Actors" type="xs:string" />
                        <xs:attribute name="URL" type="xs:string" />
                        <xs:attribute name="Description" type="xs:string" />
                        <xs:attribute name="Comments" type="xs:string" />
                        <xs:attribute name="VideoFormat" type="xs:string" />
                        <xs:attribute name="VideoBitrate" type="xs:string" />
                        <xs:attribute name="AudioFormat" type="xs:string" />
                        <xs:attribute name="AudioBitrate" type="xs:string" />
                        <xs:attribute name="Resolution" type="xs:string" />
                        <xs:attribute name="Framerate" type="xs:string" />
                        <xs:attribute name="Languages" type="xs:string" />
                        <xs:attribute name="Subtitles" type="xs:string" />
                        <xs:attribute name="Size" type="xs:string" />
                        <xs:attribute name="Disks" type="xs:string" />
                        <xs:attribute name="Picture" type="xs:string" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="AntMovieCatalog_Id" type="xs:int" use="prohibited" />
          </xs:complexType>
        </xs:element>
        <xs:element name="Person">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="ActorId" type="xs:string" minOccurs="0" />
              <xs:element name="Name" type="xs:string" minOccurs="0" />
              <xs:element name="Born" type="xs:string" minOccurs="0" />
              <xs:element name="BirthPlace" type="xs:string" minOccurs="0" />
              <xs:element name="MiniBiography" type="xs:string" minOccurs="0" />
              <xs:element name="Picture" type="xs:string" minOccurs="0" />
              <xs:element name="IMDB_Id" type="xs:string" minOccurs="0" />
              <xs:element name="TMDB_Id" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Watched">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Contents_Id" type="xs:string" minOccurs="0" />
              <xs:element name="Number" type="xs:string" minOccurs="0" />
              <xs:element name="Title" type="xs:string" minOccurs="0" />
              <xs:element name="WatchedDate" type="xs:string" minOccurs="0" />
              <xs:element name="UserName" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
  </xs:element>
</xs:schema>
[url][/url]
Guzzi
PostPosted: 2011-09-25 08:34:37    Post subject: Reply with quote
View user's profile Send private message Hi soulsnake,

just to make it clear:
If you and Antoine prefer adding the fields to native AMC format, I am fine to change them from element type to attribute type.
Advantage would be, that AMC could support them in the GUI too.
So I leave that decision to you and Antoine.
I would then change MyFilms to handle them properly with a "AMC 4.x" version.
Beside the fields mentioned above:
It is for sure wise to add some "userdefined fields" for future purpose.

You can also often reach me on IRC on freenode - "#myfilms" channel, if you'd like to discuss :-)

Guzzi
soulsnake
PostPosted: 2011-09-25 10:36:32    Post subject: Reply with quote
View user's profile Send private message Send e-mail Hi Guzzi,

I think something like this should be more portable.
What do you think ?
I ask the same question to Antoine if you are here wink.

PS: I added some comments in code.

PS2: I think the best way to keep AMC format compatibility with new custom fields (and don't loose them) is to associate AMC format with other xml file that include all custom fields informations.
For example, the catalog "films.amc" will be associate with "films.amc.xml" that include all custom fields informations for new versions of AMC.
Like this, films.amc is always readable by old versions of AMC without custom fields.
What do you think ?

Code:
<?xml version="1.0" standalone="yes"?>
<xs:schema id="AntMovieCatalog" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
  <xs:element name="AntMovieCatalog" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="Catalog">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Properties" type="xs:string" minOccurs="0" msdata:Ordinal="1">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="CustomField" type="xs:string" minOccurs="0" maxOccurs="unbounded">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="ListItem" type="xs:string" minOccurs="0" maxOccurs="unbounded"> <!-- Values for ftList -->
                            <xs:complexType>
                              <xs:attribute name="Text" type="xs:string" />
                            </xs:complexType>
                        </xs:sequence>
                        <xs:attribute name="Name" type="xs:string" /> <!-- Name of custom field -->
                        <xs:attribute name="Type" type="xs:string" /> <!-- Type of custom field (ftInteger, ftReal, ftDate, ftString, ftList, ftOther=ftString) -->
                        <xs:attribute name="CustomName" type="xs:string" /> <!-- Custom user name of custom field (for translation) -->
                        <xs:attribute name="AMCProperties" type="xs:string" /> <!-- AMC properties of custom field (have to be saved by other programs) -->
                        <xs:attribute name="CustomProperties" type="xs:string" /> <!-- Custom properties of custom field for other programs (saved by AMC) -->
                      <xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="Owner" type="xs:int" />
                  <xs:attribute name="Mail" type="xs:string" />
                  <xs:attribute name="Site" type="xs:string" />
                  <xs:attribute name="Description" type="xs:string" />
                </xs:complexType>
              </xs:element>
              <xs:element name="Contents" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Movie" minOccurs="0" maxOccurs="unbounded">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="CustomField" type="xs:string" minOccurs="0" maxOccurs="unbounded">
                            <xs:complexType>
                              <xs:attribute name="Name" type="xs:string" />
                              <xs:attribute name="Value" type="xs:string" />
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                        <xs:attribute name="Number" type="xs:int" />
                        <xs:attribute name="Checked" type="xs:string" />
                        <xs:attribute name="MediaLabel" type="xs:string" />
                        <xs:attribute name="MediaType" type="xs:string" />
                        <xs:attribute name="Source" type="xs:string" />
                        <xs:attribute name="Date" type="xs:string" />
                        <xs:attribute name="Borrower" type="xs:string" />
                        <xs:attribute name="Rating" type="xs:decimal" />
                        <xs:attribute name="OriginalTitle" type="xs:string" />
                        <xs:attribute name="TranslatedTitle" type="xs:string" />
                        <xs:attribute name="FormattedTitle" type="xs:string" />
                        <xs:attribute name="Director" type="xs:string" />
                        <xs:attribute name="Producer" type="xs:string" />
                        <xs:attribute name="Country" type="xs:string" />
                        <xs:attribute name="Category" type="xs:string" />
                        <xs:attribute name="Year" type="xs:string" />
                        <xs:attribute name="Length" type="xs:string" />
                        <xs:attribute name="Actors" type="xs:string" />
                        <xs:attribute name="URL" type="xs:string" />
                        <xs:attribute name="Description" type="xs:string" />
                        <xs:attribute name="Comments" type="xs:string" />
                        <xs:attribute name="VideoFormat" type="xs:string" />
                        <xs:attribute name="VideoBitrate" type="xs:string" />
                        <xs:attribute name="AudioFormat" type="xs:string" />
                        <xs:attribute name="AudioBitrate" type="xs:string" />
                        <xs:attribute name="Resolution" type="xs:string" />
                        <xs:attribute name="Framerate" type="xs:string" />
                        <xs:attribute name="Languages" type="xs:string" />
                        <xs:attribute name="Subtitles" type="xs:string" />
                        <xs:attribute name="Size" type="xs:string" />
                        <xs:attribute name="Disks" type="xs:string" />
                        <xs:attribute name="Picture" type="xs:string" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="AntMovieCatalog_Id" type="xs:int" use="prohibited" />
          </xs:complexType>
        </xs:element>
        <xs:element name="Person"> <!-- ??? -->
          <xs:complexType>
            <xs:sequence>
              <xs:element name="ActorId" type="xs:string" minOccurs="0" />
              <xs:element name="Name" type="xs:string" minOccurs="0" />
              <xs:element name="Born" type="xs:string" minOccurs="0" />
              <xs:element name="BirthPlace" type="xs:string" minOccurs="0" />
              <xs:element name="MiniBiography" type="xs:string" minOccurs="0" />
              <xs:element name="Picture" type="xs:string" minOccurs="0" />
              <xs:element name="IMDB_Id" type="xs:string" minOccurs="0" />
              <xs:element name="TMDB_Id" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Watched"> <!-- Include this elements in custom fields -->
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Contents_Id" type="xs:string" minOccurs="0" />
              <xs:element name="Number" type="xs:string" minOccurs="0" />
              <xs:element name="Title" type="xs:string" minOccurs="0" />
              <xs:element name="WatchedDate" type="xs:string" minOccurs="0" />
              <xs:element name="UserName" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
  </xs:element>
</xs:schema>


An example of XML catalog with custom fields :

Code:

<?xml version="1.0" encoding="iso-8859-1"?>
<AntMovieCatalog Format="35" Version="3.8.1 (2011-09-18)" Date="25/09/2011 10:14:02">
 <Catalog>
  <Properties Owner="Sample" Mail="m.v@gmail.com" Site="mv.online.fr" Description="Sample description">
    <CustomField Name="Test1" Type="ftString" CustomName="Test N°1" AMCProperties="AMC Properties" CustomProperties="Other program properties saved by AMC" />
    <CustomField Name="Test2" Type="ftDate" />
    <CustomField Name="Test3" Type="ftInteger" />
    <CustomField Name="Test4" Type="ftReal" />
    <CustomField Name="Test5" Type="ftList">
      <ListItem Text="Text 1" />
      <ListItem Text="Text 2" />
      <ListItem Text="Text 3" />
    </CustomField>
  </Properties>
  <Contents>
   <Movie Number="1" Checked="True" Date="25/05/2002" Rating="8.0" OriginalTitle="Matrix, The" FormattedTitle="Matrix, The" Director="Andy Wachowski, Larry Wachowski" Country="United States" Category="Action" Year="1999" Length="136" Actors="Keanu Reeves, Laurence Fishburne, Carrie-Anne Moss, Hugo Weaving, Gloria Foster, Joe Pantoliano, Marcus Chong, Julian Arahanga, Matt Doran, Belinda McClory, Anthony Ray Parker, Paul Goddard (I), Robert Taylor (VII), David Aston, Marc Gray" URL="http://us.imdb.com/Title?0133093" Description="In the near future, a computer hacker named Neo (Keanu Reeves) discovers that all life on Earth may be nothing more than an elaborate facade created by a malevolent cyber-intelligence, for the purpose of placating us while our life essence is "farmed" to fuel the Matrix's campaign of domination in the "real" world. He joins like-minded Rebel warriors Morpheus (Laurence Fishburne) and Trinity (Carrie Ann Moss) in their struggle to overthrow the Matrix. " Languages="English" Picture="Sample_1.jpg">
    <CustomField Name="Test1" Value="Test value 1" />
    <CustomField Name="Test2" Value="25/09/2011" />
    <CustomField Name="Test3" Value="2004" />
    <CustomField Name="Test4" Value="9.1" />
    <CustomField Name="Test5" Value="Text 3" />
   </Movie>
   <Movie Number="2" Checked="True" Date="25/05/2002" Rating="6.0" OriginalTitle="Lethal Weapon 4" FormattedTitle="Lethal Weapon 4" Director="Richard Donner" Country="United States" Category="Crime" Year="1998" Length="127" Actors="Mel Gibson, Danny Glover, Joe Pesci, Rene Russo, Chris Rock, Jet Li, Steve Kahan, Kim Chan, Darlene Love, Traci Wolfe, Eddy Ko, Jack Kehler, Calvin Jung, Damon Hines, Ebonie Smith" URL="http://us.imdb.com/Title?0122151" Description="Martin Riggs and Roger Murtaugh, after escaping death from the previous movies are put on a hit list by The Triads. When blood thirsty mercenaries are on their tail they team up again with Leo Getz and Lorna Cole, a newcomer (Chris Rock) to finally put an end to the Triads for good. " Languages="English" Picture="Sample_2.jpg">
    <CustomField Name="Test1" Value="Test value 3" />
    <CustomField Name="Test2" Value="22/09/2011" />
    <CustomField Name="Test3" Value="2007" />
    <CustomField Name="Test4" Value="7.2" />
    <CustomField Name="Test5" Value="Text 1" />
   </Movie>
   <Movie Number="3" Checked="True" Date="25/05/2002" Rating="8.0" OriginalTitle="Indiana Jones and the Last Crusade" FormattedTitle="Indiana Jones and the Last Crusade" Director="Steven Spielberg" Country="United States" Category="Fantasy" Year="1989" Length="127" Actors="Harrison Ford, Sean Connery, Denholm Elliott, Alison Doody, John Rhys-Davies, Julian Glover, River Phoenix, Michael Byrne (I), Kevork Malikyan, Robert Eddison, Richard Young (I), Alexei Sayle, Alex Hyde-White, Paul Maxwell (I), Isla Blair" URL="http://us.imdb.com/Title?0097576" Description="Renowned archeologist and expert in the occult, Dr. Indiana Jones, returns for the 3rd and final Indy film.   Teaming up with his father, Indiana sets out to try and find the Holy Grail.   Once again, the Nazis are after the same prize, and try to foil Indianas plans. " Languages="English" Picture="Sample_3.jpg">
    <CustomField Name="Test1" Value="Test value 1" />
    <CustomField Name="Test2" Value="18/09/2011" />
    <CustomField Name="Test3" Value="2006" />
    <CustomField Name="Test4" Value="8.8" />
    <CustomField Name="Test5" Value="Text 2" />
   </Movie>
  </Contents>
 </Catalog>
</AntMovieCatalog>
Guzzi
PostPosted: 2011-09-25 21:01:01    Post subject: Reply with quote
View user's profile Send private message
soulsnake wrote:
Hi Guzzi,

I think something like this should be more portable.
What do you think ?
I ask the same question to Antoine if you are here wink.

PS: I added some comments in code.

First to comment on "Person" and "Watched" - forget about those for now - I created them to bind a table for handling those - but not yet used anyway.
The idea was to have a separate table for persons and store all infos there. Those values are outside the movie records anyway...

Regarding your suggestion about "generic" fields:
I am not sure, how to map that to the dataset handling I use in MyFilms implementation - currently, this is handled mostly automatically and thus is very fast - however, I am not so experienced with those parts of the implementation, so if there is a nice way to do it this way that is also fast (performance wise) I am fine with such an approach.

Quote:

PS2: I think the best way to keep AMC format compatibility with new custom fields (and don't loose them) is to associate AMC format with other xml file that include all custom fields informations.
For example, the catalog "films.amc" will be associate with "films.amc.xml" that include all custom fields informations for new versions of AMC.
Like this, films.amc is always readable by old versions of AMC without custom fields.
What do you think ?

I think Antoine should comment on that. From AMC point of view, I think such "tricks" are not so nice - and it would imho be best to extend DB schema to a V4.x version (thus upgrading AMC format) - and if the effort is not too much keep the ability to save in old AMC 3.x format. This keeps possibility for users to go forward and back. (If they store in 3.x format, they'll loose the new fields content of course).

Looking at the XML side, the "minimum requirement" would be just to make sure, that Element data is loaded and stored, when opening and saving a catalog in AMC in XML format. This would be sufficient for other apps (like MyFilms) to use elements to store data persistant - with the disadvantage, that users cannot handle that data inside the AMC GUI.

If asking me what I think is the best approach, I'd say:
- extend AMC internal data fields by fields missing plus some userdefined fields.
- those fields will be stored in a 4.x AMC format.
- XML format will store those fields as attributes, as those are the AMC "native" fields
- XML format will load and save element data, so it is not lost after opening and saving in AMC (without using it inside the app itself)
- important: This version will be an "official" 4.x version - so it as well accepted to be the new AMC standard - so Antoine would have to support that approach

If that is not possible, I would be happy, if just this could be done:
- XML format will load and save element data, so it is not lost after opening and saving in AMC (without using it inside the app itself)
This does not really entend AMC - but helps other apps (like MyFilms) to be more flexible.
soulsnake
PostPosted: 2011-09-25 22:29:50    Post subject: Reply with quote
View user's profile Send private message Send e-mail Thanks for your suggestions.
I am waiting Antoine opinion.

Quote:
Regarding your suggestion about "generic" fields:
I am not sure, how to map that to the dataset handling I use in MyFilms implementation - currently, this is handled mostly automatically and thus is very fast - however, I am not so experienced with those parts of the implementation, so if there is a nice way to do it this way that is also fast (performance wise) I am fine with such an approach.


Actually, I don't really know how you load the XML file.
But if you think something like this is better, it is not a problem for me.

Code:
<?xml version="1.0" encoding="iso-8859-1"?>
<AntMovieCatalog Format="35" Version="3.8.1 (2011-09-18)" Date="25/09/2011 10:14:02">
 <Catalog>
  <Properties Owner="Sample" Mail="m.v@gmail.com" Site="mv.online.fr" Description="Sample description">
    <CustomField Element="Writer" Type="ftString" Name="Test N°1" AMCProperties="AMC Properties" CustomProperties="Other program properties saved by AMC" />
    <CustomField Element="Watched" Type="ftBoolean" />
    <CustomField Element="DateWatched" Type="ftDate" />
    <CustomField Element="BuyYear" Type="ftInteger" />
    <CustomField Element="RatingUser" Type="ftReal" />
    <CustomField Element="Edition" Type="ftList">
      <ListItem Text="Normal" />
      <ListItem Text="Director's Cut" />
      <ListItem Text="Remastered" />
    </CustomField>
  </Properties>
  <Contents>
   <Movie Number="1" Checked="True" Date="25/05/2002" Rating="8.0" OriginalTitle="Matrix, The" FormattedTitle="Matrix, The" Director="Andy Wachowski, Larry Wachowski" Country="United States" Category="Action" Year="1999" Length="136" Actors="Keanu Reeves, Laurence Fishburne, Carrie-Anne Moss, Hugo Weaving, Gloria Foster, Joe Pantoliano, Marcus Chong, Julian Arahanga, Matt Doran, Belinda McClory, Anthony Ray Parker, Paul Goddard (I), Robert Taylor (VII), David Aston, Marc Gray" URL="http://us.imdb.com/Title?0133093" Description="In the near future, a computer hacker named Neo (Keanu Reeves) discovers that all life on Earth may be nothing more than an elaborate facade created by a malevolent cyber-intelligence, for the purpose of placating us while our life essence is "farmed" to fuel the Matrix's campaign of domination in the "real" world. He joins like-minded Rebel warriors Morpheus (Laurence Fishburne) and Trinity (Carrie Ann Moss) in their struggle to overthrow the Matrix. " Languages="English" Picture="Sample_1.jpg">
    <Writer>Test value 1"</Writer>
    <Watched>True</Watched>
    <DateWatched>25/09/2011</DateWatched>
    <BuyYear>2004</BuyYear>
    <RatingUser>9.1</RatingUser>
    <Edition>Remastered</Edition>
   </Movie>
   <Movie Number="2" Checked="True" Date="25/05/2002" Rating="6.0" OriginalTitle="Lethal Weapon 4" FormattedTitle="Lethal Weapon 4" Director="Richard Donner" Country="United States" Category="Crime" Year="1998" Length="127" Actors="Mel Gibson, Danny Glover, Joe Pesci, Rene Russo, Chris Rock, Jet Li, Steve Kahan, Kim Chan, Darlene Love, Traci Wolfe, Eddy Ko, Jack Kehler, Calvin Jung, Damon Hines, Ebonie Smith" URL="http://us.imdb.com/Title?0122151" Description="Martin Riggs and Roger Murtaugh, after escaping death from the previous movies are put on a hit list by The Triads. When blood thirsty mercenaries are on their tail they team up again with Leo Getz and Lorna Cole, a newcomer (Chris Rock) to finally put an end to the Triads for good. " Languages="English" Picture="Sample_2.jpg">
    <Writer>Test value 3</Writer>
    <Watched>True</Watched>
    <DateWatched>22/09/2011</DateWatched>
    <BuyYear>2007</BuyYear>
    <RatingUser>7.2</RatingUser>
    <Edition>Normal</Edition>
   </Movie>
   <Movie Number="3" Checked="True" Date="25/05/2002" Rating="8.0" OriginalTitle="Indiana Jones and the Last Crusade" FormattedTitle="Indiana Jones and the Last Crusade" Director="Steven Spielberg" Country="United States" Category="Fantasy" Year="1989" Length="127" Actors="Harrison Ford, Sean Connery, Denholm Elliott, Alison Doody, John Rhys-Davies, Julian Glover, River Phoenix, Michael Byrne (I), Kevork Malikyan, Robert Eddison, Richard Young (I), Alexei Sayle, Alex Hyde-White, Paul Maxwell (I), Isla Blair" URL="http://us.imdb.com/Title?0097576" Description="Renowned archeologist and expert in the occult, Dr. Indiana Jones, returns for the 3rd and final Indy film.   Teaming up with his father, Indiana sets out to try and find the Holy Grail.   Once again, the Nazis are after the same prize, and try to foil Indianas plans. " Languages="English" Picture="Sample_3.jpg">
    <Writer>Test value 1</Writer>
    <Watched>True</Watched>
    <DateWatched>18/09/2011</DateWatched>
    <BuyYear>2006</BuyYear>
    <RatingUser>8.8</RatingUser>
    <Edition>Director's Cut</Edition>
   </Movie>
  </Contents>
 </Catalog>
</AntMovieCatalog>
Guzzi
PostPosted: 2011-09-26 00:06:06    Post subject: Reply with quote
View user's profile Send private message
soulsnake wrote:
Thanks for your suggestions.
I am waiting Antoine opinion.

Quote:
Regarding your suggestion about "generic" fields:
I am not sure, how to map that to the dataset handling I use in MyFilms implementation - currently, this is handled mostly automatically and thus is very fast - however, I am not so experienced with those parts of the implementation, so if there is a nice way to do it this way that is also fast (performance wise) I am fine with such an approach.


Actually, I don't really know how you load the XML file.
But if you think something like this is better, it is not a problem for me.


Hi Soulsnake,

MyFilms is using C# and I am loading the XML file via streamreader into a dataset that is defined with visualstudio designer into memory cache.
In the designer, you can define the structure of the XML e.g. if data is mapped to elements or attributes etc. - and it probably is possible to add other definitions by manual partial class definitions.

However, the sample you posted above would work "right away" - I would just add the properties to the xsd and "be happy".

So let's wait what Antoine comments on it :-)

Guzzi
soulsnake
PostPosted: 2011-09-26 20:04:20    Post subject: Reply with quote
View user's profile Send private message Send e-mail I am waiting Antoine opinion but for the moment I keep the last sample to add and test this modifications.
The main job now is to add a good CustomField Manager that I have already started thinking wink.

Soulsnake
Guzzi
PostPosted: 2011-09-26 20:11:09    Post subject: Reply with quote
View user's profile Send private message
soulsnake wrote:
I am waiting Antoine opinion but for the moment I keep the last sample to add and test this modifications.
The main job now is to add a good CustomField Manager that I have already started thinking wink.

Soulsnake


Great - so when you have something that have the XML load/save routines up and running - or even more - and you feel you've got something you'd like to have tested, I can post it to our internal MyFilms tester team too.

Guzzi
Display posts from previous:   
View previous topic :: View next topic  
Post new topic   Reply to topic    www.antp.be Forum Index -> Ant Movie Catalog > Comments All times are GMT + 1 Hour
Goto page Previous  1, 2, 3, 4 ... 37, 38, 39  Next
Page 3 of 39

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
Template made by antp