Hello guys. I need to develop one API that must compare prices of laptops of two websites Fnac and Worten.
I don't know to much about XML ( it's a college degree and it's one of last summarys that's i had left) Here it is what i need to do: It is intended to develop an application that allows you to make a price comparison of Laptops sold at Fnac and Worten online stores. Information Extraction, Structuring and Storage To preserve and share product data from each online store, such as price history, create an XML vocabulary that can capture all storage-related requirements. Thus, communication between applications is supported by a specific vocabulary and independent of the tools used to record prices used in the mentioned online stores. Always keep in mind that this vocabulary may be distributed in the future to various “partners” so that they can communicate or price their products and price comparator developed. The following vocabulary objectives were created: ● Represent practical store-identifying information, including the name, primary web address, and web addresses used for information extraction; ● Represent useful information with the products involved in the price comparator, namely: name, characteristics, brand, link to an offer page and their prices over time, including data / time when this information was collected; ● For each store, display aggregate data information where you can use: average price of each product (considering various amounts of data) not only considering the entire price history, but also a specific period (eg month); ● Represent practical information with partner pricing, including: the name of the online store and previously used product data (for example, if any online store wants to publish their pricing on the platform, it will use a used component of vocabulary). ● You can add new data elements to the vocabulary in order to enrich the whole process (this component will be enhanced). Information Processing and Availability The documents generated and valid according to the developed vocabulary must be stored in a database and made available through a REST API using the tool B aseX. You can use the Postman tool to extract data. The data must be extracted periodically (for example, hourly) from the referred addresses, and must later be stored in an XML database with BaseX. The data stored in the database must then be exposed through a REST API designed to support integration with applications developed by third parties. The API should (at a minimum) provide: ● data on a specific product with or without a price history (it should be possible to select one of the options); ● data about the products of a specific brand; ● data about a specific online store for one or more products; ● aggregated data for the online store (including the average price of products and maximum and minimum prices in a given period of time); ● price communication for partner products; ● it should also be possible to share information via twitter (for example, what is the best deal taking into account the price differences of a particular laptop). The number of endpoints, such as the form of interaction with the API, that can be parsed more expressively and consistently, but it is not possible to identify resources, but also in the REST verbs used in HTTP requests. Identifying common products between different stores is an extremely important process since without this identification it will not be possible to make a price comparison. In addition to adopting techniques to automate the process of identifying common products, it can provide manual mechanisms. For example, you can create a document that stores as mailings that 100% of common products could not be detected and allow a user to annotate or validate a document (yes or no) from the mailing. Data visualization It should also include a specific endpoint to provide an HTML document with a set of views related to vocabulary aggregated data components. To do this, select an HTML document to objectively display the required information. You can run quickchart.io to generate views and integrate documents into the available HTML (s). Overview and tools You should take advantage of the tools studied throughout the semester to use each step. The combination of tools to achieve the proposed objectives is at the discretion of each working group. As an example, Figure 1 provides an overview of a possible adjustment of different related concepts and technologies. must be delivered: ● A set of XML schemas capable of validating all syntax rules defined for the language and associated types; ● Evidence of the API developed using Postman, as well as its documentation. You can deliver a GIT repository; ● XQuery files that define the REST API developed in the BaseX tool; ● Examples of documents that allow you to test the solution (for example: sample document that features a typical response / request from each of the endpoints). ● A detailed report (which may be in .pdf format or made available through the GIT repository) where you must identify: ○ Documentation (example) of the vocabulary that justifies the decisions made as well as possible changes (with due justification) to the vocabulary throughout the project. For requirements that you consider ambiguous, you should justify the approach followed; ○ Identify the approach followed for data storage in the BaseX database, as well as all procedures / queries used to manipulate / adapt the data entered; ○ Description and documentation of the services developed; ○ Critical appreciation of the work developed; I'm asking for somebody that can help me or atleast give me some lights to start the project.